When i attended an interview, the interviewer asked me this question. Which memory they are using heap , stack etc. I googled it but i didn\'t get any clear answer.
The values of $_POST internally are created inside php_auto_globals_create_post() and made available via PG(http_globals)[TRACK_VARS_POST], which is just a way to reference http_globals.
The definition of aforementioned http_globals tells us that it's an array of zval * elements, one for each $_POST, $_GET, $_COOKIE, etc. (arrays are also stored inside a zval container).
Allocating a zval is done via ALLOC_ZVAL(), which calls the following functions:
The malloc() function allocates memory on the heap, so therefore the answer is heap.