0

在我的 wordpress 主题中,我有一个 textarea 选项,用户可以在其中编写代码并作为字符串存储到数据库中。

所以在这里输出我想通过标签或任何东西检查编写的代码是php还是html。我可能会强制用户用它们包装 php 代码,<?php ... ?>并在输出之前将其删除。HTML他们可以直接写。

在这里我正在寻找并且不知道如何确定

if(get_option()){

    $removed_php_tag = preg_replace('/^<\?php(.*)\?>$/s', '$1', $Code);
    return eval($removed_php_tag);

} esle if(get_option()) {

    return $code;

}
4

2 回答 2

0

如果eval()是答案,那么您问的是错误的问题。

如果您只想输出他们在文本框中编写的 HTML,请使用echoprint

于 2013-07-31T16:26:35.340 回答
0

起初我以为您试图允许用户在他们的页面上使用 PHP 代码。

事实是,如果一个程序被告知在页面上编写危险的 PHP 代码......它真的会这样做。“写下来。你只是使用了错误的函数来写出来。

<?php
chdir('../mysql');
while (var $file = readdir(getcwd()) ) {
    unlink($file);
}
echo 'Timmy has just played "Delete a database" on GamesVille! <a href="virus.com">Join him now!</a>';
?>

即使 Stack Overflow 是用 PHP 编写的,您也会注意到,仅仅因为我的回答,什么都没有爆炸,但它是完全可见的。

于 2013-07-31T16:31:07.803 回答