$new_contact = PodioContact::create(
2144836,
new PodioContact(
array('name' => $name,'title'=>$title, 'organization'=>$org, 'phone' => $phone, 'mail' => $email)
)
);
以上是创建新联系人的方法。它接受2个参数,第一个是工作空间id的整数,第二个是保存联系人详细信息的Contact对象。
参考这里https://developers.podio.com/doc/contacts/create-space-contact-65590,我清楚地知道应该是第一个参数,即工作区id。
然而,第二个参数在API Doc中声明为$ attributes = array(),这是一个数组。我认为这是联系人属性的键值数组。我继续将键值数组传递给第二个参数,如下所示:
$new_contact = PodioContact::create(
2144836,
array('name' => $name,'title'=>$title, 'organization'=>$org, 'phone' => $phone, 'mail' => $email)
);
一直无法工作。经过1个小时的挣扎和浪费。我只是尝试传递一个Contact Object作为第二个参数,如本文开头所示。因此,通过这次试验和错误并浪费了大量时间,我发现应该是运气的第二个论点。
所以我的问题是,为什么显示第二个参数的API Doc应该是一个数组?文档是错误的还是我错过了什么?你能否告诉我,如果我在这里做错了什么,所以我不需要反复试验,浪费1~2小时来弄清楚第二个论点。
答案 0 :(得分:2)
这真的是一回事。当您传递Podio *对象作为attributes
参数时,podio-php将通过调用该对象上的as_json
方法对其进行序列化(然后它将是一个关联数组)。如果您将podio-php置于调试模式,您可以准确地看到通过线路发送的内容:http://podio.github.io/podio-php/debug/