2011-04-08 3 views
0

저는 파이어 폭스를 실행하고 yslow 결과를 얻으려는 PHP 파일을 가지고 있습니다. 하지만 yslow 결과는 객체 형태로 전송됩니다. [object Object] 결과는 post 메소드를 사용하여 전송됩니다. PHP 코드로 문자열로 변환하고 웹 페이지에 표시하는 방법 ???자바 스크립트 객체를 문자열로 변환하는 PHP 코드

+2

더 많은 문맥을 추가하십시오. 무엇을 어디에서 어디로 보낼 것입니까? –

답변

0

개체가 JSON.stringify으로 전달되면 문자열로 반환되어야합니다.

var a = { "ynumreq": { "score":85} }; // currently an [object Object] 
var b = JSON.stringify(a, null); // now "b" is a string representation of "a", "{ "ynumreq": { "score":85} }" 

만약 B 당신이 그것을 게시되는 위치 언급 한 것처럼 당신이 (제안) 당신의 PHP에 json_decode를 사용하는 경우, 그것은 작동합니다, 서버에 보내는 것을 본질적이다.

print_r(json_decode($_POST['string_object'])); // in this case it's '{"ynumreq":{"score":85}}' 

당신은

{"ynumreq":{"score":85}}stdClass Object 
(
    [ynumreq] => stdClass Object 
    (
     [score] => 85 
    ) 
) 

는 거기에서 값을 얻기 시작할 수 있습니다 받아야합니다. 이것은 내가 데이터를 어떻게 설명했는지에 따라 테스트 한 것입니다.

1

귀하의 질문은 비트 ambigues입니다. 그것은 당신이 문자열로 변환 점점 자바 스크립트 개체를 게시하려고하는 것처럼 들리 네.

{foo:'bar'}.toString(); // return "[object Object]" 

POST 데이터에 포함 시키려면 객체를 직렬화해야합니다.

+0

결과 yslow에서 얻은 결과. 결과를 계산하는 동안 값은 다음과 같이 저장됩니다. { "ynumreq": { "score": 85}} PHP 파일에 게시하는 동안 param에 결과가 포함 된 JSON.stringify (params, null)을 수행합니다. 어떻게 내 PHP 파일 및 표시 결과를 가져올 수 있습니다 – su03

-1

JavaScript 객체 문자열과 JSON의 차이점은 JSON의 경우 변수 이름 foo가 큰 따옴표로 묶여 있다는 점입니다. JavaScript 객체 문자열에는 json_decode가 작동하지 않습니다.