我通过POST发送到带有Slim的API-REST,我收到了我的数据但是我无法转换为对象。 看:
header('Content-type: application/json');
$request = \Slim\Slim::getInstance()->request();
var_dump($_POST);
print("<br>");
print("<br>");
var_dump($request->getBody());
结果是:
array(11) { ["nombre"]=> string(10) "nom prueba" ["apellido"]=> string(10) "ape_prueba" ["edad"]=> string(2) "20" ["altura"]=> string(3) "190" ["goles"]=> string(3) "200" ["amarillas"]=> string(2) "10" ["rojas"]=> string(1) "5" ["asistencias"]=> string(1) "4" ["partidos"]=> string(3) "100" ["equipos"]=> string(1) "3" ["trofeos"]=> string(1) "2" }
string(136) "nombre=nom%20prueba&apellido=ape_prueba&edad=20&altura=190&goles=200&amarillas=10&rojas=5&asistencias=4&partidos=100&equipos=3&trofeos=2"
但是,如果我执行json_decode,它不会转换为object:
$received = $request->getBody();
var_dump(json_decode($received)); // NULL
我该怎么办?什么是最好的方式?
答案 0 :(得分:1)
请求正文不是JSON格式,因此json_decode不起作用,也不是必需的。您的请求已转换为PHP对象,如var_dump($_POST);
的输出所示。您可以使用$_POST['nombre']
。