【发布时间】:2011-10-07 23:08:01
【问题描述】:
下面是我最近添加到 PHP 中的一段代码,它接受一个整数数组 ($naEUS) 并对其进行迭代,在数字之间附加逗号,开始和结束有一些例外.最终结果应该是一个如下所示的字符串:( ### , ### , ### , ### )
$num = count( $naEUS[$f] );
$resultsFields_values = "(";
for( $b = 0; $b < $num; $b++ )
{
if( $b = 0 )
{
$resultsFields_values = substr_replace( $resultsFields_values, " {$naEUS[$b]} " , ( strlen($resultsFields_values) ), 0);
}
$resultsFields_values = substr_replace( $resultsFields_values, ", {$naEUS[$b]} " , ( strlen($resultsFields_values) ), 0);
}
$resultsFields_values = substr_replace( $resultsFields_values, ")" , ( strlen($resultsFields_values) ), 0);
我意识到有很多线程解决字符串连接问题,但它们只解决了我的问题的部分。我知道这是一种非常低效的方法。他们展示了一种更好的方法,但这很容易找到。
我真正想知道的是为什么我的 5 秒运行时间 PHP 需要 30 秒超时。
当然,也欢迎更好的解决方案。
【问题讨论】:
-
嗯...这很尴尬。如果($b = 0)...如果($b == 0)
-
您可以根据需要编辑您的帖子。
-
我更喜欢让它保持原样,以便看到它的人可以看到发生的事情并关注对话。我敢肯定这不难推断,但你永远不知道。我并不实际上感到尴尬,这是一个常见的错误。
-
好主意。这确实是一个常见的错误。我使用了几种将
=作为比较运算符的语言,所以我做错的次数比我想的要多。 :)
标签: php string timeout performance concatenation