使用Quickbooks PHP SDK获取客户的电子邮件地址

时间:2016-01-13 11:07:54

标签: php quickbooks

我正在使用Quickbooks,需要访问客户电子邮件地址。但我从$Customer->getPrimaryEmailAddr()

获得了如下的值
 QuickBooks_IPP_Object_PrimaryEmailAddr Object
(
[_data:protected] => Array
    (
        [Address] => Array
            (
                [0] => Surf@Intuit.com  
            )

    )

)

如何获取电子邮件地址?

2 个答案:

答案 0 :(得分:1)

对于您在问题中发布的特定对象,您希望这样做:

$address = $TheObject->getAddress();

但是,根据您对其他用户的评论,我怀疑您是在循环中使用此代码(例如,循环访问客户列表),这意味着您需要进行额外的检查确保客户实际上有一个主电子邮件地址(否则您最终会看到Call to a member function getAddress() on null等错误):

foreach ($customers as $Customer)
{
  if ($PrimaryEmailAddr = $Customer->getPrimaryEmailAddr())
  {
    $address = $PrimaryEmailAddr->getPrimaryEmailAddr();
  }
}

另一种处理方法是使用XPath方法,这样你就不需要额外的检查了:

foreach ($customers as $Customer)
{
    print('  Email: ' . $Customer->getXPath('//Customer/PrimaryEmailAddr/Address') . "\n\n");
}

答案 1 :(得分:0)

您可以通过以下地址获取地址:

$address = $Customer->getPrimaryEmailAddr()->getAddress();