WPJAM Basic 内置的数组处理函数
PHP 有很多非常好用的数组处理函数,PHP 数组函数官方文档都有 80 多个,但是在使用过程,有一些数组的操…
PHP 有很多非常好用的数组处理函数,PHP 数组函数官方文档都有 80 多个,但是在使用过程,有一些数组的操作使用比较多,我就把这些函数整理成工具函数,然后整合到 WPJAM Basic 中,方便自己的二次开放的方便使用。
wpjam_array_push
关联数组插入元素是无法指定位置的,只能插在最前或者最后面,所以第一个函数就是可以向关联数组指定的 Key 之前插入元素:
function wpjam_array_push($array, $data=null, $key=false){
$data = (array)$data;
$offset = ($key===false)?false:array_search($key, array_keys($array));
$offset = ($offset)?$offset:false;
if($offset){
return array_merge(
array_slice($array, 0, $offset),
$data,
array_slice($array, $offset)
);
}else{ // 没指定 $key 或者找不到,就直接加到末尾
return array_merge($array, $data);
}
}
比如下面在 $columns
的 'author'
之前插入 ['page_title'=>'页面标题']
:
wpjam_array_push($columns, ['page_title'=>'页面标题'], 'author');
wpjam_array_first
PHP 的 array_filter()
函数可以通过回调函数过滤数组的元素,但是返回的是过滤后的数组,不过很多时候,我们只是简单的要求返回第一个通过测试的元素:
function wpjam_array_first($array, $callback=null){
if($callback && is_callable($callback)){
foreach($array as $key => $value){
if(call_user_func($callback, $value, $key)){
return $value;
}
}
}else{
return current($array);
}
}
使用非常简单的:
$array = [100, 200, 300];
$value = wpjam_array_first($array, function($value) {
return $value >= 150;
});
// 200
wpjam_array_pull
要从关联数组中移除并返回指定的键值,一般需要两步操作,先取出,然后 unset 数组中的键值对,把这两个步骤合成一个函数:
function wpjam_array_pull(&$array, $key){
if(isset($array[$key])){
$value = $array[$key];
unset($array[$key]);
return $value;
}else{
return null;
}
}
然后直接调用即可:
$name = wpjam_array_pull($array, 'name');
wpjam_array_excerpt
PHP 从关联数组中移除指定的键值对,一般使用 unset 函数,如果要移除多个键值对,就要调用多次的 unset 函数,所以就合并成一个函数 :
function wpjam_array_except($array, $keys){
if(is_string($keys)){
$keys = [$keys];
}
foreach($keys as $key){
unset($array[$key]);
}
return $array;
}
这样就可以通过下面方式移除键值对了:
$array
=wpjam_array_except($array, ['price','description']);
如果仅仅移除一个键值对,还可以直接传递字符串:
$array
=wpjam_array_except($array, 'price');
- WordPress果酱的知识星球
- WPJAM Basic 插件项目页
- 下载 WPJAM Basic
- 有问题也可以在知乎@denishua
专题:WPJAM Basic 详细介绍:
- 01. WordPress 一键式全站优化插件:WPJAM-Basic
- 02. WPJAM Basic 功能详细介绍:优化设置
- 03. WPJAM Basic 功能详细介绍:样式定制
- 04. WPJAM Basic 功能详细介绍:CDN 加速
- 05. WPJAM Basic 功能详细介绍:缩略图设置
- 06. WPJAM Basic 功能详细介绍:文章设置
- 07. WPJAM Basic 功能详细介绍:定时作业
- 08. WPJAM Basic 功能详细介绍:系统信息
- 09. WPJAM Basic 功能详细介绍:Dashicons 图标
- 10. WPJAM Basic 功能详细介绍:扩展管理
- 11. WPJAM Basic 功能详细介绍:CDN 和缩略图开发接口
- 12. WPJAM Basic 功能扩展:文章目录
- 13. WPJAM Basic 扩展:简单 SEO
- 14. WPJAM Basic 扩展:SMTP 邮件服务
- 15. WPJAM Basic 扩展:Rewrite 优化
- 16. WPJAM Basic 扩展:文章类型转换器
- 17. WPJAM Basic 扩展:文章浏览统计
- 18. WPJAM Basic 扩展:统计代码
- 19. WPJAM Basic 扩展:用户角色
- 20. WPJAM Basic 扩展:相关文章
- 21. WPJAM Basic 扩展:百度站长
- 22. WPJAM Basic 扩展:301跳转
- 23. WPJAM Basic 扩展:移动主题
- 24. WPJAM Basic 扩展:常用短代码
- 25. WPJAM Basic 扩展:文章数量
- 26. WPJAM Basic 扩展:摘要快速编辑
- 27. WPJAM Basic 扩展:文章快速复制
- 28. WPJAM Basic 扩展:文章页代码
- 29. WPJAM Basic 内置的字符串处理函数
- 30. WPJAM Basic 内置的数组处理函数
- 31. WPJAM Basic 内置的缩略图函数
- 32. WPJAM Basic 内置的文章列表函数
- 33. WPJAM Basic 内置的系统和设备判断函数
©我爱水煮鱼,本站推荐使用的主机:阿里云,国外主机建议使用BlueHost。
本站长期承接 WordPress 优化和建站业务,请联系微信:「chenduopapa」。
类别:WordPress技巧、
本文收集自互联网,转载请注明来源。
如有侵权,请联系 wper_net@163.com 删除。
还没有任何评论,赶紧来占个楼吧!