ÓÃlibTemplateʵÏÖ¾²Ì¬ÍøÒ³µÄÉú³É

5年以前  |  阅读数:1017 次  |  编程语言:PHP 

×÷Õߣºiwind

Ô­À´ÔÚdev-club¢±iµÄһƪÎÄÕ£¬½«ÔoôÓÃÄ£°a´¦Ài³ÌÐoPHPlib ÖеÄtemplate.incʵÏÖ¾²Ì¬ÍøÒ³µÄÉu³É£¬ºÇºÇ£¬¾ÓÈ»±»ÁÐÈe¾«»ª£¬²¢±»¶a¸oÍøվתÔØ£¬ÏeÀ´ÕaÊÇÈÙÐÒ¡£ÆaʵÍøÉÏÕa½ÃaeµÄ¶«Î÷ºÜ¶aÁË£¬ÎÒÉÏ´Ë*¢²¼µÄËuνIAMS( iwind ÎÄÕ¹ÜÀiϵͳ)£¬ÀiÃaeÒ²ÓУ¬ÓÐÐÄÈË¿ÉÒÔ¿´Ò»Ï¡£ÏÂÃaeÎÒÖ»ÊǼoÒªÔÚ×ܽaÒ»´Î¡£

ÏÖÔÚÒ»°a˵Éu³É¾²Ì¬ÍøÒ³µÄ½¨ÓÐÈýÖÖ£¬Ò»¸oÊÇÅaÖÃþÎñÆ÷£¬´o¼Ò¿ÉÒÔµ½http://www.devarticles.com/c/b/PHP/ È¥ÕÒÕÒ¿´£¬¶ÔÓÚÕa¸oºÜ¶aµØ½¶¼Óеġ£ÁiÍaÒ»¸oÊÇÓÃob_º¯Êý¿ØÖÆÊa³o¡£½¨ÈçÏÂ:ÏÈÓÃob_start();´o¿ªÊa³o»º³aÆ÷£¬È»ºoÊǶÔÊý¾ÝµÄÖÎo£¬²Ù×÷µÈµÈ£¬¸u×ÅÓÃob_get_contents();»ñÈ¡»º³aÇøµÄÄÚÈÝ£¬È»ºoÔÙдÈeÎļþ¡£¸u¾ÝÕa¸o²½Öe£¬¿ÉÒÔд³oÒÔϳÌÐo£º
<?php
ob_start();
//Ö÷Ìa²¿
Ö£¬Êý¾Ý²Ù×÷£¬´¦Ài£¬Êa³oµÈµÈ¡£¡£¡£
require¡±global.php¡±;
mysql_connect(¡°localhost¡±,¡±root¡±,¡±¡±);
¡­..
//»ñÈ¡»º³aÇøÄÚÈÝ
$contents=ob_get_contents();
//Èç¹u²»ÏeÊa³oÈκζ«Î÷£¬¿ÉÒÔ¼ÓÉÏÕa¾a
ob_end_clean();
//дÈeÄ¿µÄÎļþ
$fp=@fopen($targetFile,¡±w+¡±) or die(¡°´o¿ªÎļþʱ³o´i¡±);
fwrite($fp,$contents);
?>

ÕaÑu¾Í°ÑÕa¸o¶¯Ì¬Ò³ÃaeµÄÄÚÈÝдÈeÁ˾²Ì¬Ò³Ãae£¬$targetFile.ÏñÓеÄÍøÕ¾Ê×Ò³ÄÚÈݺܶa£¬Òªµ÷ÓÃn¶a¸o²eѯÓi¾aʱ£¬²»Á¶¨Ê±Éu³É¾²Ì¬ÍøÒ³£¬¼È´ouÌa¸ßÁËÃÎÊËٶȣ¬Ò²¼oÇaÁËþÎñÆ÷¸ºµ£¡£

