PHP-X系列教程之内置函数的使用示例
前言
本文主要给大家介绍关于php-x内置函数的使用,在php扩展开发中,会经常用到这些内置函数,php-x的封装,使得调用这些函数像php代码一样简单。
对php-x不熟悉的朋友们可以看下这篇文章:https://segmentfault.com/a/1190000011111074
echo
在扩展中需要输出一些内容,可以使用echo函数。echo的使用方法与c语言的printf是完全一致的。具体请参考printf相关文章。
- 在命令行环境(cli),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()); }
var_dump
开发调试php程序时,经常需要打印一些变量的值。php提供了var_dump函数来打印变量。在php-x中也可以使用var_dump,这个函数接受一个variant对象。
phpx_function(cpp_test) { var_dump(args[0]); }
include
包含php文件。注意:文件不存在会抛出致命错误。正确加载后,此php文件中的代码将被执行。可以使用include在扩展中引入php代码实现的类和函数。
phpx_function(cpp_test) { include("/data/php/library/autoloader.php"); }
error
打印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()); }
constant
获取常量的值。此函数可以用于获取define定义的常量以及const定义的类常量。
phpx_function(cpp_test) { auto a = constant("php_version"); auto b = constant("pdo::version"); }
global
获取全局变量的值。包括php的超全局变量和其他php代码使用global关键词声明的全局变量。
phpx_function(cpp_test) { //相当于 $_get auto a = global("_get"); //相当于 global $config auto b = global("config"); }
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对的支持。
上一篇: 实力买家秀
下一篇: python发送arp欺骗攻击代码分析