как мне получить доступ к объекту, который я отправил в файл сервера

// Отправил запрос на отправку ajax http в php-файл на сервере, post // request – простой объект.

var xhr = new XMLHttpRequest(); var person = { "firstName" : "Adebowale", "lastName" : "Johnson", "ago" : 43 } xhr.open("POST","phfile.php",true); xhr.setRequestHeader("Content-type","application/x-www-form- urlencoded"); xhr.onreadystatechange = function() { if(xhr.readyState === 4) { var status = xhr.status; if((status >= 200) && (status < 300) || (status === 304)) { alert(xhr.responseText); } } }; xhr.send(JSON.stringify(person)); 

// если я предупреждаю (xhr.responseText); // Я получаю объект {} из браузера.

// На сервере, используя php, как мне получить доступ к объекту, если я делаю echo или // print_r, я получаю пустой объект — объект {} без каких-либо свойств.

// Как вы можете сказать по тону моего вопроса, я все еще очень новичок ко всем // этим, просто пытаюсь узнать, пожалуйста.

// на моем phfile.php, я установил следующий код php …

 <?php print_r //How do I access the object I sent to this file please ?> 

Вы можете читать необработанные данные POST с помощью STDIN :

 $post_data = fopen("php://input", "r"); $json = fgets($post_data); $object = json_decode($json); $firstName = $object->firstName; $lastName = $object->lastName; $age = $object->age; 

Вы можете упростить все это, просто передав данные в виде полей формы с кодировкой URL:

 xhr.send('firstName=' + encodeURIComponent(person.firstName) + '&lastName=' + encodeURIComponent(person.lastName) + '&ago=' + encodeURIComponent(person.ago); 

Затем вы можете просто получить к ним доступ как $_POST['firstName'] и т. Д. В PHP.

Я не вижу необходимости в JSON.stringify(person) в вашем запросе AJAX , так как все keys Object уже находятся в strings .

Поскольку вы используете метод POST , вы можете напрямую обращаться к объекту, например

 print_r ($_POST['person']);