镜像更新时间约为24小时,如对数据实时性有较高的业务需求,建议使用 官方版服务
兼容写法:也可直接将参数 token / sign / timestamp / nonce 拼接在URL参数中(参数说明请对应上方,Token无需“Bearer”),不建议此方式,安全性较低,容易泄露隐私数据。
该API适用于PHP开发者工具、企业内部组件库检索平台、CI/CD流水线依赖检查及教学演示网站。可用于快速构建类似Packagist.org的搜索界面,或在自动化脚本中验证包是否存在。
适用于: Laravel / ThinkPHP 6.x 8.x / Hyperf / Symfony / Yii2 / Slim / CodeIgniter4 等主流 PHP 框架及原生 PHP 项目,更多语言SDK陆续开发中。
composer require isas/php-sdk
git clone https://github.com/ISAS-DATA/isas-php-sdk.git
use Isas\Sdk\Client as IsasSdk; $isas = new IsasSdk($token, $appSecret); $isas->Tools()->IsasPackagistSearch($keyword);
use Isas\Sdk\Client as IsasSdk; $isas = new IsasSdk($token, $appSecret); $Tools = new \Isas\Sdk\Services\Tools($isas); $Tools->IsasPackagistSearch($keyword);
<?php require_once __DIR__ . '/vendor/autoload.php'; use Isas\Sdk\Client as IsasSdk; // 配置你的凭证 $token = 'YOUR_API_TOKEN'; $appSecret = 'YOUR_APP_SECRET'; // 未启用动态签名服务可留空 // 初始化客户端 $isas = new IsasSdk($token, $appSecret); // 调用 [ Packagist软件包搜索(镜像版) ] 服务接口 // 方式一:链式极简调用(基于动态代理魔术方法(__call)实现子服务路由切换) $response = $isas->Tools()->IsasPackagistSearch($keyword); // 方式二:独立服务实例调用(显式实例化服务组件,适用于提供 IDE 强类型代码补全提示的场景) // $Tools = new \Isas\Sdk\Services\Tools($isas); // $response = $Tools->IsasPackagistSearch($keyword); // 输出结果 if ($response['code'] === 200) { echo "获取成功:"; print_r($response['data']); } else { echo "错误:" . $response['message']; } ?>