Обновите версию PHP до 8.2, столкнувшись с проблемой с DomDocumentPhp

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Обновите версию PHP до 8.2, столкнувшись с проблемой с DomDocument

Сообщение Anonymous »

Я использую библиотеку php-dynamics-crm-2011(https://github.com/Rocketeer007/php-dyn ... ree/master) для подключения к CRM365, и она работает, как и ожидалось, ниже версии PHP. 8.
В PHP 8.2 при попытке подключения произошла фатальная ошибка

Неустранимая ошибка: неперехваченное исключение: сериализация «DOMDocument» не разрешена, если только методы сериализации не реализованы в подклассе в [нет активного файла]:0 Трассировка стека: #0 [внутренняя функция]:
DOMNode->__sleep() #1 {main} добавлен [нет активного файла] в строке 0

При дальнейшей отладке я обнаружил проблему с saveXML линия. Ниже приведен код
$securityDOM = new DOMDocument();
$securityDOM->loadXML($security_xml);

/* Get the two CipherValue keys */
$cipherValues = $securityDOM->getElementsbyTagName("CipherValue");
$securityToken0 = $cipherValues->item(0)->textContent;
$securityToken1 = $cipherValues->item(1)->textContent;

/* Get the KeyIdentifier */
$keyIdentifier = $securityDOM->getElementsbyTagName("KeyIdentifier")->item(0)->textContent;

/* Get the BinarySecret */
$binarySecret = $securityDOM->getElementsbyTagName("BinarySecret")->item(0)->textContent;

/* Make life easier - get the entire RequestedSecurityToken section */
$requestedSecurityToken = $securityDOM->saveXML($securityDOM->getElementsByTagName("RequestedSecurityToken")->item(0));
preg_match('/(.*)/', $requestedSecurityToken, $matches);
$requestedSecurityToken = $matches[1];

Я попробовал использовать следующий код, чтобы получить токен, но он не работает должным образом. Не возвращать ожидаемую строку XML
dom = new DOMDocument();

// Load the XML string
$dom->loadXML($xmlString);

// Get the specific node
$specificNode = $dom->getElementsByTagName('node2')->item(0);

// Output the value of the specific node
echo "Value of specific node: " . $specificNode->nodeValue;


Подробнее здесь: https://stackoverflow.com/questions/780 ... omdocument
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Php»