Howto smarty ile json oluşturmak?

4 Cevap php

Smarty, standart bir işlev veya bir diziden json oluşturmak için kolay bir yol var, json_encode olarak () php yapar? Aslında orada smarty belgelerinde değil ama neyse sormak istedim görünüyor.

Thanks, Sinan.

4 Cevap

Bu çalışması gerekir. @ Smarty aksi takdirde her bir eleman için yapar, tüm dizi karşı değiştirici çalışmasını sağlar.

{$myarray|@json_encode}

You have to use json_encode() in ur php code then assign the value to smarty using $smarty->assign() function. After that u have to parse that value in ur template file using javascript.

kod parçacığı:

{literal}
<script>
var json = JSON.parse('{/literal}{$urarray}{literal}');
//another statments
</script>
{/literal}

Ben herhangi bilmiyorum. Sen $ smarty-> assign (...) ile php kod 'senin bir smarty değişkeni s sonuç' json_encode () atamak, ve sonra şablonu kullanabilirsiniz.

Ayrıca Smarty extension json_decode for () vardır. Bu dayalı tersi için kendi uzantısı yazmak zor olmamalı.

{$myarray|@json_encode} aslında json kodlanmış dizi yayarlar yok iken, aynı zamanda javascript dizi kullanılmaz hale özel karakterleri kaçar.

Özel karakterler kaçan önlemek ve aynı zamanda nofilter bayrağı kullanmak javascript dizi kullanmak mümkün:

{$myarray|@json_encode nofilter}