PHP 动态执行

在页面上直接输入代码,点击执行,返回执行结果

方法很简单,主要使用了 $newfunc = create_function('', $code); 函数来实现。

代码如下:

<?php

$code = 'return "no code!";';
if (isset($_POST['code']) && $_POST['code'] != '')
{
$code = $_POST['code'];
}
$newfunc = create_function('', $code);
$res = $newfunc(); ?> <!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>XXX</title>
</head>
<body>
<form action="run.php" method="POST">
<textarea name="code" style="width:100%; height:300px;"><?php echo $code ?></textarea><br>
<input type="submit" value="RUN" />
</form>
<hr>
<div><?php echo $res ?></div>
</body>
</html>

下载:http://files.cnblogs.com/zjfree/php_run.rar

PHP 动态执行的更多相关文章

  1. Javascript动态执行JS(new Function与eval比较)

    new Function与eval可以动态执行JS,只要把拼接好的JS方法,然后以字符串的形式传入到这两个函数,可以执行,其中new Function用在模板引擎比较多. 用 Function 类直接 ...

  2. c# 动态执行脚本,相关的几个脚本引擎.

    Jint   嵌入式的javascript脚本支持引擎,一直都在更新,对各种方法支持也比较好,可以 C# 交互. https://github.com/sebastienros/jint Jurass ...

  3. Oracle动态执行语句

      一.为什么要使用动态执行语句? 由于在PL/SQL 块或者存储过程中只支持DML语句及控制流语句,并不支持DDL语句,所以Oracle动态执行语句便应允而生了.关于DDL与DML的区别,请参见:D ...

  4. Oracle错误:动态执行表不可访问,本会话自动统计被禁止,关闭自动统计之后的问题

    使用PL/SQL时, 每次第一次打开表的时候会提示"动态执行表不可访问,本会话的自动统计被禁止"的错误,一消息如下: V$SESSION,V$SESSTAT,V$STATNAME没 ...

  5. C# 动态执行批处理命令

    本文转载:http://www.cnblogs.com/lenic/p/4097045.html C# 动态执行一系列控制台命令,并允许实时显示出来执行结果时,可以使用下面的函数.可以达到的效果为: ...

  6. PLSQL Developer报“动态执行表不可访问,本会话的自动统计被禁止”的解决方案

    现象与提示: 第一次用PLSQL Developer连接数据库,若用sys用户登录并操作则正常,若用普通用户比如haishu登录并创建一个表则报错"动态执行表不可访问,本会话的自动统计被禁止 ...

  7. Oracl 动态执行表不可访问,本会话的自动统计被禁止

    oracle ---建立SQL窗体 写入 select * from tableA; 弹出错误窗口 : 动态执行表不可访问,本会话的自动统计被禁止.在执行菜单里你可以禁止统计,或在v$session, ...

  8. SQL函数中的动态执行语句

    一.为什么要使用动态执行语句? 由于在PL/SQL 块或者存储过程中只支持DML语句及控制流语句,并不支持DDL语句,所以Oracle动态执行语句便应允而生了.关于DDL与DML的区别,请参见:DDL ...

  9. Oracle\PLSQL Developer报“动态执行表不可访问,本会话的自动统计被禁止”的解决方案

    现象: 第一次用PLSQL Developer连接数据库,若用sys用户登录并操作则正常,若用普通用户比如haishu登录并创建一个表则报错“动态执行表不可访问,本会话的自动统计被禁止.在执行菜单里你 ...

随机推荐

  1. Java 有理数类 分数类 Rational类的设计与实现

    要实现Rational类的加减乘除,要实现其可比较性,要覆盖toString()方法,要实现不同数据类型的转换等. package chapter14; public class Rational e ...

  2. Java 返回一个整数的各个数字之和的一种方法

    public static long sumDigits(long n){ long total=0; long number=n; while(number!=0){ total=total+num ...

  3. sdust 2410 Mine Number

    今天看了3个这种题了  枚举第一行即可 #include<cstdio> #include<cstring> #include<iostream> #include ...

  4. HDU 4311 前缀和

    Description It has been ten years since TJU-ACM established. And in this year all the retired TJU-AC ...

  5. HDU 1024 Max Sum Plus Plus --- dp+滚动数组

    HDU 1024 题目大意:给定m和n以及n个数,求n个数的m个连续子系列的最大值,要求子序列不想交. 解题思路:<1>动态规划,定义状态dp[i][j]表示序列前j个数的i段子序列的值, ...

  6. ntpdate:no server suitable for synchronization found

    Question: 在使用ntpdate同步时间时,出现了no server suitable for synchronization found的报错. 通过ntpdate -d s2m.time. ...

  7. Linux驱动设计——并发与竞态控制

    并发的概念:多个执行单元同时.并行被执行. 共享资源:硬件资源(IO/外设等),软件上的全局变量.静态变量等. 四种并发控制机制(对共享资源互斥的访问):原子操作.自旋锁(spinlock).信号量( ...

  8. [codeforces 391D2]Supercollider

    这题觉得似乎不难的样子…… 但硬是没有做出来,真是不知说什么好喵~ 注意到没有两条共线的线段具有公共点,没有重合的线段 说明每个十字形最多涉及一个水平线段和一个竖直线段 这说明我们可以二分了:每条线段 ...

  9. 黑马程序员——JAVA基础之Map集合

    ------- android培训.java培训.期待与您交流! ---------- Map集合: 该集合存储键值对.一对一对往里存.而且要保证键的唯一性. 和Set很像,其实Set底层就是使用了M ...

  10. caffe: test code 执行出问题: Check failed: FLAGS_weights.size() > 0 (0 vs. 0) Need model weights to score.

    Check failed: FLAGS_weights.size() > 0 (0 vs. 0) Need model weights to score. 出现这个错误,但是我记得昨天还好好的, ...