jamesfrost/wikidata

用于处理 Wikidata API 的 PHP 客户端。

1.0.2 2017-02-27 11:58 UTC

This package is not auto-updated.

Last update: 2024-09-28 20:03:37 UTC


README

Wikidata 提供了一个 API,用于搜索和检索来自 wikidata.org 的数据。

安装

composer require freearhey/wikidata

用法

$wikidata = new Wikidata;

搜索

通过实体标题搜索

$result = $wikidata->search('steve jobs');

检查无搜索结果

if($result->isEmpty()) {
	echo 'no results';
	die();
}

检索结果列表中的第一个实体

$singleResult = $result->first();

检索所有结果

$allResults = $result->get();

获取实体 ID

$entityId = $singleResult->getEntityId(); // Q26

实体

通过 ID 获取单个实体

$entities = $wikidata->entities('Q26');

通过预设语言(默认:en)获取单个实体

$entities = $wikidata->entities('Q26', 'fr');

通过 ID 和更多语言获取几个实体

$entities = $wikidata->entities('Q26|Q106', 'en|fr|ch');

检索第一个实体

$entity = $entities->first();

获取所有实体

$entity = $entities->get();

通过 ID 获取单个实体

$entity = $entities->get('Q26');

获取实体标签和描述(默认语言:en)

$label = $entity->getLabel(); // Steve Jobs
$description = $entity->getDescription('de'); // US-amerikanischer Unternehmer, Mitbegründer von Apple Computer

如果存在,通过属性 ID(例如 P21)获取实体属性值。所有可找到的列表属性 在这里

$gender = $entity->getPropertyValues('P21'); // array(1) { [0]=> string(4) "male" }

以及语言属性(默认:en)

$childs = $entity->getPropertyValues('P40', 'ru'); // array(1) { [0]=> string(35) "Бреннан-Джобс, Лиза" }

这就是全部。

许可证

Wikidata 采用 MIT 许可证 许可。