如何将变量添加到数组中?

时间:2012-02-09 14:28:38

标签: php arrays

如何将变量添加到数组中?假设我有一个名为$new_values的变量:

$new_values=",543,432,888"

现在我想添加$new_values来运行。我试着这样做:

phpfunction1(array(114,763 .$new_values. ), $test);

但我收到了错误Parse error: syntax error, unexpected T_VARIABLE, expecting ')'

如果我想要array(114,763,543,432,888)

,我的代码应如何显示

6 个答案:

答案 0 :(得分:6)

$new_values=",543,432,888";

应转换为数组:

$new_values= explode(',', "543,432,888");

并合并到现有值:

array_merge(array(114,763), $new_values);

整个代码应如下所示:

$new_values = explode(',', "543,432,888");
$values = array(114,763);
$values = array_merge($values, $new_values);
phpfunction1($values, $test);

如果您向explode传递一个以,开头的字符串,您将获得第一个空元素,因此请避免使用。

答案 1 :(得分:5)

如果你已经有一个数组,那么

$values = array(543,432,888);

您可以按以下方式添加:$values[]=114; $values[]=763;

道歉,如果我错过了那里......

答案 2 :(得分:2)

在您的示例中,$ new_values是一个字符串,但是,由于它是逗号分隔的,您可以直接从它创建一个数组。使用$new_array = explode(',', $new_values);从字符串创建数组。

答案 3 :(得分:2)

您需要使用explode函数将字符串转换为数组,然后使用array_merge函数将两个数组合并为一个:

$new_values=",543,432,888";

$currentArray=array(114,763);

$newArray=array_merge($currentArray,explode(',',$new_values));

functionX($newArray...)

但是因为第一个逗号,请注意空数组元素。 对于那个用途" trim($ new_values,',')" - 见rajesh的答案。

答案 4 :(得分:1)

你可以这样做。

$old_values = array(122,555);
$new_values=",543,432,888";
$values =  explode(',', trim($new_values, ','));
$result = array_merge($old_values, $values);
print_r($result);

答案 5 :(得分:-1)

try array merge

看起来像这样

phpfunction1(array_merge(array(114,763) ,$new_values), $test);

并且是的,你的第一个数组不是数组

把它改成这个

$new_values=Array(543,432,888);