Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.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,我有这个阵列 Array ( [result] => Success [finals] => Array ( [0] => Array ( [id] => 633 [name] => RESULT84 ) [0] => Array

我有这个阵列

Array
(
    [result] => Success
    [finals] => Array
        (
            [0] => Array
                (
                    [id] => 633
                    [name] => RESULT84
                )
                [0] => Array
                (
                    [id] => 766
                    [name] => RESULT2
                )
                [0] => Array
                (
                    [id] => 22
                    [name] => RESULT1
                )
        )
)
我正在提取像这样的名字

$names = array_column($data['finals'], 'name');
print_r($names);
这让我

Array
(
    [0] => RESULT84
    [1] => RESULT2
    [2] => RESULT1
)
我的问题是我如何修改它,使我得到这个

Array
(
    [RESULT84] => RESULT84
    [RESULT2] => RESULT2
    [RESULT1] => RESULT1
)

像数组填充键这样的东西是我的最佳选择吗?

将第三个参数
name
传入以使其成为键

 $names = array_column($data['finals'], 'name','name');
 print_r($names);

将第三个参数
name
传递到中,使其成为键

 $names = array_column($data['finals'], 'name','name');
 print_r($names);

萨蒂答对了。以下是完整的代码:

<?php
$data = Array
    (
        'result' => 'Success',
        'finals' => Array
        (
            Array
                (
                    'id' => 633,
                    'name' => 'RESULT84'
                ),
            Array
                (
                    'id' => 766,
                    'name' => 'RESULT2'
                ),
            Array
                (
                    'id' => 22,
                    'name' => 'RESULT1'
                )
        )
    );

$names = array_column($data['finals'], 'name','name');
print_r($names);
?>


萨蒂回答得对。以下是完整的代码:

<?php
$data = Array
    (
        'result' => 'Success',
        'finals' => Array
        (
            Array
                (
                    'id' => 633,
                    'name' => 'RESULT84'
                ),
            Array
                (
                    'id' => 766,
                    'name' => 'RESULT2'
                ),
            Array
                (
                    'id' => 22,
                    'name' => 'RESULT1'
                )
        )
    );

$names = array_column($data['finals'], 'name','name');
print_r($names);
?>

。虽然听起来您需要使用相同字符串的键和值…
$names[array_column($data['finish'],'name')]=array_column($data['finish'],'name')可能是的重复项。虽然听起来您需要使用相同字符串的键和值…
$names[array_column($data['finish'],'name')]=array_column($data['finish'],'name')可能重复的