dongtuo6562 2013-10-19 14:03
浏览 24
已采纳

在php扩展中评估php代码

I am writing a php extension( i am newbie) and now i encounter a weird problem:

Is there any way to evaluate php code in string INSIDE a php extension ?

for example bellow if zname would be "echo 'hello';" it will print hello not echo 'hello';

thanks in advance

PHP_FUNCTION(hello_greetme)
{
    zval *zname;

    if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "z", &zname) == FAILURE) {
        RETURN_NULL();
    }

    convert_to_string(zname);
    php_printf("Hello ");
    PHPWRITE(Z_STRVAL_P(zname), Z_STRLEN_P(zname));
    php_printf("
");


    RETURN_TRUE;
}
  • 写回答

1条回答 默认 最新

  • dougou6727 2013-10-19 14:48
    关注
    int eval_php_code(char *code) {
        int ret = 0;
    
        zend_try {
            ret = zend_eval_string(code, NULL, (char *)"" TSRMLS_CC);
        } zend_catch {
    
        } zend_end_try();
    
        return ret == FAILURE;
    }
    

    This should work for you.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 拟通过pc下指令到安卓系统,如果追求响应速度,尽可能无延迟,是不是用安卓模拟器会优于实体的安卓手机?如果是,可以快多少毫秒?
  • ¥20 神经网络Sequential name=sequential, built=False
  • ¥16 Qphython 用xlrd读取excel报错
  • ¥15 单片机学习顺序问题!!
  • ¥15 ikuai客户端多拨vpn,重启总是有个别重拨不上
  • ¥20 关于#anlogic#sdram#的问题,如何解决?(关键词-performance)
  • ¥15 相敏解调 matlab
  • ¥15 求lingo代码和思路
  • ¥15 公交车和无人机协同运输
  • ¥15 stm32代码移植没反应