Äa¿ÉÒÔ¿´³oÀ´£¬ÎÒÓÃob_Ö»ÊÇ´¦Àiµ¥¸oÒ³Ãae£¬¶ÔÓÚÅuÁ¿Ð´Èe»o¸uжa¸oÒ³Ãae£¬Õa¸o½¨¾Í²»ÐÐÁË¡£Õa¾ÍÊÇÎÒÒª½²µÄµÚÈýÖÖ½¨£¬ÓÃÄ£°a¡£Ä£°aÊǸoºÃ¶«¶«£¬ÏÖÔÚ´o¼Ò¶¼»o¶a»oÉÙÔÚÓÃËu£¬½¨Òe»¹²»»a¼oµ¥Ä£°a´¦ÀiµÄÍøÓÑ£¬»¨µaʱ¼aȥѧËu£¬Ò»°aµÄÄ£°a´¦Ài³ÌÐo¶¼ºÜ¼oµ¥µÄ¡£ÓÃÄ£°aʵÏÖ¾²Ì¬ÍøÒ³µÄÉu³ÉÊÇdz£¼oµ¥µÄ£¬½¨¾ÍÊÇ»ñÈ¡ÖÎo½a¹u£¬°Ñ*ÖÎo½a¹uдÈeÎļþ¡£ÏÂÃae¾ÍÒÔPHPlibÖеÄtemplate.incÀ´Ì¸Ì¸Èç¹uÓÃÄ£°aÉu³É¾²Ì¬ÍøÒ³¡£

Ò», ÐÞ¸Ätemplate.inc
¼ÓÈeÒÔϵļ¸¸oº¯Êý£º
//½«*ÖÎo½a¹u±£´aeµ½ÎļþÖÐÈ¥
function savetofile ($dir,$varname){
$data=$this->finish($this->get_var($varname));
$fp=fopen($dir,"w+");
fwrite($fp,$data);
}
//Ça³ýÒѸ³ÖµÊý×e
function renew(){
$this->varkeys=array();
$this->varvals=array();
$this->file=array();
}

µÚÒ»¸oº¯ÊýÊǽa¹u±£´aeµ½¾²Ì¬ÎļþÖУ¬µÚ¶þ¸oÊÇ°ÑËuÓеÄÄ£°a*ÖÎo±aÁ¿¶¼ÖÃΪ¿Õ£¬ÒÔÃaÅuÁ¿´¦ÀiʱÏa»¥Ó°Ïi¡£

¶þ£¬ÊµÏÖ¾²Ì¬ÍøÒ³Éu³É¡£
<?php
$itpl->set_file(¡°main¡±,¡±mian.tpl¡±);
//ÖÎoÄ£°a±aÁ¿
¡­..
//
ÖÎomainmains
$tpl->parse("mains","main");
//°Ñ*ÖÎo½a¹umains´aeÈemain.html
$tpl->savetofile("main.html","mains");
//ÖÿÕ
$tpl->renew();//ÖÁ¹ØÖØÒª
?>

ºÇºÇ£¬ÊDz»ÊǺܼoµ¥£¬main.html¾ÍÊÇÎÒÃÇÒªµÄÄÚÈÝ¡£ÏÂÃaeÊÇÒ»¸o½aºÏÊý¾Ý¿aµÄÀý×Ó£¬²¢Óú¯Êýa×°ÁËÆðÀ´¡£
<?php
//$aidÊÇÊý¾Ý¿aÖеÄÎÄÕÂid,$tableÊDZiÃu³Æ,$templateÊÇÄ£°aµØÖ
,$tplÊÇtemplate.incµÄÒ»¸oʵÀý
//ÿһ¸oaid¶ÔÓ¦Ò»¸o¾²Ì¬ÍøÒ³µØÖ£¬¶¼´aeÔÚÒ»¸oÊý¾Ý±iÖÐ
//±iµÄ½a¹¹ÀaËÆÓÚ aid target title
// 1 a1.html ¡­.
// 2 a2.html ¡­.
// 3 a3.html ¡­.
function staticInfo($aid){
global $table,$template,$tpl;
//²eѯÊý¾Ý¿a
$res=mysql_query(¡°select
from $table where aid='$aid'¡±);
//È¡³oÊý¾Ý
$array=mysql_fetch_array($res);
//¶Á¾²Ì¬ÍøÒ³µØÖ£¬±eÌa¡£
$target=$array[¡°target¡±];
$title=$array[¡°title¡±];
//
ÖÎoÄ£°a
$tpl->set_file(¡°main¡±,$template);
//°ÑÄ£°aÖеÄ{title}±aÁ¿»»³É$title
$itpl->set_var(¡°title¡±,$title¡±);
//*ÖÎoÕu¸oÄ£°a
$itpl->set_var(¡°mains¡±,¡±main¡±);
//°ÑmainsдÈeÎļþ
$tpl->savetofile($target,"mains");
//ÖÿÕ
$tpl->renew();
}
?>

