<?php
$names =array('Alex','Billy','Tabby');
$names_str=null;
foreach($names as $key => $names)
{
$names_str .= $name;
if(key!= (count($names)-1))
{
$names_str.=', ';
}
}
echo $names_str;
?>
为什么我们设置name_str = null?为什么我们将计数($ names-1(放置(该循环如何工作?
<?php
$names = array('Alex','Billy','Tabby');
$names_str = null;
foreach($names as $key => $names)
{
$names_str .= $name;
if(key != (count($names) - 1))
{
$names_str .=', ';
}
}
echo $names_str;
?>
为什么我们设置$names_str = null
?
它是在循环之外初始化的。如果这是要返回的字符串,那么从技术上讲$names_str = "";
,如果您希望显示默认值并且不进行某种空null/null检查...
为什么我们要放置count($names-1))
?
这检查了键#例如(0,1,2(针对数组减1的计数/长度(数组从0开始(,以查看我们是否参考数组中的最后一个键/值对,以确定字符串是否应显示当前值和下一个值。如果是最后一个值,我们不想在字符串的末尾显示"。
此循环如何工作?
$names_str .= $name;
将$name
值与初始字符串相连,并在每个值之间放置逗号。请参阅上面关于计数。因此,您最终以"Alex, Billy, Tabby"
作为$names_str
的最终值。
做到这一点的更好方法是使用PHP的爆破函数:
$comma_separated = implode(",", $names);
这将为您提供相同的逗号分隔列表。