2016-10-21 3 views
2

json 데이터를 PHP의 String으로 변환하고 싶습니다. 이것은 내 JSON 데이터json을 PHP 문자열로 변환하는 방법

내 PHP 파일에 "안녕하세요,이 말하기 설명은"또한 내 파일을 업로드 할 인쇄 할
{ 
     "": [{ 
      "description": "hello, this is description speaking" 
     }, { 
      "fieldName": "myfile", 
      "originalFilename": "image.png", 
      "path": "/var/folders/rq/q_m4_21j3lqf1lw48fqttx_80000gn/T/ttzVoNPfBxMMirec1tJsnrd2.png", 
      "headers": "[Object]", 
      "size": "82745" 
     }] 
    } 

입니다. 내 PHP 코드를 아래에 주어진 그것을 수정하십시오.

if ($_SERVER['REQUEST_METHOD'] == 'POST'){ 
$json = file_get_contents("php://input"); 
    $json_obj = json_decode($json); 

    echo $json_obj; 

    echo $_POST['description']; 

    $name = $_FILES['myfile']['name']; 
$tmp_name = $_FILES['myfile']['tmp_name']; 
$error = $_FILES['myfile']['error']; 

if (!empty($name)) { 
    $location = 'uploads/'; 

    if (move_uploaded_file($tmp_name, $location.$name)){ 
     echo 'Uploaded'; 
    } 

} else { 
    echo 'please choose a file'; 
} 
} else { 
    echo "error 2"; 
} 

이 코드에서 오류는 정의되지 않은 색인 : D : \ xampp \ htdocs \ work에있는 파일입니다. 파일 업로드 코드가 없으면 아무것도 표시되지 않습니다. 당신이 당신 JSON의 설명 속성에 액세스하려면

+0

그것은 보인다. 먼저 http://jsonlint.com/의 유효성을 검사하고 유효하면 디버깅을 시도하십시오. – Kevin

+0

echo $ json_obj 대신 내용을 배우려면 다음을 수행하십시오. echo ("

"); print_r($json_obj); echo ("
"); 사용하면 어떤 항목을 얻으려고하는지 쉽게 알 수 있습니다. 예를 들어, $ json_obj-> myfile (또는 $ json_obj [ 'myfile'] 일 수도 있습니다. 지금 당장 잊으십시오) –

+0

''json_decode ($ json, true); '를 시도하십시오. –

답변

3

는 다음을 수행 할 수 있습니다 : 당신의 JSON이 유효하지 않습니다처럼

$json_obj = json_decode($json, true); 
$description = $json_obj[''][0]['description']; 
+0

오류를 보여줍니다 -주의 사항 : 12 번째 줄에있는 D : \ xampp \ htdocs \ work \ filesharing \ 2.php에있는 객체 –

+0

내가 말했듯이, 그것이 당신의 json이라면, 그것은 유효하지 않습니다. PHP를 사용하기 전에 제대로 포맷해야합니다. –

+0

나는 json을 바로 잡고 값을 얻기위한 PHP 코드를 알려준다. –

관련 문제