我正在从AngularJs
应用程序向我的php脚本发送一些表单数据。到目前为止,我还无法让Angular发送"常规"POST
请求(它会发送JSON数据),所以我想我只需要用php
解码它,然后使用结果
我现在很难参考结果。我在向脚本发送数据时得到"NetworkError: 500 Internal Server Error
。
这是我的php代码:
<?php
$data = file_get_contents("php://input");
$data = json_decode($data);
var_dump($data);
$fromName = $data["fromName"];
$fromEmail = $data["fromEmail"];
$msg = $data["inputMsg"];
var_dump($data)
返回以下内容:
object(stdClass)#1 (3) {
["fromName"]=>
string(4) "djea"
["fromEmail"]=>
string(13) "djea@djea.com"
["inputMsg"]=>
string(7) "testMsg"
}
有人能指出我做错了什么吗?感谢
将true
作为第二个变量传递给json_decode
以获得关联数组。
$data = json_decode($data, true);
$fromName = $data["fromName"];
$fromEmail = $data["fromEmail"];
$msg = $data["inputMsg"];
若不将第二个变量作为true
传递,则json_decode
返回对象。
$data = json_decode($data);
$fromName = $data->fromName;
$fromEmail = $data->fromEmail;
$msg = $data->inputMsg;
因为它是一个对象而不是数组,所以您需要访问以下元素:
$fromName = $data->fromName;
$fromEmail = $data->fromEmail;
$msg = $data->inputMsg;
不要将object
视为an array
$fromName = $data->fromName;
$fromEmail = $data->fromEmail;
$msg = $data->inputMsg;