Kann denn PHP mittlerweile mehr als die beiden Enctype application/x-www-form-urlencoded und multipart/form-data parsen?
Das kann PHP schon immer™, der rohe HTTP-Request-Body kann in PHP genau wie in Perl über den STDIN-Stream gelesen und anschließend weiterverarbeitet werden. Einen Handle auf den Stream bekommt man in PHP mit fopen('php://input', 'r')
, steht auch im Handbuch.
Also, wenn Daten per POST nicht mit dem Default Enctype sondern als application/json gesendet werden, sind die dann auch in $_POST zu finden?
Nein, da nicht. Früher gab es mal eine superglobale Variable $HTTP_RAW_POST_DATA
da hätte man die Daten finden können, das Feature wurde aber zu Gunsten der genannten Alternative entfernt.