解決方法:直接上代碼
需要提前安裝擴展
composer require predis/predis
/** * API訪問頻率限制簡單處理 */ require_once 'vendor/autoload.php'; $redis = new PredisClient ( 'tcp://127.0.0.1:6379' ); // 測試key $clientKey = "api_count:client_id:" . date ( 'YmdHi' ); // 限制時間為1分鐘 $seconds = '60'; // 限制次數(shù)為20次 $count = 20; //不存在key if (! $redis--->get ( $clientKey )) { $redis->set ( $clientKey, 0 ); $redis->expire ( $clientKey, $seconds ); } //訪問頻率監(jiān)控 $accessCount = $redis->incr ( $clientKey ); if ($accessCount > $count) { echo "[WARING]:訪問超過限制次數(shù)"; } else { $remainingTime = $redis->ttl ( $clientKey ); echo "{$clientKey} 剩余時間:{$remainingTime}s 訪問次數(shù)為:{$accessCount}"; }