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);