<{foreach from=$sellLogList.data item=sellLogListData key=key}>
 <{$sellLogListData.pdt_desc}><br />
<{/foreach}>输出之后是
2011-08-23
2011-09-22
2011-08-29我希望是按时间后-先排列成:
2011-09-22
2011-08-29
2011-08-23现在改不了SQL语句,在smarty模板里面怎么排序输出呢?

解决方案 »

  1.   

    不知smarty语法怎么不用php排好给他呢? 
      

  2.   

    {php}     
    sort();     
    {/php}     
      

  3.   

    这个你应该直接在SQL里面order by dateline desc
      

  4.   

    为啥不能改sql呢,如果真不能改...  冒泡排序~~ 这个学过吧...
      

  5.   


    因为SQL语句被zend加密了
    是别人的程序
    只能改smarty了
      

  6.   


    smarty只是从php传入到前台后再进行绑定,可以在php先端对数组进行排序,然后再smarty绑定~上面已经有人提到了,可以使用sort()~
    bool sort ( array &$array [, int $sort_flags ] )
    本函数对数组进行排序。当本函数结束时数组单元将被从最低到最高重新安排。 Note: 本函数为 array 中的单元赋予新的键名。这将删除原有的键名而不仅是重新排序。如果成功则返回 TRUE,失败则返回 FALSE。 
    Example #1 sort() 例子<?php
    $fruits = array("lemon", "orange", "banana", "apple");
    sort($fruits);
    foreach ($fruits as $key => $val) {
        echo "fruits[".$key."] = " . $val . "\n";
    }
    ?> 
    上例将输出:
    fruits[0] = apple
    fruits[1] = banana
    fruits[2] = lemon
    fruits[3] = orange
      

  7.   

    可以修改smarty类库里面的文件,追加一个排序方法。
      

  8.   

    说明一点,好像现在在smarty里面进行排序真没有说明方法的,一般就是在php端做一个排序之后,通过smarty显示。