首页 > 解决方案 > 我使用 PHP 从 podio CRM 获取数据

问题描述

我使用 PHP 语言从 podio CRM 获取数据,并通过其 id 获取每个元素的数据,因为它在此函数中找到:

public function getContacts($item_id) {

    $this->contactAuth();

    $item = \PodioItem::get_by_app_item_id($podio_contact_app_id,$item_id);
      return $item;
}

例如,我们有这样的“状态”:

$status = $item->fields[6]->values; 

尽管功能相同,但并非所有元素都正确。

有时 :

$status = $item->fields[6]->values;

而有时 :

$status = $item->fields[8]->values;

我们能知道是什么导致了这个问题吗?

标签: phppodio

解决方案


如果某些字段为空,它们将不会出现在PodioItem对象中,这就是为什么数组中特定字段的位置可能会有所不同(例如您的示例中的状态字段)。

因此,您应该通过字段的外部 ID(人类可读的名称,如“标题”、“状态”等)或字段 ID(数字代码)从字段中获取值,而不是使用字段索引(可能会有所不同):

$item->fields['title']->values        // 'title' is an External ID
$item->fields->get(123456789)->values // 123456789 is a Field ID

要了解特定字段的外部 ID 和字段 ID 是什么,您可以列出所有字段,如下所示:

// Iterate over the field collection
foreach ($item->fields as $field) {
  // You can now work on each individual field object:
  print "This field has the id: ".$field->field_id;
  print "This field has the external_id: ".$field->external_id;
}

或者您可以在应用程序菜单 → 开发人员的 Podio 中查看所有字段的开发人员信息

在此处输入图像描述

无论如何,请查看https://podio-community.github.io/podio-php/items/上的 Podio PHP 包装器文档,它非常有用:)


推荐阅读