UNPKG

manual-php

Version:
376 lines (251 loc) 4.88 kB
# 杂项 * [connection_aborted - 检查客户端是否已经断开](#connectionaborted) * [connection_status - 返回连接的状态位](#connectionstatus) * [constant - 返回一个常量的值](#constant) * [define - 定义一个常量](#define) * [defined - 检查某个名称的常量是否存在](#defined) * [die - 输出一个消息并且退出当前脚本](#die) * [eval - 把字符串作为代码执行](#eval) * [exit - 输出一个消息并且退出当前脚本](#exit) * [get_browser - 获取浏览器具有的功能](#getbrowser) * [\_\_halt_compiler - 中断编译器的执行](#haltcompiler) * [highlight_file - 语法高亮一个文件](#highlightfile) * [highlight_string - 语法高亮字符串](#highlightstring) * [hrtime - 获取系统的高分辨率时间](#hrtime) * [ignore_user_abort - 设置客户端断开连接时是否中断脚本的执行](#ignoreuserabort) * [pack - 将数据打包成二进制字符串](#pack) * [php_strip_whitespace - 返回删除注释和空格后的 PHP 源码](#phpstripwhitespace) * [show_source - 语法高亮一个文件](#showsource) * [sleep - 延缓执行](#sleep) * [sys_getloadavg - 获取系统的负载](sysgetloadavg) * [time_nanosleep - 延缓执行若干秒和纳秒](#timenanosleep) * [time_sleep_until - 使脚本延缓到指定的时间为止](#timesleepuntil) * [uniqid - 生成一个唯一 ID](#uniqid) * [unpack - 从二进制字符串中解压缩数据](#unpack) * [usleep - 以指定的微秒数延迟执行](#usleep) ## connection_aborted ```php <?php var_dump(connection_aborted()); ``` ## connection_status ```php <?php var_dump(connection_status()); ``` ## constant ```php <?php define('FOO', 2 + 3); class Foo { /** * Just a test constant. * * @var int */ public const FOO = 2 + 3; } var_dump(constant('foo')); // NULL var_dump(constant('FOO')); // int(5) var_dump(constant('Foo::FOO')); // int(5) ``` ## define ```php <?php define('FOO', 2 + 3); define('BAR', <<<EOT bar EOT); define('BAZ', [true, false]); define('QUX', tmpfile()); ``` ## defined ```php <?php define('FOO', 2 + 3); class Foo { /** * Just a test constant. * * @var int */ public const FOO = 2 + 3; } var_dump(defined('foo')); // bool(false) var_dump(defined('FOO')); // bool(true) var_dump(defined('Foo::FOO')); // bool(true) ``` ## die ```php <?php die('foo'); // foo ``` ## eval ```php <?php $foo = 'foo'; $bar = 'bar'; $baz = '$foo $bar'; eval("\$qux = \"$baz\";"); var_dump($qux); // string(7) "foo bar" ``` ## exit ```php <?php exit('foo'); // foo ``` ## get_browser ```php <?php var_dump(get_browser()); var_dump(get_browser(null, true)); ``` ## \_\_halt_compiler ```php <?php __halt_compiler(); §RW$FG$%ZDS$TSG$TSZ%U(); §$"§%"§$!!(); ``` ## highlight_file ```php <?php highlight_file(__DIR__ . '/example.php', false); $foo = highlight_file(__DIR__ . '/example.php', true); var_dump($foo); ``` 上例中的 `example.php` 文件内容: ```php <?php /** * Just a test function. * * @param void * @return void */ function foo() { // } class Foo { // } $foo = 'foo'; ``` ## highlight_string ```php <?php highlight_string('<?php phpinfo(); ?>', false); $foo = highlight_string('<?php phpinfo(); ?>', true); var_dump($foo); ``` ## hrtime ```php <?php var_dump(hrtime()); var_dump(hrtime(true)); ``` ## ignore_user_abort ```php <?php var_dump(ignore_user_abort()); var_dump(ignore_user_abort(true)); var_dump(ignore_user_abort(false)); ``` ## pack ```php <?php var_dump(pack('C3', 80, 72, 80)); // string(3) "PHP" ``` ## php_strip_whitespace ```php <?php var_dump(php_strip_whitespace(__DIR__ . '/example.php')); ``` 上例中的 `example.php` 文件内容: ```php <?php /** * Just a test function. * * @param void * @return void */ function foo() { // } class Foo { // } $foo = 'foo'; ``` ## show_source ```php <?php show_source(__DIR__ . '/example.php', false); $foo = show_source(__DIR__ . '/example.php', true); var_dump($foo); ``` 上例中的 `example.php` 文件内容: ```php <?php /** * Just a test function. * * @param void * @return void */ function foo() { // } class Foo { // } $foo = 'foo'; ``` ## sleep ```php <?php var_dump(sleep(2)); ``` ## sys_getloadavg ```php <?php var_dump(sys_getloadavg()); ``` ## time_nanosleep ```php <?php var_dump(time_nanosleep(2, 1000000)); ``` ## time_sleep_until ```php <?php var_dump(time_sleep_until(microtime(true) + 2)); ``` ## uniqid ```php <?php var_dump(uniqid()); var_dump(uniqid('prefix_')); var_dump(uniqid('prefix_', true)); ``` ## unpack ```php <?php var_dump(unpack('C3', 'PHP')); // array(3) { [1]=> int(80) [2]=> int(72) [3]=> int(80) } ``` ## usleep ```php <?php usleep(2000000); ```