jamesfrost / wikidata
用于处理 Wikidata API 的 PHP 客户端。
1.0.2
2017-02-27 11:58 UTC
Requires
- php: >=5.4.0
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 许可证 许可。