Я использую PHP Curl для передачи данных HTML-формы в CRM (Zoho), где создается запись.
Ответ после создания записи (echo $ response;):
* Запись успешно добавлена * 3442526000000497019 * 2018-09-04 11: 32: 312018-09-04 11: 32: 31 *
Я хочу проанализировать / декодировать этот ответ ($ response), чтобы извлечь идентификатор записи ( 3442526000000497019 ).
В CRM API SDK говорится что-то об ответах в формате json.
Поэтому я попытался расшифровать ответ с помощью функции json_decode:
var_dump(json_decode($responser));
var_dump(json_decode($responser, true));
Однако это возвращает NULL (NULL возвращается, если json не может быть декодирован или если закодированные данные глубже, чем предел рекурсии.), А не массив.
Буду признателен за любой совет, подсказку, указание пальцем в правильном направлении. Должен ли я декодировать его другим способом?
Следующий фрагмент моего скрипта показывает, как данные формы вставляются (как данные XML в CRM через php Curl):
<?php
$xml = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>
<Leads>
<row no=\"1\">
<FL val=\"Uhrzeit\">".$uhrzeit."</FL>
<FL val=\"Datum\">".$datum."</FL>
<FL val=\"First Name\">'Mad'</FL>
<FL val=\"Last Name\">'Dog'</FL>
<FL val=\"Phone\">".$phone."</FL>
<FL val=\"Email\">".$email."</FL>
<FL val=\"Zip Code\">".$postcode."</FL>
<FL val=\"fuerwen\">".$fuerwen."</FL>
<FL val=\"pflegegrad\">".$pflegegrad."</FL>
<FL val=\"mobilitaet\">".$mobilitaet."</FL>
<FL val=\"sprache\">".$sprache."</FL>
<FL val=\"betreuungsbeginn\">".$zeitpunkt."</FL>
</row>
</Leads>";
$auth="fewfwefwe";
$url ="https://crm.zoho.com/crm/private/xml/Leads/insertRecords";
$query="authtoken=".$auth."&scope=crmapi&newFormat=1&xmlData=".$xml;
$ch = curl_init();
/* set url to send post request */
curl_setopt($ch, CURLOPT_URL, $url);
/* allow redirects */
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
/* return a response into a variable */
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
/* times out after 30s */
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
/* set POST method */
curl_setopt($ch, CURLOPT_POST, 1);
/* add POST fields parameters */
curl_setopt($ch, CURLOPT_POSTFIELDS, $query);// Set the request as a POST FIELD for curl.
//Execute cUrl session
$responser = curl_exec($ch);
curl_close($ch);
echo $responser;
var_dump(json_decode($responser));
var_dump(json_decode($responser, true));
С уважением
Леонора