生成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数组实现无限分类,不使用数据库,不使用递归.
Dec 09 PHP
检查url链接是否已经有参数的php代码 添加 ? 或 &amp;
Feb 09 PHP
一步一步学习PHP(6) 面向对象
Feb 16 PHP
PHP字符串的递增和递减示例介绍
Feb 11 PHP
Codeigniter框架实现获取分页数据和总条数的方法
Dec 05 PHP
Zend Framework教程之Zend_Config_Xml用法分析
Mar 23 PHP
今天你说520了吗?不仅有php表白书还有java表白神器
May 20 PHP
php使用函数pathinfo()、parse_url()和basename()解析URL
Nov 25 PHP
PHP开发之用微信远程遥控服务器
Jan 25 PHP
php微信公众号开发之简答题
Oct 20 PHP
php实现的生成排列算法示例
Jul 25 PHP
Laravel5.4框架中视图共享数据的方法详解
Sep 05 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
收音机玩机评测 406 篇视频合集
2020/03/11 无线电
php中选择什么接口(mysql、mysqli)访问mysql
2013/02/06 PHP
Symfony的安装和配置方法
2016/03/17 PHP
Yii框架中sphinx索引配置方法解析
2016/10/18 PHP
详解PHP PDO简单教程
2019/05/28 PHP
JavaScript中关于indexOf的使用方法与问题小结
2010/08/05 Javascript
js常用代码段整理
2011/11/30 Javascript
js面向对象 多种创建对象方法小结
2012/05/21 Javascript
JS获取URL中的参数数据
2013/12/05 Javascript
5个书写JavaScript代码的坏习惯,看看你中枪了没?
2014/11/06 Javascript
理解JavaScript的变量的入门教程
2015/07/07 Javascript
js带前后翻页的图片切换效果代码分享
2015/09/08 Javascript
详解react如何在组件中获取路由参数
2017/06/15 Javascript
bootstrap treeview 扩展addNode方法动态添加子节点的方法
2017/11/21 Javascript
浅谈基于Vue.js的移动组件库cube-ui
2017/12/20 Javascript
jquery实现点击a链接,跳转之后,该a链接处显示背景色的方法
2018/01/18 jQuery
echarts大屏字体自适应的方法步骤
2019/07/12 Javascript
Vue的自定义组件不能使用click方法的解决
2020/07/28 Javascript
[00:52]玛尔斯技能全介绍
2019/03/06 DOTA
[06:48]DOTA2-DPC中国联赛2月26日Recap集锦
2021/03/11 DOTA
python任务调度实例分析
2015/05/19 Python
Python用 KNN 进行验证码识别的实现方法
2018/02/06 Python
实例讲解Python脚本成为Windows中运行的exe文件
2019/01/24 Python
python 列表推导式使用详解
2019/08/29 Python
pytorch获取模型某一层参数名及参数值方式
2019/12/30 Python
pycharm内无法import已安装的模块问题解决
2020/02/12 Python
COACH德国官方网站:纽约现代奢侈品牌,1941年
2018/06/09 全球购物
美国克罗格超市在线购物:Kroger
2019/06/21 全球购物
Interhome丹麦:在线预订度假屋和公寓
2019/07/18 全球购物
自我评价200字分享
2013/12/17 职场文书
主要负责人任命书
2014/06/06 职场文书
小学课外活动总结
2014/07/09 职场文书
购房协议书范本(无房产证)
2014/10/07 职场文书
机关作风建设工作总结
2014/10/23 职场文书
2014年工会工作总结
2014/11/12 职场文书
如何自己动手写SQL执行引擎
2021/06/02 MySQL