ÕaÑuÎÒÃǾͿÉÒÔÓú¯ÊýstaticInfo()°ÑÎÒÃÇÏeÒª´¦ÀiµÄÈÎһƪÎÄÕ¶¼Éu³É¾²Ì¬ÍøÒ³¡£±i$targetÀiÒ²¿ÉÒÔ°uº¬ÎÄÕÂÄÚÈÝ£¬×÷Õߣ¬À´Ô´µÈµÈ£¬½¨ÊÇÒ»ÑuµÄ¡£

Èý£¬¸uо²Ì¬ÍøÒ³
һƪÎÄÕ¼ÓÈeÊý¾Ý¿aºo£¬ÓÉÓÚÒ»Ð(C)Ô­ÒoÎÒÃÇ×ÜÒªÐÞ¸ÄÒ»Ð(C)ÎÄÕ¡£Õaʱºo£¬Ö»Òª°ÑÏaÓ¦µÄ¾²Ì¬ÍøÒ³ÖØÐÂÉu³ÉÒ»´Î¼´¿É¡£ÕaÊÇdz£½±aµÄ£¬ÒoΪ±iÖÐÒѾ­ÓÐÁ˾²Ì¬ÍøÒ³µÄÄ¿±eµØÖ*target×ֶΡ£

¿ÉÒÔ¿´³o¹Ø¼uËuÔÚ£¬Ò»ÆªÎÄÕÂÉu³É¾²Ì¬ÍøÒ³µÄ¹Ø¼uËuÔÚ¾ÍÊÇ$template£¨Ä£°aµØÖ£(C)£¬$target(Ä¿±eµØÖ)¡£Ç°Õߣ¬ÎÒÃÇ¿ÉÒÔÏÈȶ¨£¬ºoÕß¿ÉÒÔÓÉÄaËaeÐÄËuÓuµÄΪÿƪÎÄÕÂÉeÖÃÒ»¸oµØÖ¡£³£ÓõÄÓÐ1,ʱ¼a´Á 2,ʱÖÃe 3,¸u¾ÝÎÄÕÂid¡£ÒoΪÕaÐ(C)Öظ´µÄ»u»a»adz£Ð¡µÄ¡£

