如何在php中将json转换为字符串
我想在php中将json数据转换为字符串。这是我的json数据如何在php中将json转换为字符串,php,arrays,json,post,Php,Arrays,Json,Post,我想在php中将json数据转换为字符串。这是我的json数据 { "": [{ "description": "hello, this is description speaking" }, { "fieldName": "myfile", "originalFilename": "image.png", "path": "/var/folders/rq/q_
{
"": [{
"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文件中打印“您好,这是说明”,并且我想上传我的文件。下面给出了我的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中未定义的索引:文件。
如果没有fileupload代码,它什么也不显示。如果您只想访问json的description属性,可以执行以下操作:
$json_obj = json_decode($json, true);
$description = $json_obj[''][0]['description'];
看起来您的JSON无效。首先尝试验证它,并在它有效后进行调试;打印($json\U obj);回声(“”);使用它,您将能够轻松看到您试图获得的物品。-例如:$json_obj->myfile(或者它可能是$json_obj['myfile'],我现在忘记了)尝试
json_解码($json,true)代码>我已经更正了我的json,现在告诉我获取值的php代码。你必须再次查看php手册。您不必使用第三方工具来检查JSON编码字符串的有效性,因为如果编码不正确,JSON\u decode()
将返回null
。json\u decode()
的第二个参数,您没有使用它,它将确定json\u decode
的返回值是关联数组还是objectIt显示错误——注意:在第12行尝试获取D:\xampp\htdocs\work\filesharing\2.php中的non-object属性,正如我所说的,如果这是您的json,那么它就不是有效的。在与PHP一起使用之前,您需要正确格式化它。我已经更正了我的json,现在告诉我获取值的PHP代码。您的json可以更好,但无论如何。。。我编辑了答案是的,我已经测试过了