Как передать массив с php на javascript с помощью smarty 3?

В файле php Когда я так кодирую

$names = ["jim", "lucy"];
$smarty->assign('names', $names);

В javascript

var arr = {$names};

Smarty проанализирует {$names} как ...&quot....

Что мне делать, чтобы этого избежать? Я хочу, чтобы Smarty проанализировал массив как

var arr = ['jim', 'lucy'];

6
0
54
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

В php:

$names = ['jim', 'lucy'];
$smarty->assign('names', $names);

В javascript

var arr = {$names|json_encode};

Уведомление: Если вы изменили модификаторы smarty default_modifiers на array('escape:"html"'), используйте

var arr = {$names|json_encode nofilter};

чтобы все заработало.

Удачи.

Другие вопросы по теме