如何使用php从angular ajax获取POST数据

I'm having trouble retreaving or sending data with POST using PHP and angular. I reduced my problem to the easiest case but still the response is an empty array.

Here is my Angular code

this.search = function(){
    console.log("searching");
    $http({
        method: 'POST',
        url: 'search/',
        data: {search:1, direct: true}
    }).then(function successCallback(response) {
        console.log(response.data);
    }, function errorCallback(response) {
        console.log("Error retreaving data.");
        console.log(response);
    });
}

and my PHP code:

<?php

header('Content-type: application/json');

echo json_encode($_POST) ;

?>

The funny thing is that using GET in both places, it works :/

Angular serializes js objects into JSON to POST, php does not populate the $_POST data structure from a JSON post body, to ge the json data in the post body you'll have to read from php://input

<?php

header('Content-type: application/json');

echo file_get_contents('php://input') ;

?>