2016-09-30 5 views
1

使用戻るJSON現在、私はそうのように私のPHPのバックエンドからのメッセージを返すよPHP

"{\"message\":\"Number doesn't exist!\"}" 

を私が取得するために期待しています

{ 
    "message": "Number doesn't exist!" 
} 

私は間違っていますか?

+0

デコードJSONデータ –

+1

'$データ= [tが存在する 'というメッセージ' => '\ナンバーはdoesnの' '!]; echo json_encode($ data); '予期した結果が返されます。あなたのこの関数 'set_response'を確認してください。 – devpro

+0

set_responseの問題があります。@devpro – HaRsH

答えて

3

json_encode()の第2パラメータとしてJSON_UNESCAPED_SLASHESを使用できます。

$data = [ 'message' => 'Number doesn\'t exist!']; 
$encoded = json_encode($data,JSON_UNESCAPED_SLASHES); 
$this->set_response($encoded, REST_Controller::HTTP_CREATED); 

その他のソリューション:

$data = [ 'message' => 'Number doesn\'t exist!']; 
$string = $this->set_response(json_encode($data), REST_Controller::HTTP_CREATED); // your current result 
$decode = json_decode($string,true); // decode the value 
echo json_encode($decode,JSON_UNESCAPED_SLASHES); //and use JSON_UNESCAPED_SLASHES in json_encode() 
0

brother json_encode($ data、true)としてjsonを呼び出し、json_decode($ data、true)のようにデコードするだけです。 上記は を動作していないようならば コーディングハッピーして第2の\は、応答の一部である引用符( ")をエスケープすることです

を試してみてください。

使用にstripslashes()これらを取り除くために。

引用符で包まれた文字列は引用符が含まれている場合、彼らはエスケープする必要があります。PHPのエスケープ文字は

+0

jsonで期待される結果が必要です。配列にない – devpro

+0

json_encode()には1つのパラメータしかありません。デコードは2つのパラメータを持っています –

+0

私は答えを更新しました –

0

\であるあなたは、JSONレスポンスを復号しなければならない。

json_decode($your_response); 
関連する問題