搜尋
首頁php教程php手册PHP MVC框架 视图之常用学习笔记

本文章来给大家介绍PHP MVC框架视图学习笔记,以方便以后需要参考.今天来讲讲view,视图...没了解之前,你可能觉得模板引擎很神奇,了解了之后你会觉得,原来是如此简单...

对于模板引擎而言,它的原理一般是这样,把模板引擎的语言替换成可执行的语言,然后把变量输出...因为PHP本身就是一个良好了模板引擎,所以用原生的模板引擎是灰常方便和容易做到的...

index.html实例代码如下:

<html>    
<head>    
<title><?php echo $title ?></title>    
</head>    
<body>    
<h1><?php echo $content ?></h1>    
   
<?php if( ! emptyempty($arr)) {     
<ul>    
<?php foreach($arr as $value) { ?>  
<li><?php echo $value ?></li>    
<?php } ?>
</ul>    
<?php } ?>
   
</body>    
</html>

想上面这样一个html页面,采用的就是原生的php模板引擎,服务器在你include这个页面时,会处理html中的PHP代码.

你也许会问,要是我想定制模板语言可以吗?答案当然是可以的,像我上面说的,用模板引擎的语言,只需要多做一步,就是把模板引擎的语言替换成标准的PHP语言...

index_2.html实例代码如下:

<html>   
<head>   
<title><?php echo $title ?></title>   
</head>   
<body>   
<h1><?php echo $content ?></h1>   
   
<ifexist arr>   
<ul>   
<for value = arr>   
<li><echo value></li>   
<endfor>   
</ul>   
<endexist>   
   
</body>   
</html>

看看这个页面,发现和index.html 有什么不同吗,没错,就是在循环那里,我们用的不是标准的php语言,而是,按照自己的喜好,定义了几个模板语言,一个是这个是判断xxx变量是否存在,而且不为空,后面那个是循环迭代xx2变量,中间的 是输出xx变量,怎么替换成标准语言呢?这个可以使用正则替换,因为字符串替换无法满足我们需求了.

实例代码如下:

$pattern = array(    
&#39;/<ifexists+(\w+)>/i&#39;,    
&#39;/<fors+(\w+)s=s(\w+)>/&#39;,    
&#39;/<echos+(\w+)>/&#39;    
);    
   
$replacement = array(    
&#39;<?php if( ! emptyempty($\1)){ &#39;,    
&#39;<?php foreach($\2 as $\1){ &#39;,    
&#39;<?php echo $\1 &#39;    
);    
   
$content = preg_replace($pattern, $replacement, $content);    
   
$search = array(&#39;<endexist>&#39;, &#39;<endfor>&#39;);    

$content = str_replace($search, &#39;<?php } ?>&#39;, $content);

上面的正则就可以帮我们把刚刚定义的标签,转换成标准p hp语言...转换之后是这样,请看图.

转换之后可以输出了吗?答案是不行的,因为你获取到html文件的内容的时候,php就已经解释了,那时候你还没替换成标准的php语言,所以,你现在输出的话,其中的php代码就没有执行...不过我们可以利用 php eval 这个函数,来强制要求执行其中的代码.

实例代码如下:

$content = eval(&#39; ?>&#39;.$content);

注意哦,要 ?>.$content 要不,php会把其中的html当成是php代码的执行,这样就会出错了...刷新一下,ok,已经可以执行了~~~


本文地址:

转载随意,但请附上文章地址:-)

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器