intval

intval  函數

(PHP 4, PHP 5, PHP 7, PHP 8)

intval — 獲取變數的整数值

說明

intval(mixed $value, int $base = 10): int

通过使用指定的进制 base 转换(默认是十进制),返回变量 value 的 int 数值。 intval() 不能用于 object,否则会产生 E_WARNING 錯誤並返回 1。

範例

<?php
echo intval(42);                      // 42
echo intval(4.2);                     // 4
echo intval('42');                    // 42
echo intval('+42');                   // 42
echo intval('-42');                   // -42
echo intval(042);                     // 34
echo intval('042');                   // 42
echo intval(1e10);                    // 10000000000
echo intval('1e10');                  // 10000000000
echo intval(0x1A);                    // 26
echo intval('0x1A');                  // 0
echo intval('0x1A', 0);               // 26
echo intval(42000000);                // 42000000
echo intval(420000000000000000000);   // -4275113695319687168
echo intval('420000000000000000000'); // 9223372036854775807
echo intval(42, 8);                   // 42
echo intval('42', 8);                 // 34
echo intval(array());                 // 0
echo intval(array('foo', 'bar'));     // 1
echo intval(false);                   // 0
echo intval(true);                    // 1
?>

ord

ord   函數

(PHP 4, PHP 5, PHP 7, PHP 8)

ord — 轉換字符串第一个字节为 0-255 之间的值

说明

ord(string $character): int

解析 character 二进制值第一个字节为 0 到 255 范围的无符号整型类型。

如果字符串是 ASCII、 ISO-8859、Windows 1252之类单字节编码,就等于返回该字符在字符集编码表中的位置。 但请注意,本函数不会去检测字符串的编码,尤其是不会识别类似 UTF-8 或 UTF-16 这种多字节字符的 Unicode 代码点(code point)。

该函数是 chr() 的互补函数。

範例:

<?php
declare(encoding='UTF-8');
$str = "?";
for ( $pos=0; $pos < strlen($str); $pos ++ ) {
 $byte = substr($str, $pos);
 echo 'Byte ' . $pos . ' of $str has value ' . ord($byte) . PHP_EOL;
}
?>

輸出:

Byte 0 of $str has value 240
Byte 1 of $str has value 159
Byte 2 of $str has value 144
Byte 3 of $str has value 152

strtok

strtok 函數

(PHP 4, PHP 5, PHP 7, PHP 8)

strtok — 标记分割字符串

说明

strtok(string $string, string $token): string|false
strtok(string $token): string|false

strtok() 将字符串 string 分割为若干子字符串,每个子字符串以 token 中的字符分割。这也就意味着,如果有个字符串是 “This is an example string”, 你可以使用空格字符作为 token,将这句话分割成独立的单词。

注意,仅第一次调用 strtok 函数时才使用 string 参数。 随后每次调用 strtok 都将只使用 token 参数,因为它会记住它在当前字符串中的位置。 如果要重新开始分割一个新的字符串,你需要再次使用 string 参数来调用 strtok 函数来对其进行初始化。 注意,可以在 token 参数中使用多个字符。字符串将被 token 参数中任何一个字符分割。

参数

string
被分成若干子字符串的原始字符串。
token
分割 string 时使用的分界字符。

範例

<?php
$string = "This is\tan example\nstring";
/* 使用制表符和换行符作为分界符 */
$tok = strtok($string, " \n\t");

while ($tok !== false) {
    echo "Word=$tok<br />";
    $tok = strtok(" \n\t");
}
?>
結果:
Word=This
Word=is
Word=an
Word=example
Word=string