当前位置: 首页 > 图文教程 > 网络编程 > PHP > PHP动态生成switch-PHP的eval()的使用

PHP
PHP删除MYSQL数据库中所有表的代码
php教程:php设计模式介绍之注册模式
php教程:php设计模式介绍之伪对象模式
PHPnow轻松打造专业PHP服务器环境
php教程:php设计模式介绍之策略模式
php教程:php设计模式介绍之迭代器模式
Windows环境下Apache与Tomcat共存
简单学习php遇到的主要问题
php教程:php设计模式介绍之观测模式
php教程:php设计模式介绍之规范模式
php教程:php设计模式介绍之代理模式
php教程:php设计模式介绍之装饰器模式
Perl操作mysql数据库的方法
php教程:php设计模式介绍之适配器模式
PHP单件模式和命令链模式的基础知识
PHP大师指点:优秀的PHP代码怎么来?
PHP开发的Myers 订单跟踪系统 (MOTS)
PHP控制网页过期时间的程序
Cannot modify header information出错的原因
PHP 5.3的date_create_from_format()函数

PHP动态生成switch-PHP的eval()的使用


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 167 ::
收藏到网摘: n/a

下面是PHP中生成的两个switch

以下为引用的内容:

$exec="select name,disname from user ";
$rs=mysql_query($exec);//这是里是得到数据库中的内容.也就是你把你要case有和echo的分别存在两个字段中.下面是动态生成了.

$strw='switch($p){';
$strdis='switch($p){';
while ($row=mysql_fetch_array($rs)){
/*****************************************************************************/
//       This francis hu (HUFEI) add function       //
/*****************************************************************************/

$strw.='case \''.$row[0].'\':';
$strw.='echo \''.$row[1].'\';';
$strw.='break;';
$strdis.='case \''.$row[1].'\':';
$strdis.='echo \''.$row[0].'\';';
$strdis.='break;';
}
$strw.='}';
//echo $strw;
$strdis.='}';
//echo $strdis;

function switchuser($ser){//根据程序用户名得到显视用户名.
$p=$ser;
global $strw;
eval($strw);
}
function switchdisuser($ser){//根据显视用户名得到程序用户名.
$p=$ser;
global $strdis;
eval($strdis);
}