villaflor / laravel-cloudflare
Laravel 访问 Cloudflare API 的客户端库
1.0.0
2021-02-27 20:33 UTC
Requires
- php: ^7.3|^8.0
- cloudflare/sdk: dev-master
Requires (Dev)
- ext-json: *
- orchestra/testbench: ^6.13
README
Cloudflare Laravel 库。这个库是官方 Cloudflare PHP SDK 的扩展
要求
- Cloudflare API 令牌
安装
在终端中
composer require villaflor/laravel-cloudflare
php artisan vendor:publish --provider="Villaflor\Cloudflare\CloudflareServiceProvider"
在 .env 文件中添加以下行
CLOUDFLARE_API_TOKEN={API token here}
可用的方法
CloudflareDNS
addRecordlistRecordsgetRecordDetailsgetRecordIDupdateRecordDetailsdeleteRecord
CloudflareDNSAnalytics
getReportTablegetReportByTime
CloudflareIps
listIPs
CloudflareZone
addZoneactivationCheckpauseunpausegetZoneByIdlistZonesgetZoneIDgetAnalyticsDashboardchangeDevelopmentModegetCachingLevelsetCachingLevelcachePurgeEverythingcachePurgedeleteZone
CloudflareZoneLockdown
listLockdownscreateLockdowngetLockdownDetailsupdateLockdowndeleteLockdown
CloudflareZoneSettings
getMinifySettinggetRocketLoaderSettinggetAlwaysOnlineSettinggetEmailObfuscationSettinggetServerSideExcludeSettinggetHotlinkProtectionSettinggetBrowserCacheTtlSettingupdateBrowserCacheTtlSettingupdateMinifySettingupdateRocketLoaderSettingupdateAlwaysOnlineSettingupdateEmailObfuscationSettingupdateHotlinkProtectionSettingupdateServerSideExcludeSetting
用法
这个库使用依赖注入。依赖注入是一个听起来很高级的词,实际上意味着:类的依赖通过构造函数或在某些情况下通过“setter”方法“注入”到类中。
use Villaflor\Cloudflare\CloudflareDNS; class MyClass { private $cloudflareDNS; public function __construct(CloudflareDNS $cloudflareDNS) { $this->cloudflareDNS = $cloudflareDNS; } public function UpdateDNS() { $details = [ 'type' => 'A', 'name' => 'my-domain.com', 'content' => '1.2.3.4', 'ttl' => 1, 'proxied' => true, ]; return $this->cloudflareDNS->updateRecordDetails('zone-id', 'record-id', $details); } public function DetailDNS() { return $this->cloudflareDNS->getRecordDetails('zone-id', 'record-id'); } public function ListDNS() { return $this->cloudflareDNS->listRecords('zone-id'); } }