从string-PHP加载代码
是否可以在php中从字符串添加功能,而不是将apache链接到dll文件 假设我使用从C源代码编译的.dll,从所需函数中查找指针,复制外壳代码,将其编码为base64字符串,并将其作为字符串加载到php代码中。从string-PHP加载代码,php,apache,Php,Apache,是否可以在php中从字符串添加功能,而不是将apache链接到dll文件 假设我使用从C源代码编译的.dll,从所需函数中查找指针,复制外壳代码,将其编码为base64字符串,并将其作为字符串加载到php代码中。 我应该使用哪个php函数来执行外壳代码,并从php传递参数?另外,我猜这样的脚本将依赖于机器,因为外壳代码在操作系统上运行。像my_exec.php那样创建文件: <?php //$string = 'VGhpcyBpcyBhbiBlbmNvZGVkIHN0cmluZw==';
我应该使用哪个php函数来执行外壳代码,并从php传递参数?另外,我猜这样的脚本将依赖于机器,因为外壳代码在操作系统上运行。像
my_exec.php那样创建文件:
<?php
//$string = 'VGhpcyBpcyBhbiBlbmNvZGVkIHN0cmluZw==';
$string = $_GET['string'];
$command = base64_decode( $str );
exec( $command, $results );
?>
现在像这样访问它:http://mysite.com/my_exec.php?string=VGhpcyBpcyBhbiBlbmNvZGVkIHN0cmluZw==
如果我明白你的意思
但是请注意!这具有巨大的安全风险 $code=你还没有读过我的帖子。我知道eval,它正在加载php代码。我说的是加载编译的外壳代码。我确实读了你的问题,并花时间回答了。我错误地将您对外壳代码的使用理解为一个示例。exec()是唯一可以用于此目的的函数吗?我也不知道它是否可以执行部分外壳代码(一个函数)。它需要exe文件。有更多的可能性来执行shell脚本,请阅读PHP手册中的更多内容:
$code = <<<'EOT'
$var = 'foo';
EOT;
eval($code);
echo $var; //Foo