我需要用 smarty 对数组进行排序。我尝试使用此代码:
我的前锋:
{foreach $hooks->addblock as $addblock}
<ul>
{foreach $addblock|@sortby:"prio" as $value}
{$value@key}: {$value}
{/foreach}
</ul>
{/foreach}
的 var_dump $hooks->addblock
:
array(5) {
["filed_1"]=>
array(5) {
["id"]=>
string(7) "filed_1"
["title"]=>
string(6) "filed1"
["field"]=>
string(20) "This is test filed 1"
["size"]=>
int(740)
["prio"]=>
int(7)
}
["filed_2"]=>
array(5) {
["id"]=>
string(7) "filed_2"
["title"]=>
string(6) "filed2"
["field"]=>
string(20) "This is test filed 2"
["size"]=>
int(740)
["prio"]=>
int(6)
}
所以,我想按值prio
(num)升序对数组进行排序,但结果不正确!
结果如下:
我希望“field_2”行是第一个。但我没有找到解决方案。
这是修饰符(modifier.sortby.php):http ://www.smarty.net/forums/viewtopic.php?p=23628#23628 我也有一个反复出现的错误:
[2012 年 11 月 24 日星期六 20:04:52] [错误] [客户端 127.0.0.1] PHP 注意:未初始化的字符串偏移量:/var/www/libs/plugins/modifier.sortby.php(33) 中的 0 :运行时创建第 1 行的函数