多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內(nèi)最全IT社區(qū)平臺 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2
您當前位置:首頁 > php開源 > php教程 > PHP MVC框架 視圖之常用學習筆記

PHP MVC框架 視圖之常用學習筆記

來源:程序員人生   發(fā)布時間:2014-03-01 05:36:28 閱讀次數(shù):3170次

本文章來給大家介紹PHP MVC框架視圖學習筆記,以方便以后需要參考.今天來講講view,視圖...沒了解之前,你可能覺得模板引擎很神奇,了解了之后你會覺得,原來是如此簡單...

對于模板引擎而言,它的原理一般是這樣,把模板引擎的語言替換成可執(zhí)行的語言,然后把變量輸出...因為PHP本身就是一個良好了模板引擎,所以用原生的模板引擎是灰常方便和容易做到的...

index.html實例代碼如下:

  1. <html>    
  2. <head>    
  3.     <title><?php echo $title ?></title>    
  4. </head>    
  5. <body>    
  6. <h1><?php echo $content ?></h1>    
  7.    
  8. <?php if( ! emptyempty($arr)) { ?>    
  9. <ul>    
  10.     <?php foreach($arr as $value) { ?>    
  11.     <li><?php echo $value ?></li>    
  12.     <?php } ?>    
  13. </ul>    
  14. <?php } ?>    
  15.    
  16. </body>    
  17. </html>  

想上面這樣一個html頁面,采用的就是原生的php模板引擎,服務(wù)器在你include這個頁面時,會處理html中的PHP代碼.

你也許會問,要是我想定制模板語言可以嗎?答案當然是可以的,像我上面說的,用模板引擎的語言,只需要多做一步,就是把模板引擎的語言替換成標準的PHP語言...

index_2.html實例代碼如下:

  1. <html>   
  2. <head>   
  3.     <title><?php echo $title ?></title>   
  4. </head>   
  5. <body>   
  6. <h1><?php echo $content ?></h1>   
  7.    
  8. <ifexist arr>   
  9. <ul>   
  10.     <for value = arr>   
  11.     <li><echo value></li>   
  12.     <endfor>   
  13. </ul>   
  14. <endexist>   
  15.    
  16. </body>   
  17. </html>   

看看這個頁面,發(fā)現(xiàn)和index.html 有什么不同嗎,沒錯,就是在循環(huán)那里,我們用的不是標準的php語言,而是,按照自己的喜好,定義了幾個模板語言,一個是<ifexist xxx>這個是判斷xxx變量是否存在,而且不為空,后面那個<for xx1=xx2>是循環(huán)迭代xx2變量,中間的<echo xx> 是輸出xx變量,怎么替換成標準語言呢?這個可以使用正則替換,因為字符串替換無法滿足我們需求了.

實例代碼如下:

  1. $pattern = array(    
  2.     ‘/<ifexists+(w+)>/i’,    
  3.     ‘/<fors+(w+)s=s(w+)>/’,    
  4.     ‘/<echos+(w+)>/’    
  5. );    
  6.    
  7. $replacement = array(    
  8.     ‘<?php if( ! emptyempty($1)){ ?>’,    
  9.     ‘<?php foreach($2 as $1){ ?>’,    
  10.     ‘<?php echo $1 ?>’    
  11. );    
  12.    
  13. $content = preg_replace($pattern$replacement$content);    
  14.    
  15. $search = array(‘<endexist>’, ‘<endfor>’);    
  16.    
  17.    
  18. $content = str_replace($search, ‘<?php } ?>’, $content);   

上面的正則就可以幫我們把剛剛定義的標簽,轉(zhuǎn)換成標準p hp語言...轉(zhuǎn)換之后是這樣,請看圖.

轉(zhuǎn)換之后可以輸出了嗎?答案是不行的,因為你獲取到html文件的內(nèi)容的時候,php就已經(jīng)解釋了,那時候你還沒替換成標準的php語言,所以,你現(xiàn)在輸出的話,其中的php代碼就沒有執(zhí)行...不過我們可以利用 php eval 這個函數(shù),來強制要求執(zhí)行其中的代碼.

實例代碼如下:

  1. $content = eval(‘ ?>’.$content); 

注意哦,要 ?>.$content 要不,php會把其中的html當成是php代碼的執(zhí)行,這樣就會出錯了...刷新一下,ok,已經(jīng)可以執(zhí)行了~~~

生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關(guān)閉
程序員人生
主站蜘蛛池模板: 国产精品午夜在线播放a | 欧美一区二区三区不卡免费 | 亚洲欧美日韩国产色另类 | 欧美一级视频免费看 | 男女激情网站 | 亚洲免费视频一区二区三区 | 在线精品视频成人网 | 婷婷我也去 | 性欧美18一19sex高清 | 在线观看亚洲 | 欧美一区二区三区高清视频 | 日本欧美一级二级三级不卡 | 国产精品成人久久久久 | 亚洲 欧美 国产 制服 动漫 | 欧美精品99久久久久久人 | 97精品伊人久久久大香线蕉 | 国产不卡在线视频 | 日本中文字幕在线看 | 欧美亚洲综合在线 | 国产v亚洲v天堂a无 国产v亚洲v天堂无码 | 午夜影院404 | 伊人色院成人蜜桃视频 | 在线亚洲+欧美+日本专区 | 性久久久久久久久久 | 亚洲精品一区二区观看 | aⅴ天堂网 | 成人性色生活片免费看爆迷你毛片 | 精品三区| 成人精品视频在线观看播放 | 久草午夜 | 韩国午夜理伦三级2020宅男 | 99精品久久秒播无毒不卡 | 国产一区二区三区亚洲欧美 | 一区二区三区四区亚洲 | 欧美一级免费看 | 免费观看成人欧美1314www | 国产精品成人一区二区1 | 久久久久久午夜精品 | 亚洲欧美卡通成人制服动漫 | 国产毛片毛片精品天天看 | 色综合欧美综合天天综合 |