2017-09-27 46 views
0

这里是我的代码,这是我从here有一个很难获取从createCustomer对象CUSTOMER_ID的getId()传递给createCustomerCard

$createcustomer_api = new \SquareConnect\Api\CustomersApi(); 
$createcustomer_result = $createcustomer_api->createCustomer(array(
    'given_name' => 'Amelia', 
    'family_name' => 'Earhart', 
    'email_address' => '[email protected]', 
    'address' => array(
    'address_line_1' => '500 Electric Ave', 
    'address_line_2' => 'Suite 600', 
    'locality' => 'New York', 
    'administrative_district_level_1' => 'NY', 
    'postal_code' => '10003', 
    'country' => 'US' 
), 
    'phone_number' => '1-555-555-0122', 
    'reference_id' => 'YOUR_REFERENCE_ID', 
    'note' => 'a customer' 
)); 

使用的例子。如果我打印出来的结果我得到

SquareConnect\Model\CreateCustomerResponse Object 
(
    [errors:protected] => 
    [customer:protected] => SquareConnect\Model\Customer Object 
     (
      [id:protected] => CBASEHtp6YVU8AirkMv1lrVMyoIgAQ 
      [created_at:protected] => 2017-09-27T23:19:44.62Z 
      [updated_at:protected] => 2017-09-27T23:19:44.62Z 
      [cards:protected] => 
      [given_name:protected] => Amelia 
      [family_name:protected] => Earhart 
      [nickname:protected] => 
      [company_name:protected] => 
      [email_address:protected] => [email protected] 
      [address:protected] => SquareConnect\Model\Address Object 
       (
        [address_line_1:protected] => 500 Electric Ave 
        [address_line_2:protected] => Suite 600 
        [address_line_3:protected] => 
        [locality:protected] => New York 
        [sublocality:protected] => 
        [sublocality_2:protected] => 
        [sublocality_3:protected] => 
        [administrative_district_level_1:protected] => NY 
        [administrative_district_level_2:protected] => 
        [administrative_district_level_3:protected] => 
        [postal_code:protected] => 10003 
        [country:protected] => US 
        [first_name:protected] => 
        [last_name:protected] => 
        [organization:protected] => 
       ) 

      [phone_number:protected] => 1-555-555-0122 
      [reference_id:protected] => YOUR_REFERENCE_ID 
      [note:protected] => a customer 
      [preferences:protected] => SquareConnect\Model\CustomerPreferences Object 
       (
        [email_unsubscribed:protected] => 
       ) 

      [groups:protected] => 
     ) 

) 

现在我需要创建客户卡,以便与客户进行未来的定期付款。

$createcard_api = new \SquareConnect\Api\CustomersApi(); 
$createcard_result = $createcard_api->createCustomerCard($createcustomer_result->getId(), array(
    'card_nonce' => $nonce, 
    'billing_address' => array(
    'address_line_1' => '1455 Market St', 
    'address_line_2' => 'Suite 600', 
    'locality' => 'San Francisco', 
    'administrative_district_level_1' => 'CA', 
    'postal_code' => '94103', 
    'country' => 'US' 
), 
    'cardholder_name' => 'Amelia Earhart' 
)); 

据我了解有一个与方SDK是getId()它根据this被称为像$customer->getId()内置的功能,但根据this我只是需要添加->getId()createCustomer对象。

所以我试图调用getId()功能

$createcustomer_result->getId() 

,但在我的代码我收到错误

Fatal error: Call to undefined method SquareConnect\Model\CreateCustomerResponse::getId() 

如何正确获取来自createCustomer客户ID?

回答

2

您只从API(通讯设备)获得响应对象。您需要首先从响应中提取创建的对象,然后可以查询它的ID。

$customer = $createcustomer_result->getCustomer(); 

这应该让你的客户实际的对象,那么你可以:

$customer_id = $customer->getId(); 

这是API库很常见。如果发生错误,您还可以查询响应对象。当使用这些库时,看看各个类的内容并阅读函数,可以更好地了解如何以这种方式使用它们。

+0

我爱你!这工作 –

+0

你会碰巧知道如何获得Customercard ID?我尝试使用'$ createcard_result-> getCustomerCard();'但没有奏效。 –

+0

以及您在哪里找到'getCustomer()'文档?我无法在任何地方找到。 –

相关问题