2015-08-07 4 views
3

Я пытаюсь использовать API CloudFlare через PHP CURL, однако примеры doc отображаются как завиток командной строки.Перевести команду CURL на PHP CURL? Cloudflare API

$ curl -X PUT "https://api.cloudflare.com/client/v4/zones/9a7806061c88ada191ed06f989cc3dac/dns_records/9a7806061c88ada191ed06f989cc3dac" \ 
-H "X-Auth-Email: [email protected]" \ 
-H "X-Auth-Key: c2547eb745079dac9320b638f5e225cf483cc5cfdda41" \ 
-H "Content-Type: application/json" \ 
--data '{"id":"9a7806061c88ada191ed06f989cc3dac","type":"A","name":"example.com","content":"1.2.3.4","proxiable":true,"proxied":false,"ttl":120,"locked":false,"zone_id":"9a7806061c88ada191ed06f989cc3dac","zone_name":"example.com","created_on":"2014-01-01T05:20:00.12345Z","modified_on":"2014-01-01T05:20:00.12345Z","data":{}}' 

Является ли запрос PUT таким же, как POST? И массив внизу меня сбивает с толку. Не знаю, как это переводится в PHP CURL.

+0

Симпатичный способ заключается в том, чтобы поместить команду без $ в 'shell_exec()' – Drakes

ответ

1

Вам нужно будет сделать сообщение, но также отправить заказ. Скручивание будет делать пост стиль положил

curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT"); 
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data)); 

Затем добавить заголовки, если это необходимо

curl_setopt($ch, CURLOPT_HTTPHEADER, [array of your headers]); 

Измените массив будет ключевой массив значений, где ключ является имя заголовка и значение значение заголовка

+0

, так что $ data является массивом из -data? – ThatGuy343

+0

, а массив заголовков - строки с помеченными символами -H в запросе выше? – ThatGuy343

+0

Да, если его проще, вы также можете опубликовать версию строки? Но, очевидно, его сложнее редактировать, чем массив – exussum

Смежные вопросы