2016-03-21 8 views
0

var_dumpをユーザー定義の関数に置き換えることができるのだろうかと思います。 私は、さまざまなモジュールのダンピング関数やラッパーを使用できることを知っています。 しかし、私が達成したいことは、 "var_dump"を使っている私のプロジェクトの誰もが、 "知っている"ことなく、別の構文を使う必要なく、私の新しい機能を得ることです。 機能をオーバーライドするだけです。 ありがとうPHPのvar_dumpをカスタム関数に置き換えてください。

+0

あなたが望むものを達成するためにPHPのソースを編集する必要があります。 :-) – Ikari

+0

私は常に関数 '' 'function vd($ var){echo '

'; var_dump($var); echo '
';}を書いています。 } '' '。私はそれをお勧めします。 –

答えて

1

PHPはAFAIKの再宣言機能をサポートしていません。 しかし、ケース固有の基準でできることは少しあります。

は、ファイルにこのコードを持って言う:

var_dump($a); 
var_dump($b); 
var_dump($c); 

あなたはそうのような名前空間でこれをラップすることができます:

namespace OverridingGlobalNamespace { 
    function var_dump($_) { 
      echo "My custom var_dump"; 
    } 

    var_dump($a); //Will use namespace function instead of PHP function 
    var_dump($b); 
    var_dump($c); 
} 
+0

こんにちは、これは興味深い解決策であると思われますが、これが実際に動作するかどうかを確認する必要があります) – Asped

+0

あなたが言うように - これは大文字と小文字の区別がありますが、それでもすべてのvar_dump呼び出しには適用できません。だから、私はそれが不可能だと思います:) – Asped

+1

@Asped私はこれが理想的な解決策であるとか、良いアイデアであると主張していません。私はちょうどそれが言語の興味深い奇妙なものであることがわかります。理想的には、var_dumpではなく、独自のラッパー関数を使用することができます(デバッグ環境と本番環境では別々に定義できます)。 – apokryfos

関連する問題