生成php程序的php代码

yipeiwu_com6年前PHP代码库
 

一个.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+iFrame实现页面无需刷新的异步文件上传

PHP+iFrame实现页面无需刷新的异步文件上传

本文实例讲述了PHP+iFrame实现页面无需刷新的异步文件上传,是非常实用的常见技巧。分享给大家供大家参考。具体分析如下: 说到iframe,现在用它的人是越来越少了,并且很多人都相信...

PHP实现微信JS-SDK接口选择相册及拍照并上传的方法

PHP实现微信JS-SDK接口选择相册及拍照并上传的方法

本文实例讲述了PHP实现微信JS-SDK接口选择相册及拍照并上传的方法。分享给大家供大家参考,具体如下: 理解:微信上传接口是拍照,或者选择本地照片,上传到微信的服务器,获取到一个id,...

PHP+HTML+JavaScript+Css实现简单爬虫开发

PHP+HTML+JavaScript+Css实现简单爬虫开发

开发一个爬虫,首先你要知道你的这个爬虫是要用来做什么的。我是要用来去不同网站找特定关键字的文章,并获取它的链接,以便我快速阅读。 按照个人习惯,我首先要写一个界面,理清下思路。 &nbs...

PHP反射类ReflectionClass和ReflectionObject的使用方法

PHP中的扩展反射类,该扩展用来分析php程序,导出或提取出关于类、方法、属性、参数等的详细信息,包括注释。看一个这样的问题,php类的成员变量没有在类中声明,而是在函数中声明,有什么不...

PHP实现统计一个数字在排序数组中出现次数的方法

本文实例讲述了PHP实现统计一个数字在排序数组中出现次数的方法。分享给大家供大家参考,具体如下: 题目 统计一个数字在排序数组中出现的次数。 题解 既然是排序数组,使用二分查找是效率最高...