Ben "anket" adında bir özel php sınıf değişken bir dizi var bir smarty şablonu var. Bu nesne "AlıcıAdı" adlı bir üye değişkeni vardır. Ben aşağıdaki kodu kullanarak değişkeni yazdırmak zaman:
{$survey->recipientName}
gayet iyi çalışıyor. Beklediğiniz gibi alıcının adı, dışarı basılmış olur. Ben bir işlev içine geçmek çalışırsanız Ancak, çalışmak doğru görünmüyor. Aşağıdaki kod parçacığını atın:
{if substr($survey->recipientName,0,3) eq 'Bob'}
Hello Bob
{else}
You are not Bob
{/if}
Bu pasajı her zaman AlıcıAdı "Bob Smith" için ayarlanmış olsa bile, "Bob değiliz" yazdıracaktır. Beklendiği gibi kavramının bir kanıtı olarak, aşağıdakileri gerçekleştirir:
{if substr("Bob Smith",0,3) eq 'Bob'}
Hello Bob
{else}
You are not Bob
{/if}
Yukarıdaki "Merhaba Bob" yazdıracaktır.
Benzer şekilde, ben de diğer yerlerde garip davranışları fark etmiş. Örneğin, aşağıdaki kod parçacığını alır:
{assign var="recipname" value="$survey->recipientName"}
"-> AlıcıAdı" Bu bir değere değişken recipname atar. Ben bir şey eksik?