php - 我需要在 PHP 中使用哪种 SOAP 编码才不会丢失我的 xsi:type-attribute?
问题描述
我一直在努力在 PHP 中设置 SoapVal 对象的正确编码。
我需要一个带有 nodeName = "OrderItem" 并且 xsi:type 设置为 "TicketOrderItem" 的 SoapVal,但是当我使用以下代码段时:
$orderItemList->append(
new \SoapVar(
$orderItem,
SOAP_ENC_OBJECT,
'TicketOrderItem',
$salesChannelNamespace,
'OrderItem',
$salesChannelNamespace));
我得到以下结果:
预期结果将是:
orderItem 对象如下:
stdClass Object
(
[ProductId] => abcd
[UnitPrice] => stdClass Object
(
[Amount] => 24.50
[CurrencyCode] => EUR
)
[Quantity] => 1
[ValidFrom] => 2021-06-01T09:00:00 02:00
[ConsumerCategoryId] => efgh
[IsDepotTicket] =>
)
我尝试了编码类型,但它们似乎都没有提供所需的结果。
这是我使用的 SoapClient 选项:
$options = array(
'soap_version' => SOAP_1_1,
'encoding' => 'utf-8',
'trace' => true,
'exceptions' => false,
'cache_wsdl' => WSDL_CACHE_BOTH
);
我们使用的是 PHP 7.4.19 版本,来自 php_info() 的肥皂设置如下:
希望有人可以在这里帮助我。
解决方案
推荐阅读
- javascript - 使用 tiktok-scraper npm 包无法获取用户数据
- php - 如何从 php 中打开资源,隐藏真实路径,模拟 .htaccess rewriterule
- laravel - laravel 手动认证用户
- python - 使用 PyQt 的 Python OOP
- python - 当 elif 行为真时,Break 功能不起作用
- c++ - C中填充字节的值
- azure-devops - 修改后管道中的任务组未更新
- c++ - 中止 SFTP 上传会在部分上传的文件末尾留下损坏的数据,从而无法继续上传
- python-3.x - 提交表单时出现以下错误:RelatedObjectDoesNotExist at /agents/create/ User has no userprofile
- django - 为什么我看不到 /Users/Evalyn/folder13/trydjango/src