本文主要介绍
内置函数的使用,在
- PHP-X
扩展开发中,会经常用到这些内置函数,
- PHP
的封装,使得调用这些函数像
- PHP-X
代码一样简单。
- PHP
会打印屏幕
- echo
或
- php-fpm
中,
- apache
会输出内容到浏览器客户端
- echo
- PHPX_FUNCTION(cpp_test)
- {
- echo("a=%d, b=%f, c=%s.\n", args[0].toInt(), args[1].toFloat(), args[2].toCString());
- }
开发调试
程序时,经常需要打印一些变量的值。
- PHP
提供了
- PHP
函数来打印变量。在
- var_dump
中也可以使用
- PHP-X
,这个函数接受一个
- var_dump
对象。
- Variant
- PHPX_FUNCTION(cpp_test)
- {
- var_dump(args[0]);
- }
包含
文件。注意文件不存在会抛出致命错误。正确加载后,此
- PHP
文件中的代码将被执行。可以使用
- PHP
在扩展中引入
- include
代码实现的类和函数。
- PHP
- PHPX_FUNCTION(cpp_test)
- {
- include("/data/php/library/Autoloader.php");
- }
打印
错误日志,相当于
- PHP
的
- PHP
函数。此函数与
- trigger_error
很相似,唯一不同的插入了第一个参数,来接受错误等级,如
- echo
或
- E_ERROR
。
- E_WARNING
- PHPX_FUNCTION(cpp_test)
- {
- error(E_ERROR, "error: a=%d, b=%f, c=%s.\n", args[0].toInt(), args[1].toFloat(), args[2].toCString());
- }
获取常量的值。此函数可以用于获取
定义的常量以及
- define
定义的类常量。
- const
- PHPX_FUNCTION(cpp_test)
- {
- auto a = constant("PHP_VERSION");
- auto b = constant("PDO::VERSION");
- }
获取全局变量的值。包括
的超全局变量和其他
- PHP
代码使用
- PHP
关键词声明的全局变量。
- global
- PHPX_FUNCTION(cpp_test)
- {
- //相当于 $_GET
- auto a = global("_GET");
- //相当于 global $config
- auto b = global("config");
- }
来源: https://juejin.im/entry/59e4424c51882542310c49dd