首页 > 解决方案 > 在 echo 中运行 php 脚本

问题描述

我们正在开发 CDN 网站,它可以加载的不仅仅是图像,特别是我们希望托管代码并允许它直接在有或没有 php 和其他后端的情况下呈现;但是有一个问题。

在 PHP 中,当我们回显包含自身 php 代码的用户提交的内容时,它会将其打印出来而不是在内部执行什么操作,谁能想到我们可以让 PHP 运行的方法?我们真的什么都想不出来。

也许我们应该生成一个临时文件并将内容放在那里然后使用该require功能?我真的不确定。任何帮助都会很棒。

例如,这里有一些在回答问题时可以使用的演示内容。

用户提交到 CDN

<h1>My Site! :)</h1>
<p>Good morning,</p>
<p><?php
echo $_COOKIE['name'];
?></p>

加载过程

(database code)
$usercontent = $row['sourcecode'];

if($requestedraw) {
   header("content-type: text/json");
   if($runphpinside) {
      (Perhaps a "runphpfirst" function for parsing it?)
      echo runphpfirst($usercontent);
   } else {
      echo $usercontent;
   }
} else {
   header("content-type: text/html");
   echo runphpfirst($usercontent);
}

当前结果 - 来自浏览器

<h1>My Site! :)</h1>
<p>Good morning,</p>
<p><?php
echo $_COOKIE['name'];
?></p>

预期结果 - 来自浏览器

<h1>My Site! :)</h1>
<p>Good morning,</p>
<p>ExampleUsername</p>

〜N。

标签: phphtmlphp-7

解决方案


推荐阅读