2016-06-29 49 views
-2

此代碼工作,但我需要使用json_encode如何使用json_encode?

<?php 
    require_once('person_class.php'); 
    $person = new Person_class(); 

    $first_name = addslashes ($_POST['first_name']); 
    $last_name = addslashes ($_POST['last_name']); 
    $birthday = addslashes ($_POST['birthday']); 
    $gender = addslashes ($_POST['gender']); 

    $person_id = $person->addPerson($first_name, $last_name, $birthday, $gender); 

    echo " 
     { \"status\"  : \"1\", 
      \"error\"  : \"0\", 
      \"person_id\" : \"$person_id\", 
      \"first_name\" : \"$first_name\", 
      \"last_name\" : \"$last_name\", 
      \"birthday\" : \"$birthday\", 
      \"gender\"  : \"$gender\" 
     }"; 
?> 

我想改變這個部分,並使用json_encode

回聲 「 {\」 狀態\」:\ 「1 \」, 「error \」:\「0 \」, \「person_id \」:\「$ person_id \」, \「first_name \」:\「$ first_name \」, \「last_name \」:\「 $ last_name \「, \」birthday \「:\」$ birthday \「, \」gender \「:\」$ gender \ 「 }」;

+1

你的問題不清楚,你可以發佈你想要的結果嗎? –

+1

爲什麼你先編碼$ person_id並賦值給'$ json'變量,然後你重新聲明'$ json' var? –

回答

-1

我你需要使用崗位價值建立一個JSON字符串,然後在數組保存後值一樣

$data=array(); 
     $data['first_name'] = $_POST['first_name']; 
     $data['last_name'] = $_POST['last_name']; 
     $data['birthday'] = $_POST['birthday']; 
     $data['gender'] = $_POST['gender']; 

echo json_encode($data); 

會給你一個JSON字符串

+0

你確定這是OP問的嗎? –

+0

asty的問題並不清楚。如果asty想要一個json字符串,我的代碼就可以使用。 –

+0

如果不清楚,您應該詢問更多詳情。 –

1

json_encode功能,你需要首先創建一個數組,然後在該函數中傳遞數組。 作爲例子,

<?php 
$arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5); 
echo json_encode($arr); 
?> 

欲瞭解更多詳情,請參見,Here

在你的代碼中,我還沒有找到您要使用json_encode您所創建的任何陣列。例如在你的代碼示例$person_id中變量不清楚它是一個普通變量還是它是一個數組。

+0

您也可以添加選項:http://php.net/manual/en/json.constants.php;) – Jer