обрабатывать JSON-запрос в PHP

При выполнении ajax-вызова, когда для contentType задано значение application / json вместо значения по умолчанию x-www-form-urlencoded, серверная сторона (в PHP) не может получить параметры записи.
в следующем рабочем примере, если я установлю для contentType «application / json» в запросе ajax, PHP $ _POST будет пустым. почему это происходит? Как я могу обработать запрос, где contentType правильно является application / json в PHP?

$.ajax({
    cache: false,
    type: "POST",
    url: "xxx.php",
    //contentType: "application/json",
    processData: true,
    data: {my_params:123},
    success: function(res) {},
    complete: function(XMLHttpRequest, text_status) {}
});