# 杂项

* [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);

```

