在 PHP 中,is_integer()
函數(shù)用于檢查一個(gè)變量是否為整數(shù)。要支持不同進(jìn)制的整數(shù)判斷,你可以使用 base_convert()
函數(shù)將其他進(jìn)制的數(shù)字轉(zhuǎn)換為十進(jìn)制,然后再使用 is_integer()
函數(shù)進(jìn)行判斷。
以下是一個(gè)示例,展示了如何使用 base_convert()
和 is_integer()
來判斷一個(gè)二進(jìn)制數(shù)是否為整數(shù):
function is_integer_base($number, $base) {
// 將其他進(jìn)制的數(shù)字轉(zhuǎn)換為十進(jìn)制
$decimal = base_convert($number, $base, 10);
// 使用 is_integer() 函數(shù)判斷十進(jìn)制數(shù)是否為整數(shù)
return is_integer($decimal);
}
// 測試示例
$binaryNumber = '1010'; // 二進(jìn)制數(shù) 1010(十進(jìn)制表示為 10)
$result = is_integer_base($binaryNumber, 2);
if ($result) {
echo "The given number is an integer in base {$base}.";
} else {
echo "The given number is not an integer in base {$base}.";
}
在這個(gè)示例中,我們定義了一個(gè)名為 is_integer_base()
的函數(shù),它接受兩個(gè)參數(shù):$number
(要檢查的數(shù)字)和 $base
(數(shù)字的進(jìn)制)。我們使用 base_convert()
函數(shù)將其他進(jìn)制的數(shù)字轉(zhuǎn)換為十進(jìn)制,然后使用 is_integer()
函數(shù)判斷十進(jìn)制數(shù)是否為整數(shù)。