生成php程序的php代码


Posted in PHP onApril 07, 2008

 

一个.php文件,包含程序开始符(),具体代码则放置在开始符和结束符之间。为了方便日后修改和程序读取,习惯上代码应当按照一定的规定分行,而php代码必定少不了变量标记符($)。这些,都给生成.php文件带来一定的麻烦,处理它们需要一些变通方式。

我们先来处理php程序文件的开始符和结束符,这个不太复杂,我们用两个变量来表示它们:

$str_tmp="<?php";  //开始符。$str_tmp为即将累加的变量。
$str_end="?>";     //结束符。$str_end为独立变量。

下面来处理变量标记符($),设我们将在生成的.php文件里存在一个这样的变量等式:$age="28";。代码如下:

$str="$"."age=\"28\";\r\n";

上式里,打印变量 $str 将得到预期的效果。代码中,$和age要分开并用连接号(.)将其组合才能得到 $age 的效果;符号(\")表示小解双引号(");php代码一行结束要有分号(;);\r\n则表示打个回车另起一行。

以上我们解决了php代码起始符、结束符及代码变量标志和等式等输入问题,现在就可以具体进入生成.php文件的操作了。为了让程序看起来像个样子,我们预设一下即将生成的.php文件的内容:用户名(黑马)、登录密码(blackhorse)、年龄(28)、收入(4500)。以下是生成.php文件的完整代码:

<?php // -- test.php -- //

//搜集资料
$str_tmp="<?php\r\n"; //得到php的起始符。$str_tmp将累加
$str_end="?>"; //php结束符
$str_tmp.="$"."name=\"黑马\";\r\n"; //加入用户名
$str_tmp.="$"."pass=\"blackhorse\";\r\n"; //加入密码
$str_tmp.="$"."age=\"28\";\r\n"; //加入年龄
$str_tmp.="$"."income=\"4500\";\r\n";
$str_tmp.=$str_end; //加入结束符

//保存文件
$sf="blhorse.php"; //文件名
$fp=fopen($sf,"w"); //写方式打开文件
fwrite($fp,$str_tmp); //存入内容
fclose($fp); //关闭文件

?>

把上述代码保存为一个名为 test.php 的文件,运行它,将得到 blhorse.php 文件,该文件的完整内容如下:

<?php
$name="黑马";
$pass="blackhorse";
$age="28";
$income="4500";
?>

可以看得出来,我们得到的是一个相当标准的.php配置类文件,完全符合我们的要求。至于要写更复杂的.php文件,只要像本文代码所显示的那样处理好变量的赋值和变量的累加,实现起来就变得相当容易。

PHP 相关文章推荐
php error_log 函数的使用
Apr 13 PHP
单点登录 Ucenter示例分析
Oct 29 PHP
PHP实现绘制3D扇形统计图及图片缩放实例
Oct 01 PHP
php实现的树形结构数据存取类实例
Nov 29 PHP
php实现在多维数组中查找特定value的方法
Jul 29 PHP
通过修改配置真正解决php文件上传大小限制问题(nginx+php)
Sep 23 PHP
WordPress开发中自定义菜单的相关PHP函数使用简介
Jan 05 PHP
thinkPHP线上自动加载异常与修复方法实例分析
Dec 01 PHP
Yii2汉字转拼音类的实例代码
Apr 18 PHP
Thinkphp开发--集成极光推送
Sep 15 PHP
解决laravel查询构造器中的别名问题
Oct 17 PHP
TP5框架实现一次选择多张图片并预览的方法示例
Apr 04 PHP
用php获取远程图片并把它保存到本地的代码
Apr 07 #PHP
在php MYSQL中插入当前时间
Apr 06 #PHP
php读取30天之内的根据算法排序的代码
Apr 06 #PHP
PHP实现Socket服务器的代码
Apr 03 #PHP
mysql+php分页类(已测)
Mar 31 #PHP
PHP 数字左侧自动补0
Mar 31 #PHP
加强版phplib的DB类
Mar 31 #PHP
You might like
PHP开发规范手册之PHP代码规范详解
2011/01/13 PHP
基于递归实现的php树形菜单代码
2014/11/19 PHP
php约瑟夫问题解决关于处死犯人的算法
2015/03/23 PHP
js类的静态属性和实例属性的理解
2009/10/01 Javascript
Extjs 几个方法的讨论
2010/01/28 Javascript
JavaScript面向对象之静态与非静态类
2010/02/03 Javascript
jquery struts 验证唯一标识(公用方法)
2013/03/27 Javascript
javascipt:filter过滤介绍及使用
2014/09/10 Javascript
关于编写性能高效的javascript事件的技术
2014/11/28 Javascript
node.js连接mongoDB数据库 快速搭建自己的web服务
2016/04/17 Javascript
Form表单按回车自动提交表单的实现方法
2016/11/18 Javascript
Js apply方法详解
2017/02/16 Javascript
DataTables添加额外的查询参数和删除columns等无用参数实例
2017/07/04 Javascript
three.js实现3D影院的原理的代码分析
2017/12/18 Javascript
ES6下子组件调用父组件的方法(推荐)
2018/02/23 Javascript
[39:52]2018DOTA2亚洲邀请赛 4.3 突围赛 EG vs Newbee 第一场
2018/04/04 DOTA
python通过自定义isnumber函数判断字符串是否为数字的方法
2015/04/23 Python
深入解析Python中的WSGI接口
2015/05/11 Python
使用Mixin设计模式进行Python编程的方法讲解
2016/06/21 Python
python中获得当前目录和上级目录的实现方法
2017/10/12 Python
Python实现加载及解析properties配置文件的方法
2018/03/29 Python
python图片二值化提高识别率代码实例
2019/08/24 Python
用python打开摄像头并把图像传回qq邮箱(Pyinstaller打包)
2020/05/17 Python
matplotlib grid()设置网格线外观的实现
2021/02/22 Python
html5/css3响应式页面开发总结
2018/10/16 HTML / CSS
经济管理专业毕业生自荐信范文
2014/01/02 职场文书
运动会广播稿50字
2014/01/26 职场文书
党支部公开承诺践诺书
2014/03/28 职场文书
群教个人对照检查材料
2014/08/20 职场文书
社区活动策划方案
2014/08/21 职场文书
教师师德师风个人整改方案
2014/09/18 职场文书
绵山导游词
2015/02/05 职场文书
社会实践活动报告
2015/02/05 职场文书
门店店长岗位职责
2015/04/14 职场文书
党支部培养考察意见
2015/06/02 职场文书
《游戏王:大师决斗》新活动上线 若无符合卡组可免费租用
2022/04/13 其他游戏