Como transformar um valor JSON POSTADO em PHP?

Como um teste, esses dados JSON estão sendo POSTADOS para o meu site:

{ "order": { "id": null, "created_at": null, "status": "new", "total_btc": { "cents": 100000000, "currency_iso": "BTC" }, "total_native": { "cents": 2263, "currency_iso": "USD" }, "custom": "123456789", "button": { "type": "buy_now", "name": "Test Item", "description": null, "id": null }, "transaction": { "hash": "4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b", "confirmations": 0 } } } 

Uma vez que está sendo enviado servidor para servidor, não vejo visivelmente os dados. Tentei enviar o array $ _POST para um arquivo de texto, mas ele aparece em branco. O que eu acho que eu preciso fazer é:

 $data = json_decode($jsonData); 

Mas como configuro a variável $ jsonData?

Você pode tentar usar wrappers para ler a consulta de POST em bruto.

 $data = file_get_contents("php://input"); 

Você tentou isso, armazene a picada obtida em uma variável e depois decodificá-la?

 $postedJsonData= '{"order":{"id":null,"created_at":null,"status":"new","total_btc": {"cents":100000000,"currency_iso":"BTC"},"total_native": {"cents":2263,"currency_iso":"USD"},"custom":"123456789","button": {"type":"buy_now","name":"Test Item","description":null,"id":null},"transaction": {"hash":"4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b","confirmations":0}}}'; var_dump(json_decode($postedJsonData, true)); 

O parâmetro verdadeiro retornaria uma matriz associativa

$ data = json_decode ($ jsonData, True);