改进PHP的var_dump方法使之适应显示从数据库中查出来的数据

php中文网
发布: 2016-07-30 13:30:18
原创
990人浏览过

这是一个改进的输出数组结构的函数,方便显示从数据库中查出来的数据。

/**
     * array(7) {
        [0] => array(32) {
            ["order_id"] => string(2) "34"
            ["shipping_time"] => string(1) "0"
            ["created_at"] => string(10) "1433565988"
        }
        [1] => array(32) {
            ["order_id"] => string(2) "35"
            ["shipping_time"] => string(1) "0"
            ["created_at"] => string(10) "1433573933"
        }
        [2] => array(32) {
            ["order_id"] => string(2) "36"
            ["order_sn"] => string(9) "BJA000036"
            ["wx_trade_no"] => string(32) "wx712cd30713b968c114336440083628"
        }
     * 形如上面这样的数组,使用var_dump()函数打印的时候会打印出所有的数据项,尤其是在数据库字段较多的情况下,
     * 不便于找到自己感兴趣的数据。
     * 本方法改进了var_dump()方法,可以指定要打印的键。例如想看从order表中查处的order_id和city_id,
     * 可以这样使用:du($order,['order_id','city_id'])
     * 输出如下格式:
     *array[7] {
        [0] =>array[32] {
            [order_id] => string(2) : 34
            [city_id] => string(1) : 0
        }
        [1] =>array[32] {
            [order_id] => string(2) : 35
            [city_id] => string(1) : 0
        }
        [2] =>array[32] {
            [order_id] => string(2) : 36
            [city_id] => string(1) : 0
        }
        [3] =>array[32] {
            [order_id] => string(2) : 37
            [city_id] => string(1) : 0
        }
     }
     * @param $data 要显示结构的变量
     * @param $keys 要显示的键,为空则显示所有的键
     * @param $echo 是否输出结果到浏览器
     */
    public function du($data,$keys='',$echo=true)
    {
        $message = '';
        $message .= gettype($data) . "[" . count($data) . "] {" . "<br>";
        foreach ($data as $cc => $c) {
            $message .= "&#160;[" . $cc . "] =>" . gettype($c) . "[" . count($c) . "] {" . "<br>";
            foreach ($c as $key => $value) {
                if (empty($keys)) {
                    $message .= "&#160;&#160;[" . $key . "]" . " => " . gettype($value) . "(" . strlen($value) . ")" . " : <span style='color:blue'>" . $value . "</span>";
                    $message .= "<br>";
                } else if (in_array($key, $keys)) {
                    $message .= "&#160;&#160;[" . $key . "]" . " => " . gettype($value) . "(" . strlen($value) . ")" . " : <span style='color:blue'>" . $value . "</span>";
                    $message .= "<br>";
                }
            }
            $message .= "&#160;&#160;}";
            $message .= "<br>";
        }
        $message .= "}";
        if ($echo) {
            echo $message;
        } else {
            return $message;
        }
    }
登录后复制
登录后复制

版权声明:本文为博主原创文章,未经博主允许不得转载。

即构数智人
即构数智人

即构数智人是由即构科技推出的AI虚拟数字人视频创作平台,支持数字人形象定制、短视频创作、数字人直播等。

即构数智人 36
查看详情 即构数智人

以上就介绍了改进PHP的var_dump方法使之适应显示从数据库中查出来的数据,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

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

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