2009-07-23 51 views
2

我有一个循环吐出的价值观,并放入字符串:堆叠在反向变量在PHP

$all_values = ""; 
while loop { 
    $value = "..."; 
    $all_values .= $value . ","; 
} 

输出:1,3,8,2,10 ......

什么最简单的方法来输出相同的东西,但数字相反,所以上面的例子会出来,像... 10,2,8,3,1

回答

6

把所有东西放入一个数组,然后加入到一起,反转:

$all_values = array(); 
while loop { 
    $value = "..."; 
    $all_values[] = $value; 
} 
$all_values = implode(',', array_reverse($all_values)); 

如果有数百万个值,这也更有效。

+1

+1:即使你不需要扭转值,这仍然会更快。由于字符串的可变性需要字符串被读取和重新创建,因此字符串串联缓慢。 – Blixt 2009-07-23 05:52:24

1

添加您的代码之后:

$ar = explode(',', $all_values); 
$revAr = array_reverse($ar); 
$all_values = implode(',', $revAr);