在PHP语言中,将简单数组转换为关联数组以便可以在isset($array[$value])
中检查值的最快方法是什么
即执行以下转换的最快方法:
$array = array(1, 2, 3, 4, 5);
$assoc = array();
foreach ($array as $i => $value) {
$assoc[$value] = 1;
}
发布于 2011-05-27 22:31:31
您的代码完全等同于:
$assoc = array_fill_keys(array(1, 2, 3, 4, 5), 1); // or
$assoc = array_fill_keys(range(1, 5), 1);
array_flip()
,虽然它可能会为您的目的工作,但它并不相同。
发布于 2018-11-20 16:37:56
如果有人仍然想知道如何做到这一点,有一个更容易的解决方案,使用array_combine函数。
$array = array(1, 2, 3, 4, 5);
$assoc = array_combine($array,$array);
发布于 2018-05-14 21:02:27
只需使用此逻辑
$var1 = json_encode($arr1, JSON_FORCE_OBJECT);
$var1 = json_decode($var1);
其中$arr1是必须转换为关联数组的数组。这可以通过json_encode和json_decode来实现
https://stackoverflow.com/questions/6153360
复制相似问题