如何创建在线PHP编辑器?

如何创建在线PHP编辑器?,php,editor,Php,Editor,所以我想为浏览器创建一个php编辑器,我需要它,因为有时我会生成一些测试代码,这会让我的计算机变得混乱,我也总是需要删除或管理这些文件,我还想将浏览器分为两个框架,第一个用于php,第二个用于编辑的页面,这样我就可以看到结果,并更快地调试它 但是我真的不知道该怎么做,因为PHP需要执行,它不能像HTML那样保存它。如果这只是供您自己内部使用,您可以始终通过POST接收代码-您只需要将代码作为字符串传递给函数。但是,甚至不要考虑向全世界公开该服务,因为默认情况下,恶意用户几乎可以在服务器上执行所有

所以我想为浏览器创建一个php编辑器,我需要它,因为有时我会生成一些测试代码,这会让我的计算机变得混乱,我也总是需要删除或管理这些文件,我还想将浏览器分为两个框架,第一个用于php,第二个用于编辑的页面,这样我就可以看到结果,并更快地调试它


但是我真的不知道该怎么做,因为PHP需要执行,它不能像HTML那样保存它。

如果这只是供您自己内部使用,您可以始终通过POST接收代码-您只需要将代码作为字符串传递给函数。但是,甚至不要考虑向全世界公开该服务,因为默认情况下,恶意用户几乎可以在服务器上执行所有操作。

如果这只是供您自己内部使用,您可以始终通过POST接收代码-您只需将代码作为字符串传递给函数即可。但是,甚至不要考虑向全世界公开该服务,因为默认情况下,恶意用户几乎可以在服务器上执行所有操作。

我会使用javascript AJAX将您的代码通过POST发送到编写该文件的php页面。每按几次键或按“保存”按钮,就会发生这种情况。
然后,当php文件保存后,只需创建一个回调函数,该函数将启动对php文件的第二个AJAX调用,该文件将包括您刚刚保存的文件。它会将该结果回传给回调javascript函数,该函数将用结果替换页面右侧的div。这也可以是两个单独的页面。您可以将结果显示为一个弹出窗口,如果您愿意,它将保持打开状态。这将是实现此功能的基础。

我将使用javascript AJAX将您的代码通过POST发送到编写该文件的php页面。每按几次键或按“保存”按钮,就会发生这种情况。
然后,当php文件保存后,只需创建一个回调函数,该函数将启动对php文件的第二个AJAX调用,该文件将包括您刚刚保存的文件。它会将该结果回传给回调javascript函数,该函数将用结果替换页面右侧的div。这也可以是两个单独的页面。您可以将结果显示为一个弹出窗口,如果您愿意,它将保持打开状态。这将是这项工作的基础。

每当我需要测试代码片段时,我只需在我的用户目录中使用相同的test.php文件(因为CMD就是从这里开始的,所以我不必导航目录等):

或者只需在PHP cli界面上使用-r参数:

***C:\Users\myuser>php -r*** `for($i=0;$i<10;$i++){ echo ':-)'; }`

***C:\Users\myuser>php-r***`for($i=0;$i每当我需要测试一段代码时,我只需在我的用户目录中使用相同的test.php文件(因为这是CMD启动的地方,所以我不必导航目录等):

或者只需在PHP cli界面上使用-r参数:

***C:\Users\myuser>php -r*** `for($i=0;$i<10;$i++){ echo ':-)'; }`

***C:\Users\myuser>php-r***`for($i=0;$i
opendir()
readdir()
closedir()
fopen()
fwrite()
fclose())
…实现所需功能的最重要功能。编辑器本身只是在目录中显示文件…执行本身可以通过
cURL
或在浏览器中访问文件来完成。问题出在哪里?:)问题是我想在浏览中编写代码,但是感谢您列出的函数,让我检查它们:)从这里开始:@shamittomar link将向您显示位置。一个允许你在线编码的应用程序。@Glycerine,而这正是OP希望通过他的应用程序实现的。为什么要重新发明轮子?:)
opendir()
readdir()
closedir()
fopen()
fwrite()
fclose()
。。。最重要的功能是实现您想要的功能。编辑器本身只是显示目录中的文件。。。执行本身可以通过
cURL
或通过访问浏览器中的文件来完成。问题出在哪里?:)问题是我想在浏览中编写代码,但是感谢您列出的函数,让我检查它们:)从这里开始:@shamittomar link将向您显示位置。一个允许你在线编码的应用程序。@Glycerine,而这正是OP希望通过他的应用程序实现的。为什么要重新发明轮子?:)这将不得不被锁在地狱里,但是是的。或者它可以保存一个文档并将其包含在内。@Orbling如果它只是供其内部使用,则无需锁定任何内容。我的一位老师也建议这样做,以快速测试我们的代码(不是我用它来测试我的代码)@AntonioCS Internal不需要保持内部,我的意思是确保它至少限于本地主机或局域网。eval是邪恶的。应该不惜一切代价避免这种情况。在这种情况下,有选择。@甘油请不要这样说。有许多php应用程序使用eval。例如,许多drupal模块都使用这种方法,比如cck。Eval有它的用途。你只需要小心不要运行第三方提供的代码。这将被锁在地狱里,但是是的。或者它可以保存一个文档并将其包含在内。@Orbling如果它只是供其内部使用,则无需锁定任何内容。我的一位老师也建议这样做,以快速测试我们的代码(不是我用它来测试我的代码)@AntonioCS Internal不需要保持内部,我的意思是确保它至少限于本地主机或局域网。eval是邪恶的。应该不惜一切代价避免这种情况。在这种情况下,有选择。@甘油请不要这样说。有许多php应用程序使用eval。例如,许多drupal模块都使用这种方法,比如cck。Eval有它的用途。您只需小心不要运行第三方提供的代码。