ThinkPHP6 ????? ?? ?? ? ??? ??: ????? ?? ??
Aug 12, 2023 pm 01:17 PMPHP6 ????? ?? ?? ? ???? ??: ????? ?? ??
?? ??? ???????? ????? ??? ?? ? ?????? ??? ?? ??????? ??? ?? ? ?? ??? ?? ??? ?????? ?????. ??? ?????? ???? ????? ?? ???? ?? ??? ??? ??? ????? ??? ???? ?? ?????. ThinkPHP6 ???????? ????? ??? ????? ???? ? ??? ?? ?? ?? ????? ?? ??? ?????.
1. ????? ?? ??
????? ?? ??? ?? ?? ???? ?? ?????? ???? ?? ???? ?? ?????? ?? ??? ???? ?? ?????. ThinkPHP6? ????? ???? ????? ?? ??? ?????.
1. ???? ?? ??:
app/middleware ?????? ?? ???? ApiLimiter.php ??? ?????.
<?php namespace appmiddleware; class ApiLimiter { public function handle($request, Closure $next) { // 獲取請求的路由信息等,根據(jù)具體情況進行限流 // 這里以請求路徑作為示例 $route = $request->pathinfo(); $cacheKey = 'api_limiter_'.$route; // 判斷緩存中的請求次數(shù),如果超過了限定次數(shù),則返回請求頻繁的錯誤信息 if(cache($cacheKey) >= 10) { return json([ 'code' => 400, 'message' => '請求頻繁,請稍后再試', 'data' => null ]); } // 如果沒有超過限定次數(shù),則繼續(xù)執(zhí)行請求,并將請求次數(shù)加1 cache($cacheKey, cache($cacheKey) + 1, 60); // 緩存的時間可以根據(jù)實際需求進行調(diào)整 return $next($request); } }
2. ???? ??:
app/middleware.php ???? ??? ?? ????? ?????:
<?php // 注冊中間件 return [ // ... appmiddlewareApiLimiter::class // ... ];
3. ???? ??:
?? ??? ???? ??:
<?php Route::group('/api/', function () { // ... Route::rule('example', 'api/example')->middleware(appmiddlewareApiLimiter::class); // ... });
? ??? ?? ??? ??? ? ????. /api/example ?????? ?? ??? ???? ?? ?? 10?? ??? ?????.
2. ??? ?? ????
????? ?? ?? ??? ??? ?? ????? ???? ????? ??? ?? ??? ?? ????. ThinkPHP6? ????(swiping), ? ??? ???? ?? ???? ??? ??? ?????.
1. ?? ??:
???? ????? ????? ??? ???? ?????? ?????. ?? ?? ??? ?? ??? ?? ??? ? ????. ??? ????.
<?php use thinkacadeCache; function generateToken($userId) { $token = md5(uniqid() . $userId); Cache::set('token_'.$token, $userId, 3600); // 令牌有效時間為1小時 return $token; }
2. ?? ??:
???????? ?????? ??? ??? ??? ?????? ???? ???. ?????? ?????:
<?php use thinkacadeCache; function validateToken($token) { $userId = Cache::get('token_'.$token); if(!$userId) { // 令牌無效,返回錯誤信息 return false; } // 令牌有效,可以繼續(xù)執(zhí)行接口邏輯 // 在這里可以獲取到$userID,可以根據(jù)用戶ID做進一步的操作,例如校驗用戶權(quán)限等 return true; }
?? ??? ?? ?????? ?? ???? ????? ???? ??? ? ????. ?? ??????? IP ?? ??, ??? ?? ?? ?? ? ??? ?? ??? ?? ?? ???? ??? ?? ??? ??? ??? ? ????.
??:
????? ??? ?? ??? ??????? ?? ?????. ???? ????? ?? ?? ? ??? ?? ????? ?? ????? ??? ???? ?? ? ??? ??? ? ????. ThinkPHP6 ???????? ????? ?? ????? ?? ??? ?? ??? ???? ??? ????? ???? ??? ? ????. ?? ???? ??? ????? ??? ? ?? ??? ???? ?? ?? ??? ?? ???? ??? ??? ??? ?? ???. ?????? ??? ????? ??? ????? ?????? ???? ? ? ??? ? ????.
? ??? ThinkPHP6 ????? ?? ?? ? ??? ??: ????? ?? ??? ?? ?????. ??? ??? PHP ??? ????? ?? ?? ??? ?????!

? AI ??

Undress AI Tool
??? ???? ??

Undresser.AI Undress
???? ?? ??? ??? ?? AI ?? ?

AI Clothes Remover
???? ?? ???? ??? AI ?????.

Clothoff.io
AI ? ???

Video Face Swap
??? ??? AI ?? ?? ??? ???? ?? ???? ??? ?? ????!

?? ??

??? ??

???++7.3.1
???? ?? ?? ?? ???

SublimeText3 ??? ??
??? ??, ???? ?? ????.

???? 13.0.1 ???
??? PHP ?? ?? ??

???? CS6
??? ? ?? ??

SublimeText3 Mac ??
? ??? ?? ?? ?????(SublimeText3)

ThinkPHP ????? ????? ??? ?????: Composer? ????, ???? ????? ???? php bin/console? ????, ?? ???? ??? http://localhost:8000? ?????.

ThinkPHP?? ??? PHP ????? ??? ?? ??? ????. ??? ???? 3.2, 5.0, 5.1, 6.0? ????, ??? ??? ??? ???? ??? ??? ???? ? ?????. ?? ?? ??? ThinkPHP 6.0.16???. ??? ??? ? PHP ??, ?? ?? ?? ? ???? ??? ??????. ??? ??? ??? ???? ?? ?? ??? ???? ?? ????.

ThinkPHP Framework? ???? ???? ??: ThinkPHP Framework? ?? ????? ?????? ??? ???. ThinkPHP ?? ????? ???? ?? ???(?? ??)? ????. ?????? ?? ????? ?????. ? ??? ?????. ThinkPHP ??????? ??????. ThinkPHP ?????? URL? ???? ?????.

Laravel? ThinkPHP ?????? ?? ??: ThinkPHP? ????? ??? ? ??? ??? ?? Laravel?? ??? ????. Laravel? ? ????? ??? ??????? ?? ThinkPHP? ? ??? ? ????.

ThinkPHP ?? ??: PHP, Composer ? MySQL ??? ?????. Composer? ???? ????? ????. ThinkPHP ?????? ???? ?????. ?????? ??? ?????. ?????? ??? ?????. ??????? ???? http://localhost:8000? ?????.

ThinkPHP? ?? ????, ?? ???, ?? ?? ? ?????? ???? ?? ??? ?? ??? PHP ????????. ?? ?? ???? ??? ?? 10,000? ??? ??? ??? ? ??? JD.com, Ctrip? ?? ??? ? ??? ? ?????? ????? ?? ?? ?????? ?? ?????.

?? ??: API ??? ?? ThinkPHP ?????? ???? ?? ???? ????? ????? API(?? ????? ?????)? ???? ?? ? ??? ????. API? ??? ??, ?? ?? ? ?? ??? ??? ? ??? ????? ??? ???? ?? ?? ??? ?????. ??? PHP ?? ?????? ThinkPHP ?????? ????? ?? ???? ???? ????.

"?? ??: ThinkPHP ?????? ???? ??? ??? ???? ??" ??? ??? ??? ???? ?? ? ?? ????? ?? ?? ?? ??? ??? ???? ??? ???? ?? ?? ??? ?? ? ??????. ??? ??? ??? ??? ????? ?? ???? ??? ???, ?? ??? ??, ??? ?? ?? ?? ??? ?? ??? ??? ???? ?? ??? ??? ???? ?? ?? ?????. PHP ???? ?? ???? ?? ?????? ThinkPHP ?????? ??? ??? ???? ? ?? ??? ??? ?????.
