我正在使用SMARTY,我需要创建一个数组并为其特定索引赋值。
这是我的PHP代码:
$tag = str_replace('-', ' ',$_GET['tag']);
$tag = strip_tags(trim(mysql_real_escape_string(addslashes($tag)))); // the tags word variable
$smarty->assign('tag',$tag);
$tag_sql = "SELECT * FROM items WHERE item_published='0' AND item_tags LIKE '%$tag%' ";
$tag_query = mysql_query($tag_sql);
while ($tag_row = mysql_fetch_assoc($tag_query)) {
$items[] = $tag_row;
}
$smarty->assign('items',$items); // assign the items loop to smarty
当我在smarty模板中使用此代码时
{section name=x loop=$items } {$items[x].item_url} {/section}
html输出
http://google.com http://yahoo.com
我想成为html输出
'http://google.com','http://yahoo.com'
答案 0 :(得分:0)
你可以这样做:
{section name=x loop=$items } {append var="urls" value="'`$items[x].item_url`'"} {/section}
{","|implode:$urls}
输出是:
'http://google.com','http://yahoo.com'
对于Smarty 2,您可以使用:
{section name=x loop=$items } '{$items[x].item_url}'{if not $smarty.section.x.last},{/if} {/section}