変数の内容を人間が読める形式で出力する、デバッグ用の小さな関数を作成したいと思います。
pr()
この関数は、CakePHP フレームワークにあるショートカットに基づいています。つまり、次のようなものです。
私はこれまでのところこれを持っています:
function pr($var,$msg){
$pr_debug=true;
if($pr_debug){
echo "<pre>";
if($msg) echo "<b>".$msg.": </b>";
if(gettype($var)=="array" || gettype($var)=="object" ) echo "<br>";
print_r($var);
echo "</pre>";
}
}
変数の内容の前にオプションのメッセージ ($msg) を出力します。
しかし、私が追加したいのは、メッセージが送信されない場合、変数の名前をそのようなメッセージとして出力することです。したがって、次のようなものを取得できます。
$myvar="hello";
pr($myvar);
//出力する必要があります:
myvar: hello
では、関数内で、変数の名前を文字列として取得して出力できるようにするにはどうすればよいですか? つまり、pr($foo);
I need "foo"
、
$name="biz"; pr($$name);
I need"biz",
など...
できれば、PHP グローバル設定またはそのいずれかに関係なく機能するものが必要です (ちなみに、私はあまりよく理解していないので、GLOBALS に関するヘルプは大歓迎です)。
ありがとう!
おまけ:ここstackoverflowで、ソースコードをフォーマットしてPHPのフォーマットと色を取得するにはどうすればよいですか? 今のところ、テキストエリアのツールバーを単純に使用して、「コードサンプル」を選択しました...