开源中文网

您的位置: 首页 > 编程开发 > PHP > PHP程序设计 > 正文

PHP 替换模板变量实现步骤

来源: 网络整理  作者: 佚名

1.首先需要打开一个文件.这里用到了PHP ->fopen();函数 
定义和用法 
fopen() 函数打开文件或者 URL。 
如果打开失败,本函数返回 FALSE。 
函数原型: 
fopen(filename,mode,include_path,context) 
http://www.91linux.com/w3school/php/func_filesystem_fopen.asp.htm 
说明 
fopen() 将 filename 指定的名字资源绑定到一个流上。如果 filename 是 "scheme://..." 的格式,则被当成一个 URL,PHP 将搜索协议处理器(也被称为封装协议)来处理此模式。如果该协议尚未注册封装协议,PHP 将发出一条消息来帮助检查脚本中潜在的问题并将 filename 当成一个普通的文件名继续执行下去。 
如果 PHP 认为 filename 指定的是一个本地文件,将尝试在该文件上打开一个流。该文件必须是 PHP 可以访问的,因此需要确认文件访问权限允许该访问。如果激活了安全模式或者 open_basedir 则会应用进一步的限制。 
如果 PHP 认为 filename 指定的是一个已注册的协议,而该协议被注册为一个网络 URL,PHP 将检查并确认 allow_url_fopen 已被激活。如果关闭了,PHP 将发出一个警告,而 fopen 的调用则失败。 
对 context 的支持是 PHP 5.0.0 添加的。 
提示和注释 
注释:为移植性考虑,强烈建议在用 fopen() 打开文件时总是使用 "b" 标记。 
2.打开这个文件以后,对这个文件进行读取.这里用到了PHP ->fread();函数 
定义和用法 
fread() 函数读取文件(可安全用于二进制文件)。 
函数原型: 
fread(file,length) //备注:我才知道.这个函数获取到的文件是按字节(Byte)来计算文件大小的.... 
http://www.91linux.com/w3school/php/func_filesystem_fread.asp.htm 
说明 
fread() 从文件指针 file 读取最多 length 个字节。该函数在读取完最多 length 个字节数,或到达 EOF 的时候,或(对于网络流)当一个包可用时,或(在打开用户空间流之后)已读取了 8192 个字节时就会停止读取文件,视乎先碰到哪种情况。 
返回所读取的字符串,如果出错返回 false。 
提示和注释 
提示:如果只是想将一个文件的内容读入到一个字符串中,请使用 file_get_contents(),它的性能比 fread() 好得多。 
例子 1 
从文件中读取 10 个字节: 

代码如下:

<?php 
$file = fopen("test.txt","r"); 
fread($file,"10"); 
fclose($file); 
?> 
<?php $file = fopen("test.txt","r"); fread($file,"10"); fclose($file); ?> 

例子 2 
读取整个文件: 
代码如下:

<?php 
$file = fopen("test.txt","r"); 
fread($file,filesize("test.txt")); 
fclose($file); 
?> 
<?php $file = fopen("test.txt","r"); fread($file,filesize("test.txt")); fclose($file); ?> 

3.开始替换模板变量.这里用到了PHP->str_replace();函数 
定义和用法 
str_replace() 函数使用一个字符串替换字符串中的另一些字符。 
函数原型: 
str_replace(find,replace,string,count) 
http://www.91linux.com/w3school/php/func_string_str_replace.asp.htm 
提示和注释 
注释:该函数对大小写敏感。请使用 str_ireplace() 执行对大小写不敏感的搜索。 
注释:该函数是二进制安全的。 
3.替换模板变量后.使用PHP->echo();函数进行输出 
编码部分: 
代码如下:

$title="测试标题"; 
$file="测试内容"; 
//打开这个模板 
$tempdata=fopen("test.html","r"); 
//读取模板中的内容 
$str=fread($tempdata,filesize("test.html")); 
//替换模板中的内容 
$str=str_replace('{$title}',$title,$str); 
$str=str_replace('{$center}',$file,$str); 
//输出 
echo $str; 

Tags:变量 步骤 模板
关于开源中文网 - 联系我们 - 广告服务 - 网站地图 - 版权声明