php 中可以通過 gettype() 函數獲取變量類型,該函數返回字符串形式的類型信息,如 string、integer 等。另外,is_* 函數系列可用于判斷特定類型,如 is_string() 判斷是否是字符串。
如何在 PHP 函數中判斷變量類型?
在 PHP 中,確定變量類型的最便捷方式是使用 gettype() 函數。此函數返回一個字符串,表示變量的類型。以下是一些示例:
$variable = 'string'; echo gettype($variable); // 輸出:string $variable = 123; echo gettype($variable); // 輸出:integer $variable = 123.45; echo gettype($variable); // 輸出:double $variable = true; echo gettype($variable); // 輸出:boolean $variable = []; echo gettype($variable); // 輸出:array $variable = new stdClass(); echo gettype($variable); // 輸出:object
登錄后復制
除了 gettype() 函數,PHP 還提供了 is_* 函數系列,用于測試特定類型。例如:
$variable = 'string';
if (is_string($variable)) {
echo '變量是字符串';
}
登錄后復制
實戰案例
假設我們有一個包含不同類型元素的數組,我們希望根據類型對數組進行分類。我們可以使用以下函數:
function categorizeVariables(array $variables): array
{
$categorizedVariables = [];
foreach ($variables as $key => $variable) {
switch (gettype($variable)) {
case 'string':
$categorizedVariables['strings'][$key] = $variable;
break;
case 'integer':
$categorizedVariables['integers'][$key] = $variable;
break;
case 'double':
$categorizedVariables['doubles'][$key] = $variable;
break;
case 'boolean':
$categorizedVariables['booleans'][$key] = $variable;
break;
case 'array':
$categorizedVariables['arrays'][$key] = $variable;
break;
case 'object':
$categorizedVariables['objects'][$key] = $variable;
break;
}
}
return $categorizedVariables;
}
登錄后復制
在上面的示例中,categorizeVariables 函數將返回一個將數組元素分為不同類別(字符串、整數、雙精度浮點數、布爾值、數組和對象)的關聯數組。






