php實(shí)現(xiàn)var_dump功能的方法-創(chuàng)新互聯(lián)

這篇文章主要介紹了php實(shí)現(xiàn)var_dump功能的方法,具有一定借鑒價(jià)值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。

我們提供的服務(wù)有:成都做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)、微信公眾號(hào)開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、高明ssl等。為上1000家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的高明網(wǎng)站制作公司

php實(shí)現(xiàn)“var_dump”功能的方法:首先創(chuàng)建一個(gè)php示例文件;然后定義一個(gè)reconstructDump方法;接著通過(guò)for循環(huán)的方式實(shí)現(xiàn)“var_dump”功能即可。

php實(shí)現(xiàn)var_dump功能的方法

PHP實(shí)現(xiàn)一個(gè)類似var_dump函數(shù)的功能!

<?php
    function reconstructDump() {
        $args   = func_num_args();
        for($i = 0;$i < $args; $i ++) {
            $param = func_get_arg($i);
            switch(gettype($param)) {
                case 'NULL' :
                    echo 'NULL';
                    break;
                case 'boolean' :
                    echo ($param ? 'bool(true)' : 'bool(false)');
                    break;
                case 'integer' :
                    echo "int($param)";
                    break;
                case 'double' :
                    echo "float($param)";
                    break;
                case 'string' :
                    dumpString($param);
                    break;
                case 'array' :
                    dumpArr($param);
                    break;
                case 'object' :
                    dumpObj($param);
                    break;
                case 'resource' :
                    echo 'resource';
                    break;
                default :
                    echo 'UNKNOWN TYPE';
                    break;
            }
        }
    }
 
 
function dumpString($param) {
    $str = sprintf("string(%d) %s",strlen($param),$param);
    echo $str;
}
 
function dumpArr($param) {
    $len = count($param);
    echo "array($len) {\r\n";
    foreach($param as $key=>$val) {
        if(is_array($val)) {
            dumpArr($val);
        } else {
            echo sprintf('["%s"] => %s(%s)',$key,gettype($val),$val);
        }
    }
    echo "}\r\n";
}
 
function dumpObj($param) {
    $className = get_class($param);
    $reflect = new ReflectionClass($param);
    $prop = $reflect->getDefaultProperties();
    echo sprintf("Object %s #1(%d) {\r\n",$className,count($prop));
    foreach($prop as $key=>$val) {
        echo "[\"$key\"] => ";
        reconstructDump($val);
    }
    echo "}";
}
 
class MyClass
{
    protected $_name;
    function test()
    {
        echo "hello";
    }
}
 
$str    = "test";
reconstructDump(new MyClass(),$str);
echo "\r\n";
$arr2   = array(
    "1"     => "Ddaddad",
    "one"   => array("two" => "Dddd" ),
    "three" => 1
);
reconstructDump($arr2); 
reconstructDump(1,true,null);
exit;

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享php實(shí)現(xiàn)var_dump功能的方法內(nèi)容對(duì)大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道,遇到問題就找創(chuàng)新互聯(lián),詳細(xì)的解決方法等著你來(lái)學(xué)習(xí)!

當(dāng)前名稱:php實(shí)現(xiàn)var_dump功能的方法-創(chuàng)新互聯(lián)
分享路徑:http://bm7419.com/article10/diccdo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站、關(guān)鍵詞優(yōu)化自適應(yīng)網(wǎng)站、企業(yè)建站、App開發(fā)、企業(yè)網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)