好吧,我有两个变量
$variable1 = "123";
$variable2 = "321";
这两个变量都是通过其他方法计算的,可能会因环境的变化而变化,现在我想把这些值放在一个单独的数组中显示,我想要的是类似于这个的东西
$array = ($variable1, $variable2)
和打印类似(在IDE中)
array([0]=>123 [1]=>321)
123和321都是可变值的表示。
我试过compact()函数,但它给了我一些奇怪的东西,我试着让这两个变量成为一个只有一个元素的数组,并将它们合并到一个数组中,但事实上我有很多变量,对它们中的每一个都这样做是不可行的。。。。。请告诉我如何做到这一点,并详细解释背后的机制,非常感谢。
有几种方法可以满足您的需求
您可以使用以下示例之一:
// Define a new array with the values
$array1 = array($variable1, $variable2);
// Or
$array2 = [$variable1, $variable2];
// Debug
print_r($array1);
print_r($array2);
// Define an array and add the values next
$array3 = array();
$array3[] = $variable1;
$array3[] = $variable2;
// Debug
print_r($array3);
// Define an array and push the values next
// http://php.net/manual/en/function.array-push.php
$array4 = array();
array_push($array4, $variable1);
array_push($array4, $variable2);
// Debug
print_r($array4);
只需使用数组函数即可将值放入一个数组中。
$var1 = "123";
$var2 = "321";
$array = array($var1,$var2);
var_dump($array);退货:
array (size=2)
0 => string '123' (length=3)
1 => string '321' (length=3)
或者另一个关于如何做到这一点的例子是:
$array = array();
$array[] = myFunction(); //myFunction returns a value and by using $array[] you can add the value to the array.
$array[] = myFunction2();
var_dump($array);
这是您的答案
$variable1 = "123";
$variable2 = "321";
$arr =array();
array_push($arr,$variable1);
array_push($arr,$variable2);
echo '<pre>';
print_r($arr);
希望这能解决你的问题。
当您想将这些项放入数组时首先你必须初始化一个变量
$newArray = []
之后,你必须将值存储在数组中,这可以通过完成
$newArray[] = $variable1;
// OR BY
array_push($newArray, $variable1);
它们都是相同的——它将数据推送到阵列的末尾
所以你的代码会像这个
$newArray = []
$newArray[] = $variable1;
$newArray[] = $variable2;
如果你想在循环中进行,那么就做一些类似的事情
$newArray = []
foreach($values as $value){
$newArray[] = $value;
}
如果有一个固定值,那么你可以这样做
$newArray = [$variable1, $variable2];
//OR BY
$newArray = array($variable1, $variable2);
两者都是相同的
使用打印值
print_r($newArray);
希望这将有助于