Phalcon’da volt template engine’de PHP fonksiyonlarını kullanmak

Uzun bir aradan sonra Herkese Merhabalar,

Phalcon Framework’de volt template engine’yi kullandığınızda tanımlı php fonksiyonlarını direkt olarak kullanamıyorsunuz. Şu şekilde bir kullanımda hata verir;

Undefined function ‘mb_substr’ in “app/views/index/index.volt” on line 5

Örneğimizde mb_substr’yi kullandık fakat hata verdi. Tanımlı PHP fonksiyonlarını kullanabilmek için view konfigürasyonununda kullanacağınız fonksiyonu tanımlamanız gerekiyor şöyle ki ;

Phalcon\Mvc\View\Engine\Volt\Compiler içerisinde yer alan addFunction metodu iki parametre alır. ilk parametre’de volt içerisinde tanımlayacağımız fonksiyonu hangi isimle çağıracaksak / kullanacaksak burada belirtiyoruz. ikinci parametrede ise Tanımlı PHP fonksiyonunun ismini yazıyoruz. ben her ikisine de mb_substr ismini verdim. Örnek vermem gerekirse;

view componentini nerede ayarladıysanız ilgili dosyayı açın, genelde public/index.php ya da app/config/services.php içerisinde tanımlanır.

Daha sonra IndexController’ınız şu şekilde olsun;

mb_substr’yi app/views/index/index.volt ‘da şu şekilde ki bir kullanımla kullanabilirsiniz;

Halihazırda Volt içerisinde tanımlı fonksiyonlara bakabilirsiniz;

Ben örnek olması açısından mustafa_substr ismini verdim Önceki Yazılımcı durumuna düşmemek için siz daha iyi isimlendirmeler ile projelerinizde kullanabilirsiniz 🙂

Sevgilerle.