php - 将键附加到现有数组值

标签 php arrays array-push

我有以下数组,通过使用 array_push & 我得到的结果不正确。

数组:

Array
(
    [0] => 1039
    [1] => 417
    [2] => 418
)

数组推送:

array_push($array, array("a","b","c"));

结果:

Array
(
    [0] => 1039
    [1] => 417
    [2] => 418
    [3] => Array
    (
        [0] => a
        [1] => b
        [2] => c
    )

)

例如,我希望将 a、b、c 附加到值 417。

不良结果:

Array
(
    [1039] => 1039
    [417] => Array
    (
        [0] => a
        [1] => b
        [2] => c
    )
    [418] => 418

)

如何做到这一点?

解决方案:

$data = Array (
    0 => 1039,
    1 => 417,
    2 => 418,
 );

foreach( $data as $key => $val ) {
    $new_data[$val] = 0;
}

foreach( $new_data as $k => $v ){
    if( $k == 417 ){
        $new_data[$k] = array( 'p' => 50, 'pp' => 75 );
    }
}
print_r($new_data); 

最佳答案

这并没有什么意义,但这将完成您在示例中显示的内容:

$array[1] .= print_r(array("a","b","c"), true);

.= 进行字符串连接,并将 true 作为第二个参数传递给 print_r 使其返回它本应打印的字符串。

这样做的结果是 $array[1] 是一个以 417 开头的字符串,后面是所添加数组的打印表示形式。那里没有实际的数组。我不确定你打算用这个做什么,但它符合你的例子。

关于php - 将键附加到现有数组值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20625879/

相关文章:

php - Symfony3 : Fatal error: Class 'AppKernel' not found in .\bin\控制台

php - 合并父类和子类的属性

javascript - 在 Javascript 中用 null 填充缺失索引的值的最佳方法

php - PHP 中 natsort 的任何替代方案,在处理带零的字母数字字符时不会失败

c - 如何使用结构将指针值从单独的函数传递回 main

javascript - 为什么这个 JavaScript 映射不是无限循环?

javascript - php 中文本框十进制格式修复

javascript - 检查 Obj 是否在数组中,如果不在则运行代码

session 数组中的php Post数组

php - 当用户注册到社交网络网站时设置默认头像图像