ËÄ£¬ÅuÁ¿Éu³É¾²Ì¬ÍøÒ³.
ÓÐÁ˵¥¸oÎÄÕÂÉu³ÉµÄ¾²Ì¬ÍøÒ³µÄº¯ÊýÁË£¬ÄÇôÅuÁ¿Éu³ÉÊÇdz£¼oµ¥µÄ¡£¾ÍÊÇ»ñÈ¡ËuÓеÄÎÄÕÂaid,È»ºoÌ×Èeº¯Êý¼´¿É¡£
<?php
//ÒýÓÃÄ£°aÀa
require¡±template.inc¡±;
//ÒýÈeº¯Êý
require¡±functions.php¡±;
//Ò»Ð(C)±aÁ¿µÄ¶¨Òa
$table=¡±art¡±;
$template=¡±template/info.tpl¡±;
$tpl=new Template(¡°.¡±);
//Á¬½Ómysql£¬Ñ¡ÔñÊý¾Ý¿a
mysql_connect(¡°localhost¡±,¡±root',¡±¡±);
mysql_select_db(¡°article¡±);
//
¢ËͲeѯÓi¾a
$res=mysql_query(¡°select aid from $table¡±);
while($r=mysql_fetch_array($res)){
$aid=$r[¡°aid¡±];
//Éu³É¾²Ì¬ÍøÒ³
staticInfo($aid);
}
//½aÊø
echo¡±ËuÓо²Ì¬ÍøÒ³¸uÐÂ/Éu³É³É¹¦¡±;
?>

ÉÏÃae¾ÍÊÇÍeÕuµÄÀý×Ó¡£ÎÒÃÇ×ocmsµÄÁ÷³Ì¿ÉÒÔÈçÏÂ:
1,¼ÇÕߢ¸a(°Ñ¸a¼þÄÚÈÝÅÈeÊý¾Ý¿a)
2,±a¼­Éo²e(Èç¹uËuÈÏΪ¿ÉÒÔ*¢²¼£¬ÄÇô¾Í¿ÉÒÔ°ÑÕaÐ(C)ÄÚÈÝÉu³É¾²Ì¬ÍøÒ³)
3,Í˻ظa¼þ(°ÑÉu³ÉµÄ¾²Ì¬Íøҳɾ³ý£¬°ÑÊý¾Ý¿aÖеÄÄÚÈÝɾ³ý)

È»ºo£¬ÎÒÃÇÃÎʵ½µÄÍøÕ¾ÄÚÈݾͶ¼ÊǾ²Ì¬µÄÁË¡£Ò»¸oÎÊÌa¾ÍÊÇ£¬ÕaÖÖ½¨»a²»»aÕ¼Óúܶa¿Õ¼aÄÚ£¿http://www.knowsky.com ÓÐÉÏǧƪÎÄÕÂÁË£¬Ö»Õ¼ÓÃÁË20M¿Õ¼a¡£´¹ýÀ´Ëµ£¬Èç¹uÄaÓÐ10000ƪÎÄÕµĻ°£¬Äa²»»aÁßØĵ½Ö»Âo200MµÄ¿Õ¼a°É?

»oÐiÄa¶ÔÉu³É¾²Ì¬µÄÎÄÕÂÁбi¸Ðµ½À§»o£¬Æaʵ½¨ÊÇÒ»ÑuµÄ£¬¾ÍÊÇ ¼ÆËaÒ³Âe ÖÎoÿ¸oÒ³ÂeµÄÄÚÈÝ  дÈeÎļþ¡£ ÖÎoÿ¸oÒ³ÂeµÄÄÚÈÝ£¬µ±È»ÊÇд¸oº¯Êý¿(C)£¬Èç¹uÄaÒ»Ò³Ò»Ò³µÄÉu³É£¬¿Öű»È˳°Ð¦ ^_^¡£

¾²Ì¬ÍøÒ³²»½o½oÊÇ¿ÉÒÔ¼oÇaþÎñÆ÷¸ºµ££¬Ìa¸ßÃÎÊËٶȣ¬Ò²¿ÉÒÔ½±aµØ×o¾µÏñÍøÕ¾£¬½±aµØ±¸Ý£¬¼oÉÙ±»¹¥»÷Ëðʧ³Ì¶È£¬¼Ó¿i»¹Ô­Ëٶȡ£µ±È»¾²Ì¬ÍøÒ³Ò²»a¸ø´o¼Ò´øÀ´Öi¶a²»±aµÄµØ½£¬ÄaÐeÒªÔÚ¶¯Ì¬ºÍ¾²Ì¬Ö®¼a×o³oƽºa£¬Ò²¿ÉÒÔÔÚ¾²Ì¬ÍøÒ³ÖмÓÈejsµ÷ÓõÄphp´uÂe£¬À´´iµ½¼ÆÊý£¬¼´Ê±¸uеÈÄ¿µÄ¡££¨Íe£(C)

 相关文章:
PHP分页显示制作详细讲解
SSH 登录失败:Host key verification failed
获取IMSI
将二进制数据转为16进制以便显示
获取IMEI
文件下载
贪吃蛇
双位运算符
PHP自定义函数获取搜索引擎来源关键字的方法
Java生成UUID
发送邮件
年的日历图
提取后缀名
在Zeus Web Server中安装PHP语言支持
让你成为最历害的git提交人
Yii2汉字转拼音类的实例代码
再谈PHP中单双引号的区别详解
指定应用ID以获取对应的应用名称
Python 2与Python 3版本和编码的对比
php封装的page分页类完整实例