检查 PHP 中对象的 SOAP 数组
Check SOAP array for object in PHP
我正在构建一个邮政编码查找服务,该服务将自动完成表单并在找不到时求助于手动输入。
我已连接到 SOAP 客户端,提取了数据,但现在我需要检查数组以查看是否已设置值,如果没有,则执行其他操作。
到目前为止我有:
$params = array('ah21'=>array('session_id'=>$sessionid,'input'=>"$postcode,$number",'data'=>'STREET_1,HOUSE_1,DISTRICT_LEVEL,ORGANISATION,DISTRICT_2,FORMATTED_PREMISE_NO,TOWN,POSTCODE,COUNTY,COUNTRY'));
$address = $soapclient->__soapCall("ah21",$params);
$address = $address->address;
我需要检查 'HOUSE_1' 是否有值,如果没有则显示 'STREET_1'。
$firstline = NULL;
function checkaddress(){
global $firstline;
if (isset($address->HOUSE_1 )){
$firstline = $address->HOUSE_1;
} else {
$firstline = $address->STREET_1;
}
我一无所获?此外,如果您没有猜到我正在学习 php,那么对我的代码的任何指示都会有很大帮助。
更新:忘记提及我正在别处打印 $firstline,所以重新出现在表格中。
难道你只是错过了一个:
return $firstline 在函数末尾 ?
唯一可以说的是 $address->HOUSE_1 可能已设置但为空。您可以将您的代码替换为:
if ((isset($address->HOUSE_1) ? $address->HOUSE_1 : '') != '')
$firstline = $address->HOUSE_1;
我正在构建一个邮政编码查找服务,该服务将自动完成表单并在找不到时求助于手动输入。
我已连接到 SOAP 客户端,提取了数据,但现在我需要检查数组以查看是否已设置值,如果没有,则执行其他操作。
到目前为止我有:
$params = array('ah21'=>array('session_id'=>$sessionid,'input'=>"$postcode,$number",'data'=>'STREET_1,HOUSE_1,DISTRICT_LEVEL,ORGANISATION,DISTRICT_2,FORMATTED_PREMISE_NO,TOWN,POSTCODE,COUNTY,COUNTRY'));
$address = $soapclient->__soapCall("ah21",$params);
$address = $address->address;
我需要检查 'HOUSE_1' 是否有值,如果没有则显示 'STREET_1'。
$firstline = NULL;
function checkaddress(){
global $firstline;
if (isset($address->HOUSE_1 )){
$firstline = $address->HOUSE_1;
} else {
$firstline = $address->STREET_1;
}
我一无所获?此外,如果您没有猜到我正在学习 php,那么对我的代码的任何指示都会有很大帮助。
更新:忘记提及我正在别处打印 $firstline,所以重新出现在表格中。
难道你只是错过了一个: return $firstline 在函数末尾 ?
唯一可以说的是 $address->HOUSE_1 可能已设置但为空。您可以将您的代码替换为:
if ((isset($address->HOUSE_1) ? $address->HOUSE_1 : '') != '')
$firstline = $address->HOUSE_1;