ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
uopz-Zend的用户操作-扩展提供了通常在编译和执行时使用的Zend Engine功能,以便允许修改表示PHP代码的内部结构,并允许用户代码与VM交互。 uopz支持以下活动: * 重载某些操作码,包括ZEND\_EXIT和ZEND\_NEW * 备份和还原功能及方法 * 重命名功能和方法 * 复制函数和方法 * 删除功能和方法 * 重新定义全局和类常量 * 删除全局和类常量 * 运行时组成和类修改 > **注意事项**: > 支持的所有活动均与opcache兼容 ## 要求 uopz 2需要PHP 5.4+。uopz 5.0需要PHP7。从uopz 5.1开始,需要PHP 7.1+。 下载:[https://pecl.php.net/package/uopz](https://pecl.php.net/package/uopz). ## **运行时配置** | 名字 | 默认 | 可修改范围 | 更新日志 |描述| | --- | --- | --- | --- |---| | [uopz.disable](https://www.php.net/manual/zh/uopz.configuration.php#ini.uopz.disable) | "0" | PHP\_INI\_SYSTEM | Available as of uopz 5.0.2 |如果启用,则uopz应该停止对引擎产生任何影响| | [uopz.exit](https://www.php.net/manual/zh/uopz.configuration.php#ini.uopz.exit) | "0" | PHP\_INI\_SYSTEM | Available as of uopz 6.0.1 |是否允许执行退出操作码。可以在运行时通过调用[uopz\_allow\_exit()](https://www.php.net/manual/en/function.uopz-allow-exit.php)覆盖此设置| # 函数 [uopz\_add\_function](https://www.php.net/manual/en/function.uopz-add-function.php)—添加不存在的函数或方法 [uopz\_allow\_exit-](https://www.php.net/manual/en/function.uopz-allow-exit.php)允许控制已禁用的退出操作码 [uopz\_backup](https://www.php.net/manual/en/function.uopz-backup.php)—备份功能 [uopz\_compose](https://www.php.net/manual/en/function.uopz-compose.php)—组成一个类 [uopz\_copy](https://www.php.net/manual/en/function.uopz-copy.php)—复制函数 [uopz\_del\_function](https://www.php.net/manual/en/function.uopz-del-function.php)—删除以前添加的函数或方法 [uopz\_delete](https://www.php.net/manual/en/function.uopz-delete.php)—删除函数 [uopz\_extend](https://www.php.net/manual/en/function.uopz-extend.php)—在运行时扩展类 [uopz\_flags](https://www.php.net/manual/en/function.uopz-flags.php)—在函数或类上获取或设置标志 [uopz\_function](https://www.php.net/manual/en/function.uopz-function.php)—在运行时创建一个函数 [uopz\_get\_exit\_status](https://www.php.net/manual/en/function.uopz-get-exit-status.php)—检索上一个设置的退出状态 [uopz\_get\_hook](https://www.php.net/manual/en/function.uopz-get-hook.php)—获取先前设置的函数或方法的挂钩 [uopz\_get\_mock](https://www.php.net/manual/en/function.uopz-get-mock.php)—获取一个类的当前模拟 [uopz\_get\_property](https://www.php.net/manual/en/function.uopz-get-property.php)—获取类或实例属性的值 [uopz\_get\_return](https://www.php.net/manual/en/function.uopz-get-return.php)—获取函数的先前设置的返回值 [uopz\_get\_static](https://www.php.net/manual/en/function.uopz-get-static.php)—从函数或方法范围获取静态变量 [uopz\_implement](https://www.php.net/manual/en/function.uopz-implement.php)—在运行时实现接口 [uopz\_overload](https://www.php.net/manual/en/function.uopz-overload.php)—重载VM操作码 [uopz\_redefine](https://www.php.net/manual/en/function.uopz-redefine.php)—重新定义一个常量 [uopz\_rename](https://www.php.net/manual/en/function.uopz-rename.php)—在运行时重命名函数 [uopz\_restore](https://www.php.net/manual/en/function.uopz-restore.php)—恢复以前备份的功能 [uopz\_set\_hook](https://www.php.net/manual/en/function.uopz-set-hook.php)—设置在输入函数或方法时执行的挂钩 [uopz\_set\_mock](https://www.php.net/manual/en/function.uopz-set-mock.php)—对新对象使用模拟代替类 [uopz\_set\_property](https://www.php.net/manual/en/function.uopz-set-property.php)—设置现有类或实例属性的值 [uopz\_set\_return](https://www.php.net/manual/en/function.uopz-set-return.php)—为现有函数提供返回值 [uopz\_set\_static](https://www.php.net/manual/en/function.uopz-set-static.php)—在函数或方法范围内设置静态变量 [uopz\_undefine](https://www.php.net/manual/en/function.uopz-undefine.php)—[取消](https://www.php.net/manual/en/function.uopz-undefine.php)定义常量 [uopz\_unset\_hook](https://www.php.net/manual/en/function.uopz-unset-hook.php)—删除函数或方法上先前设置的钩子 [uopz\_unset\_mock](https://www.php.net/manual/en/function.uopz-unset-mock.php)—取消设置先前设置的模拟 [uopz\_unset\_return](https://www.php.net/manual/en/function.uopz-unset-return.php)—重置函数的先前设置的返回值