PHP处理JSON。。。奇怪的行为
我正试图上传一个文件和一些数据到我的服务器,使用Angular JS通过AJAX发出POST请求,而我的后端是Laravel 4(这并不重要) 现在我成功地将此数据传递给我的控制器。我能够做到以下几点:PHP处理JSON。。。奇怪的行为,php,json,laravel,Php,Json,Laravel,我正试图上传一个文件和一些数据到我的服务器,使用Angular JS通过AJAX发出POST请求,而我的后端是Laravel 4(这并不重要) 现在我成功地将此数据传递给我的控制器。我能够做到以下几点: $data = Input::all(); return $data; Iconsole.log在响应成功时将数据输出,并生成: Object { imageData: "{"title":"Some Title","owner":"Owner Name","source":"Sour
$data = Input::all();
return $data;
Iconsole.log
在响应成功时将数据输出,并生成:
Object {
imageData: "{"title":"Some Title","owner":"Owner Name","source":"Source Name"}",
file: Object
}
好的,这就是我想要的,但更具体地说,我想要imageData
里面的东西
$data = Input::all();
$imageData = $data['imageData'];
return $imageData;
好的,那么console.log
返回:
Object {title: "Some Title", owner: "Owner Name", source: "Source Name"}
很好-但现在让我们抓住以下趋势的单个元素:
$data = Input::all();
$imageData = $data['imageData'];
$title = $imageData['title'];
return $title;
否:500(内部服务器错误)
。我尝试将其作为对象访问的原因也是如此($title=$imageData->title
)
那么我该如何抓住里面的东西呢?你的问题是,
$imageData
是一个字符串。这个字符串碰巧包含JSON,但它仍然是一个字符串。你可以从它以双引号开始和结束的事实看出,如果它是JSON,情况就不会是这样了
您的问题很可能是将JSON传递给某个对象,然后该对象将数据转换为JSON。您的问题是,
$imageData
是一个字符串。该字符串碰巧包含JSON,但仍然是一个字符串。您可以从它以双引号开始和结束这一事实看出”
,如果它实际上是JSON,情况就不一样了
您的问题可能是您正在将JSON传递给某个对象,然后该对象将数据转换为JSON。检查您的错误日志以了解500错误的真正含义。您可以打印($imageData)吗我只是想看看它是什么样子php@JonathanKuhn带有消息“非法字符串偏移量”标题“”的异常“ErrorException”-其他内容不多!请检查错误日志以了解500错误的真正含义。您可以打印($imageData)吗我只是想看看它是什么样子php@JonathanKuhn异常“ErrorException”和消息“非法字符串偏移量”标题“”-没有太多其他的!啊,是的,我认为你是对的!经过一些研究后,一个
json_解码($data['imageData'],true)
似乎完成了这项工作。Ta.啊,是的,我认为你是对的!经过一些研究后,一个json_解码($data['imageData'],true)
似乎完成了这项工作。Ta。