PHP7.1下WP_Post数组使用post ID作为数组键的最优实现方式
实现方案
最简代码
$tmp = array_column($playlist_videos, null, 'ID');
说明
- 该写法完美适配PHP 7.1及以上版本,PHP 7.0开始就支持
array_column传入null作为第二个$column_key参数 - 第二个参数为
null时,array_column不会仅提取单个属性,会完整保留原数组的每个元素(此处为WP_Post对象)作为新数组的值 - 第三个参数指定使用WP_Post的
ID公共属性作为新数组的键,最终运行效果和你手写的foreach循环完全一致,且内置函数的执行效率优于用户态的自定义循环 - 若原数组存在ID重复的元素,后出现的元素会覆盖先出现的元素,该行为也和原foreach逻辑保持一致
内容的提问来源于stack exchange,提问作者lucrece
相关产品推荐
相关产品推荐

