找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 366|回复: 0
打印 上一主题 下一主题

PHP-X系列教程之内置函数的使用示例

[复制链接]

2647

主题

2647

帖子

7881

积分

论坛元老

Rank: 8Rank: 8

积分
7881
跳转到指定楼层
楼主
发表于 2018-2-14 05:22:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

            前言
本文主要给大家介绍关于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("HP_VERSION");
    auto b = constant("DO::VERSION");
    }
    global
    获取全局变量的值。包括PHP的超全局变量和其他PHP代码使用global关键词声明的全局变量。
    PHPX_FUNCTION(cpp_test)
    {
    //相当于 $_GET
    auto a = global("_GET");
    //相当于 global $config
    auto b = global("config");
    }
    总结
    以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。
                
                
            
  • 分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    用户反馈
    客户端