allejo / php-soda
一个用于处理消费者和生产者Socrata API的PHP库
Requires
- php: >=5.6.0
Requires (Dev)
- phpdocumentor/phpdocumentor: 2.*
- phpunit/phpunit: ~5.5
README
一个用于处理Socrata开放数据API的PHP库。作为Socrata官方实现的替代方案,此库通过提供更多功能、更面向对象的编程方法、文档以及大量示例代码来弥补官方库的不足。
此库完全支持通过获取数据集、处理令牌、处理基本身份验证和OAuth2.0令牌来与Socrata开放数据API(SODA)交互,以便写入或修改数据集。
要求
- PHP 5.6+
安装
此库在Packagist上可用,名称为allejo/php-soda
,您可以使用Composer添加它。
您没有使用Composer?不用担心,此库也提供Phar存档,您可以将其包含在您的代码中。从我们的发布中获取最新的Phar存档。
如果您需要使用此库的帮助,请查看我们的wiki文章。
示例用法
以下是一些关于PhpSoda如何工作的快速示例,但您还可以做更多的事情。查看我们的wiki,以了解其他所有内容。
获取数据集
// Create a client with information about the API to handle tokens and authentication $sc = new SodaClient("opendata.socrata.com"); // Access a dataset based on the API end point $ds = new SodaDataset($sc, "pkfj-5jsd"); // Create a SoqlQuery that will be used to filter out the results of a dataset $soql = new SoqlQuery(); // Write a SoqlQuery naturally $soql->select("date_posted", "state", "sample_type") ->where("state = 'AR'") ->limit(1); // Fetch the dataset into an associative array $results = $ds->getDataset($soql);
更新数据集
// Create a client with information about the API to handle tokens and authentication $sc = new SodaClient("opendata.socrata.com", "<token here>", "email@example.com", "password"); // The dataset to upload $data = file_get_contents("dataset.json"); // Access a dataset based on the API end point $ds = new SodaDataset($sc, "1234-abcd"); // To upsert a dataset $ds->upsert($data); // To replace a dataset $ds->replace($data);
注意:此库支持使用Socrata开放数据API直接写入数据集。对于在Socrata数据管理体验(创建数据集的用户界面)中通过应用一个或多个数据转换到模式的方案的数据集,请使用Socrata数据管理API应用这些相同的转换到所有更新。有关何时使用SODA与Socrata数据管理API的详细信息,请参阅数据管理API文档
获取帮助
要获取帮助,请查看我们的wiki是否有关于您问题的信息。如果wiki无法帮助您,您可以创建一个问题,或者到IRC来看看;我在IRC上作为"allejo"可用,所以请随时ping我。我建议创建一个问题,因为其他人可能也有相同的问题,但为了快速帮助,IRC就很好。
要报告错误或请求功能,请提交问题。
IRC
频道: #socrata-soda
网络: irc.freenode.net