JSON POSTボディを$ _REQUESTにデコードするためのPHPの機能は本当ですか?私がいるFormDataとJSONでパラメータを受け取るためにPHPでAPIを作成していPHP is automatically decoding JSON data?
として
同じではありません。私がPOSTMANでテストすると、PHPはPOST本体をcontent-type:application/json
から$_REQUEST
に自動的にデコードするように見えます。
私は午後一回それをテストしており、どのようにそれが可能かを理解できません。
これは、POSTリクエストです:
curl -X POST \
http://xxxxx.com/api/user/profile/update \
-H 'content-type: application/json' \
-d '{
"id" : 174,
"email" : "[email protected]",
"lang": "en_US",
}'
これは私が妄想を見ていますPHP
var_dump($_REQUEST)
//output
'id' => int 174
'email' => string '[email protected]' (length=19)
'lang' => string 'en_US' (length=5)
で得たものである??
POSTコンテンツタイプをapplication/json
以外のものに変更した場合、自動デコードは行われません。
私はPHP5.6 + Phalcon 3.1を使用しています。 JSONの自動デコードについて何も言及していません。
ここに私のcomposer.json
ですが、私はこれらのパッケージのどれもそのようなことはしないと思います。
"require": {
"twilio/sdk" : "4.*",
"crossjoin/browscap": "~2.0",
"mixpanel/mixpanel-php" : "2.*",
"guzzlehttp/guzzle": "^6.2",
"geoip2/geoip2": "~2.0",
"overtrue/wechat": "~3.1",
"mongodb/mongodb": "^1.0.0",
"symfony/var-dumper": "^3.1",
"maxmind-db/reader": "~1.0",
"pda/pheanstalk": "^3.1",
"nesbot/carbon": "^1.21",
"sendgrid/sendgrid": "~5.1",
"ramsey/uuid": "^3.5",
"phpmyadmin/motranslator": "^3.0"
}
Googleで検索するのにベストトライしました。誰かが私に何らかの説明をして文書を指すことができますか?
phpで作成したものと確信していますか? phalconやあなたの依存関係が原因かもしれません。 – kodmanyagha
@kodmanyagha私はファルコンにそのような特徴はないと確信しています。しかし、他の可能性は知らない。ベアボーンコントローラでアプリケーションをテストしました。 – Reed