首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 綜合知識

PHP 變數命名慣例建議:型態前綴與團隊規範

     編輯:PHP 綜合知識

PHP 是弱型別語言,變數型態不顯式宣告,團隊協作時統一命名慣例能大幅提升程式碼可讀性與維護性。本文分享實務驗證的「型態前綴」命名風格(類似匈牙利命名法簡化版),並說明陣列維度、物件、資源等進階規範。

基本型態前綴

型態前綴範例說明
stringstr$strMessage = 'Hello';字串
integern / int$nCount = 100;整數,n 為 number 縮寫
float/doublef / flt$fPrice = 99.9;浮點數
booleanb / bln$bIsActive = true;布林值,建議用 is/has/can 開頭更語意化
arraya / arr$aUsers = [];陣列,見下方維度規範
objectobj / o$objUser = new User();物件實例
resourceres / r$resFile = fopen(...);資源控制代碼
null-$data = null;無特定前綴
mixedm / mx$mResult = $func();多型回傳值

陣列維度與語意命名

// 一維陣列:單數名詞
$aUser = ['id' => 1, 'name' => 'John'];

// 多維/集合陣列:複數名詞
$aUsers = [
    ['id' => 1, 'name' => 'John'],
    ['id' => 2, 'name' => 'Jane']
];

// 關聯陣列(字典):單數 + Map/Dict 後綴或直接語意化
$aUserMap = [1 => 'John', 2 => 'Jane'];
$aConfig = ['db_host' => 'localhost', 'db_port' => 3306];

物件與資源進階規範

類型前綴範例備註
Entity/Modelentity / ent$entOrder = $repo->find(1);領域實體
DTO/VOdto / vo$dtoRequest = new LoginRequest();資料傳輸物件
Repositoryrepo$repoUser = new UserRepository();資料存取層
Servicesvc$svcPayment = new PaymentService();業務邏輯層
Controllerctrl$ctrlAuth = new AuthController();控制器
PDOStatementstmt$stmt = $pdo->prepare(...);預處理語句
cURL handlech$ch = curl_init();慣用寫法

布林值語意化命名(優於前綴)

// 推薦:以 is/has/can/should 開頭,可省略 b 前綴
$isLoggedIn = true;
$hasPermission = false;
$canEdit = true;
$shouldRetry = false;

常數與全域變數

  • 類別常數:CLASS_CONSTANT(全大寫底線分隔)
  • 全域常數:APP_DEBUG, DB_DEFAULT_CHARSET
  • 全域變數(極少用):$gConfig、$GLOBALS['app'] 加 g 前綴警示。

團隊落地建議

  1. 建立 NAMING_CONVENTION.md 納入專案文件。
  2. 配置 PHP_CodeSniffer 自訂規則或使用 PHPStan/Psalm 偵測不符合慣例的變數。
  3. Code Review 時重點檢查:型態前綴一致性、陣列單複數、布林語意化。
  4. 既有專案漸進式重構:新檔案強制遵循,舊檔案修改時順手調整。

總結

「型態前綴 + 語意化名稱」能在不依賴 IDE 型別提示的情況下,讓開發者一眼掌握變數用途。關鍵在於團隊共識與工具化檢查,而非教條主義。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved