【问题标题】:I need help for to optimize regular expression我需要帮助来优化正则表达式
【发布时间】:2014-07-23 19:26:30
【问题描述】:

我正在为混淆的 php 项目创建一个脚本。我想重命名变量,我正在尝试但我不能。

例如..

El día $dia me he comprando una $casaca en la tienda;

我想改变这个

El día $wdw_SDw_x me he comprando una $wdw_WsS en la tienda;

我有这个代码

if($v != 'this' && $v != 'GLOBALS' && $v != '_SERVER' && $v != '_GET' && $v != '_POST' && $v != '_FILES' && $v != '_REQUEST' && $v != '_SESSION'
    && $v != '_ENV' && $v != '_COOKIE' && $v != 'php_errormsg' && $v != 'HTTP_RAW_POST_DATA ' && $v != 'http_response_header' && $v != 'argc' && $v != 'argv')
{
    $file_content = preg_replace(('/\W(\$' . $v . ')\W/'), ('$' . '_' . $v), $file_content);
    //$file_content = str_replace('$' . $v, '$' . md5($GLOBALS['key'] . $v), $file_content);
}

它工作正常,但例如我只需要单独更改单词。

"return $this->db->query($sql)->row()->Total == 0 ? true : false;";

但不工作

return$_this->db->query$_sql->row()->Total == 0 ? true : false;

我不想更改预定义的变量,例如:

$GLOBALS、$_SERVER、$_GET、$_POST、$_FILES、$_REQUEST、$_SESSION、$_ENV、$_COOKIE、$php_errormsg、$HTTP_RAW_POST_DATA、$http_response_heade、$argc、$argv

【问题讨论】:

  • 混淆 PHP 项目?出于什么目的?

标签: php regex


【解决方案1】:

你错过了“?”在第二个\W 之后,因为它是可选的。

$file_content = preg_replace(('/\W(\$' . $v . ')\W?/'), ('$' . '_' . $v), $file_content);

【讨论】:

    猜你喜欢
    • 2023-03-17
    • 1970-01-01
    • 2012-11-30
    • 2023-03-19
    • 1970-01-01
    • 1970-01-01
    • 2021-08-29
    • 1970-01-01
    相关资源
    最近更新 更多