Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/229.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在不知道其索引的情况下设置数组元素_Php_Arrays - Fatal编程技术网

Php 在不知道其索引的情况下设置数组元素

Php 在不知道其索引的情况下设置数组元素,php,arrays,Php,Arrays,可能重复: 在我的代码中,我正在执行$params[ltrim($part,,:')]=null为了获得如下所示的数组: Array ( [id] => [random] => [something] => ) Array ( [id] => [lol] => [0] => value1 [1] => value2 ) 我需要一种在不知道其索引的情况下为每个元素顺序设置值的方法。在本

可能重复:

在我的代码中,我正在执行
$params[ltrim($part,,:')]=null
为了获得如下所示的数组:

Array
(
    [id] => 
    [random] => 
    [something] => 
)
Array
(
    [id] => 
    [lol] => 
    [0] => value1
    [1] => value2
)
我需要一种在不知道其索引的情况下为每个元素顺序设置值的方法。在本例中,索引
0
将是
id
1
将是
random
,依此类推。我尝试使用
0
1
对其进行设置,最终得到如下数组:

Array
(
    [id] => 
    [random] => 
    [something] => 
)
Array
(
    [id] => 
    [lol] => 
    [0] => value1
    [1] => value2
)

我有办法做到这一点吗?谢谢。

您可以使用
foreach
迭代关联数组

<?php

foreach( $arr as $key => $value ) {
    $arr[$key] = "some value";
}

/*
Array
(
    [id] => some value
    [random] => some value
    [something] => some value
)
*/

您可以使用
foreach
迭代关联数组

<?php

foreach( $arr as $key => $value ) {
    $arr[$key] = "some value";
}

/*
Array
(
    [id] => some value
    [random] => some value
    [something] => some value
)
*/

在您的
$params
数组(您已经创建了该数组)旁边,创建一个
$values
数组,该数组中的值可以根据需要进行索引,也可以根据需要进行索引。然后,只需组合:

$final = array_combine(array_keys($params), $values);

如果您使用这些名称作为值而不是键直接创建
$params
数组,您甚至可以在
$params
数组(您已经创建)旁边创建一个
$values
数组,该数组的值可以根据需要索引,也可以根据需要索引。然后,只需组合:

$final = array_combine(array_keys($params), $values);

如果您使用这些名称作为值而不是键直接创建
$params
数组,您甚至可以节省
数组_键
调用。

您不只是使用
foreach
来迭代数组有什么原因吗?您不只是使用
foreach
来迭代数组有什么原因吗?