从逗号分隔列表生成数组 - PHP

时间:2012-05-31 13:58:11

标签: php arrays string

我有一个如此定义的变量: $ var =“1,2,3”; &我有一个数组: $ thePostIdArray = array(1,2,3);

上面的数组在循环播放时效果很好但是当我尝试使用 $ var 代替以逗号分隔的列表时,会出现问题。

所以(完美世界)它可能是 $ thePostIdArray = array($ var); ,它与 $ thePostIdArray = array(1,2,3)相同;

到目前为止,每次尝试都没有奏效:'(

这是否可行,或者是否有更简单的解决方法?

感谢您的任何指示。

3 个答案:

答案 0 :(得分:51)

结帐explode$thePostIdArray = explode(', ', $var);

答案 1 :(得分:4)

使用爆炸功能。这将解决您的问题。 爆炸的结构是这样的

array explode ( string $delimiter , string $string [, int $limit ] )

现在$delimiter 是边界字符串,string $string是输入字符串。 限制:

如果设置了limit并且为正数,则返回的数组将包含最多限制元素,最后一个元素包含其余字符串。

如果limit参数为负数,则返回除最后一个限制之外的所有组件。

如果limit参数为零,则将其视为1。

访问以下链接。你可以从中学到最好的东西 link of php.net

答案 2 :(得分:2)

对于最终想要and的结果的开发人员,可以使用以下代码:

$titleString = array('apple', 'banana', 'pear', 'grape');
$totalTitles = count($titleString);
if($totalTitles>1)
{
    $titleString = implode(', ' , array_slice($titleString,0,$totalTitles-1)) . ' and ' . end($titleString);
}
else
{
    $titleString = implode(', ' , $titleString);
}

echo $titleString; // apple, banana, pear and grape