Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.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,我有一个这样的数组 $interests = ['f13d6415ed' => 'Mailing', 'a6e5730911' => 'Friend-Family', '998f2252f5' => 'Friend-Patron', '6873081334' => 'Adult', '89c4c64d51' => 'Non-Acting', 'ea325784ac' => 'Life', '8ffdecd43d' => 'Youth Theatre',

我有一个这样的数组

$interests = ['f13d6415ed' => 'Mailing', 'a6e5730911' => 'Friend-Family', '998f2252f5' => 'Friend-Patron', '6873081334' => 'Adult', '89c4c64d51' => 'Non-Acting', 'ea325784ac' => 'Life', '8ffdecd43d' => 'Youth Theatre', '6752d0543e' => 'Young Person',];
。。。我需要构建这样一个数组(用于api调用)

因此,我可以对第一个数组(给定文本项)执行array_search(),并获得所需的键。然后我需要构建第二个数组,其中给定密钥(只有一个)的数据为“true”,而其他所有数据为“false”。第二个数组是api调用(Mailchimp)参数的一部分。 我可以看到一些方法,但我不是php专家,它们看起来都很混乱。有什么建议吗?

感谢使用
array\u fill\u keys
array\u keys
功能的解决方案:

$interests = ['f13d6415ed' => 'Mailing', 'a6e5730911' => 'Friend-Family', '998f2252f5' => 'Friend-Patron', '6873081334' => 'Adult', '89c4c64d51' => 'Non-Acting', 'ea325784ac' => 'Life', '8ffdecd43d' => 'Youth Theatre', '6752d0543e' => 'Young Person',];

$new_arr = [];
$keyTrue = '6873081334';
$new_arr['interests'] = array_fill_keys(array_keys($interests), false);
$new_arr['interests'][$keyTrue] = true;

var_dump($new_arr);
$interests = ['f13d6415ed' => 'Mailing', 'a6e5730911' => 'Friend-Family', '998f2252f5' => 'Friend-Patron', '6873081334' => 'Adult', '89c4c64d51' => 'Non-Acting', 'ea325784ac' => 'Life', '8ffdecd43d' => 'Youth Theatre', '6752d0543e' => 'Young Person',];

$new_arr = [];
$keyTrue = '6873081334';
$new_arr['interests'] = array_fill_keys(array_keys($interests), false);
$new_arr['interests'][$keyTrue] = true;

var_dump($new_arr);