PHP 替换模板变量实现步骤
2015-01-24信息快讯网
PHP 替换模板变量实现步骤分析,大家可以参考下。
1.首先需要打开一个文件.这里用到了PHP ->fopen();函数定义和用法
fopen() 函数打开文件或者 URL。
如果打开失败,本函数返回 FALSE。
函数原型:
fopen(filename,mode,include_path,context)
http://www.jb51.net/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.jb51.net/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.jb51.net/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;
php处理json时中文问题的解决方法
php 面向对象的一个例子
深入理解PHP原理之Session Gc的一个小概率Notice
php表单提交问题的解决方法
使用NetBeans + Xdebug调试PHP程序的方法
PHP中MVC模式的模板引擎开发经验分享
php函数之子字符串替换 str_replace
php模板中出现空行解决方法
PHP中利用substr_replace将指定两位置之间的字符替换为*号
smarty模板嵌套之include与fetch性能测试
php下正则来匹配dede模板标签的代码
利用Memcached在php下实现session机制 替换PHP的原生session支持
php自动获取目录下的模板的代码
php获取当前网址url并替换参数或网址的方法
PHP has encountered an Access Violation at 7C94BD02解决方法
PHP 开源AJAX框架14种
PHP 开源框架22个简单简介
php xml留言板 xml存储数据的简单例子
建站常用13种PHP开源CMS比较
怎样去阅读一份php源代码
Discuz 模板语句分析及知识技巧
谈PHP生成静态页面分析 模板+缓存+写文件
PHP 变量定义和变量替换的方法
php Http_Template_IT类库进行模板替换
简化php模板页面中分页代码的解析
php preg_match_all结合str_replace替换内容中所有img
网友原创的PHP模板类代码
php 全文搜索和替换的实现代码
php str_replace的替换漏洞