我需要在 php 中转换上述调用,特殊之处在于在调用中必须在同一参数中有三个参数:
<v20:searchItem>
<!--Optional:-->
<arg0>customer_id</arg0>
<arg1>table_name</arg1>
<arg3><field_name>Barcode</field_name><value>record_id</value></arg3>
<arg3><field_name>DOC_DATE min</field_name><value>date_min</value></arg3>
<arg3><field_name>DOC_DATE max</field_name><value>date_max</value></arg3>
<arg4></arg4>
<arg5>0</arg5>
<arg6>1000</arg6>
</v20:searchItem>
我的代码是:
$myParams1 = array('field_name' => 'Barcode',
'value' => $barcode);
$myParams2 = array('field_name' => 'DOC_DATE min',
'value' => $datai);
$myParams3 = array('field_name' => 'DOC_DATE max',
'value' => $newdate);
$params = array(
"arg0" => $sasAliasSP,
"arg1" => $sasAliasDA,
"arg2" => "",
"arg3" =>$myParams1,
"arg3" =>$myParams2,
"arg3" =>$myParams3,
"arg4" => "",
"arg5" => "0",
"arg6" => "1000"
);
但是不工作,你能帮忙吗?谢谢
试试这个:
$params = array(
"arg0" => $sasAliasSP,
"arg1" => $sasAliasDA,
"arg2" => "",
"arg3" => array($myParams1, $myParams2, $myParams3),
"arg4" => "",
"arg5" => "0",
"arg6" => "1000"
);
我终于在这篇文章中找到了解决方案:https://stackoverflow.com/a/19774498/6564057
arg3 需要是一个以 0 开头的升序键的数组,所以我现在的代码是:
$myParams[] = array('nome_Campo' => 'Barcode', 'valore' => $barcode);
$myParams[] = array('nome_Campo' => 'DOC_DATE min', 'valore' => $datai);
$myParams[] = array('nome_Campo' => 'DOC_DATE max', 'valore' => $newdate);
$params = array(
"arg0" => $sasAliasSP,
"arg1" => $sasAliasDA,
"arg2" => "",
"arg3" => $myParams,
"arg4" => "",
"arg5" => "0",
"arg6" => "1000"
);
它就像魅力一样工作。谢谢。