我是编程和学习 PHP 的新手,我阅读了函数
array_push()
并创建了一个简单的程序用于学习目的。
这是我的代码
$one = ['one', 'two', 'three'];
$two = ['first', 'second', 'third'];
$oneArray = $twoArray = $mainOne = $mainTwo = [];
foreach ($one as $o) {
array_push($oneArray, $o);
}
foreach ($two as $t) {
array_push($twoArray, $t);
}
$mainOne['push']['one'] = $one;
$mainOne['push']['two'] = $two;
$mainTwo['push'] = ['one' => $one, 'two' => $two];
echo '<pre>';
print_r($mainOne);
echo '<br>';
print_r($mainTwo);
所以输出与此代码相同
$mainOne['push']['one'] = $one;
$mainOne['push']['two'] = $two;
还有这个
$mainTwo['push'] = ['one' => $one, 'two' => $two];
Array
(
[push] => Array
(
[one] => Array
(
[0] => one
[1] => two
[2] => three
)
[two] => Array
(
[0] => first
[1] => second
[2] => third
)
)
)
Array
(
[push] => Array
(
[one] => Array
(
[0] => one
[1] => two
[2] => three
)
[two] => Array
(
[0] => first
[1] => second
[2] => third
)
)
)
那么这两行有什么区别吗
$mainOne['push']['one'] = $one;
$mainOne['push']['two'] = $two;
$mainTwo['push'] = ['one' => $one, 'two' => $two];
当我的朋友看到代码时,他告诉我是否要发送此数据
$mainOne['push']['one'] = $one;
$mainOne['push']['two'] = $two;
在jquery中的ajax响应中,它不能与循环一起使用,它将显示对象而不是任何数据,但这将起作用
$mainTwo['push'] = ['one' => $one, 'two' => $two];
所以我不了解jquery或ajax,我只是编程新手,想知道这两行之间的区别。
在代码中,使用 array_push 的部分不会影响变量 $mainOne 和 $mainTwo 的结果。 array_push 函数只是将一个元素附加到数组的末尾。
例如:
$one = [1, 2, 3];
$two = [1, 2];
array_push($two, 3);
var_dump($one, $two);
所以,关于你的问题:
$mainOne['push']['one'] = $one;
$mainOne['push']['two'] = $two;
和:
$mainTwo['push'] = ['one' => $one, 'two' => $two];
没有区别,而且它们是等价的,因为数组中的每个位置都分配了一个元素,在本例中是一个数组。