it-swarm-ja.tech

PHP json_encodeおよびjavascript関数

PHPでJavaScript関数をJSONオブジェクトにエンコードする必要があります。

この:

$function = "function(){}";
$message = "Hello";

$json = array(   
      'message' => $message,
      'func' => $function
);
echo json_encode($json);

出力:

{"message":"Hello","func":"function(){}"}

私が欲しいのは:

{"message":"Hello","func":function(){}}

Json_encodeでこれを行うことはできますか?

25
David Murdoch

Janiが言ったように、これはJSONで直接不可能ですが、これはあなたを助けるかもしれません: http://web.archive.org/web/20080828165256/http://solutoire.com/2008/06/12/送信-javascript-functions-over-json /

22
Fabien Ménager

いいえ。JSON仕様は関数をサポートしていません。独自のコードを記述してJSONのような形式で出力することもできますが、正常に機能するはずです。

9

独自のJSONエンコーダーを作成したくない場合は、 Zend_Json 、ZendFrameworkのJSONエンコーダー。 JSON式 に対処する機能が含まれています。

7
Stefan Gehrig