0

いくつかのピクセル ファイアーをテストしていますが、次の問題があります。情報を要求するページがあります:

<?
$pixel = file_get_contents("http://127.0.0.1/api/v1/pixel/preq/pixel/10102.json");
echo $pixel;

どちらが返されますか:

{"code":200,"data":"<script>\r\nalert(\"Cool JS Pixel\");\r\n<\/script>"}

ただし、2 つの問題があります。1 つ目は「安全」\r\nであり、エスケープ/されていることと、文字列をデコードしようとした場合です。

<?
$pixel = file_get_contents("http://127.0.0.1/api/v1/pixel/preq/pixel/10102.json");
echo json_decode($pixel);

次のエラーが表示されます。

Catchable fatal error: Object of class stdClass could not be converted to string in plugins\plg_pixelwise\test.php on line 3
4

1 に答える 1

4

json_decodeオプションの 2 番目の引数を指定すると、オブジェクトまたは配列が返されますtrue。オブジェクトが __toString メソッドを提供せず、文字列または数値のみを提供している場合、オブジェクトをエコーすることはできません (配列をエコーすることはできますが、「配列」を出力するだけです)。

試す:

var_dump(json_decode($pixel));
于 2013-10-25T19:04:05.590 に答える