2016-06-29 26 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