分享一个函数,求bug,求改善^

php中文网
发布: 2016-06-13 12:10:53
原创
880人浏览过

分享一个函数,求bug,求改进^_^
我们phper经常会用到很多对数字或字符串的处理函数
遗憾的是大部分都不支持数组
灵光一闪,搞定它
觉得有用的大大们捧个场
顺便找些bug并给些改进的建议

<br />/**<br /> * 通过递归调用让函数支持多维数组 by wanderwind<br /> * 建议其他函数调用来实现<br /> * @param string $fn 调用函数名称<br /> * @param array $param 参数数组,通常传入func_get_args()<br /> * @param int $key 需要递归的参数键值<br /> * @param boolean $check 是否需要检测函数合法性<br /> * @return mixed 返回对$param[$key]的运行结果<br /> */<br />function fn2array($fn, $param, $key = 0, $check = true) {<br />    //从外部调用时默认检测函数合法性,多维数组递归时忽略<br />    if ($check && !function_exists($fn)) {<br />        return false;<br />    }<br /><br />    //提取执行目标,如果目标非数组可以直接执行<br />    $content = $param[$key];<br />    if (!is_array($content)) {<br />        return call_user_func_array($fn, $param);<br />    }<br /><br />    //如果目标是数组则递归执行<br />    foreach ($content as &$val) {<br />        $param[$key] = $val;<br />        $val = fn2array($fn, $param, $key, false);<br />    }<br /><br />    return $content;<br />}<br /><br />function wstripslashes() {<br />    return fn2array('stripslashes', func_get_args());<br />}<br /><br />function wsubstr() {<br />    $param = func_get_args();<br />    $param[3] = isset($param[3]) ? $param[3] : 'utf-8';<br />    return fn2array('mb_substr', $param, 0);<br />}<br /><br />$a = array(<br />    2 => '\"aaaaaaaaaaaaaaa\"',<br />    array('\"啊啊啊啊啊啊啊啊啊啊啊啊啊\"'),<br />    array(array(array('\"sss\dasf\dasfasdsad\"'))),<br />);<br /><br />print_r(wstripslashes($a));<br />print_r(wsubstr($a, 2, 5));<br />
登录后复制

------解决思路----------------------
進來支持下。
------解决思路----------------------
又想起了那句著名的话:重复造轮子的人呐
------解决思路----------------------
不是很明白函数的意思,不过还是进来看看
------解决思路----------------------
造轮子没有什么不好,选好材料和工艺才能事半功倍

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号