国产午夜成人免费看片无遮挡_日本免费xxxx色视频_免费人成网上在线观看_黄网址在线永久免费观看

當前位置:雨林木風下載站 > 技術開發教程 > 詳細頁面

如何使php文件與html碼更好的分離--eval函數的用法

如何使php文件與html碼更好的分離--eval函數的用法

更新時間:2022-05-06 文章作者:未知 信息來源:網絡 閱讀次數:

如何使php文件與html碼更好的分離
 ------eval函數的用法
 
大家都知道,php是一種服務器端的內嵌html式的腳本編程語言.可是按照內嵌html
方式來作一網站的話,代碼很快就變得龐大而且不可控制.如何才能使php代碼與html
分離,做出類似dw的lib(模板)而使得頁面更加容易修改并且代碼容易維護呢?
后來,看了很多文章,說phplib可以實現,隨手看了幾頁,覺得頭暈腦漲,頓時沒有了看
下去的欲望(那位大蝦如果有此心得,敬請不吝賜教,先行謝過!).可是問題還得解決,在
郁悶了多日之后,一次偶然機會,得以下載vbb論壇的源碼,粗粗看過之后,發現除了php
文件外,很少看見html碼.心想這不就是我想要的樣式嗎,看吧.依然頭暈腦漲:(,唯一的
收獲是知道了它把html碼放在數據庫里,通過php文件調用,經過一系列處理后,用eval函數
將希望的變量帶入生成所需要的動態頁.這樣,我就沒再看vbb源碼,而轉入eval函數了.
星空浪子的php中文手冊是這樣介紹eval函數的:

函式:eval()

雜項函式庫

eval
將值代入字串之中。

語法: void eval(string code_str);

傳回值: 無

函式種類: 資料處理


內容說明

本函式可將字串之中的變數值代入,通常用在處理資料庫的資料上。參數 code_str
為欲處理的字串。值得注意的是待處理的字串要符合 PHP 的字串格式,同時在結尾
處要有分號。使用本函式處理后的字串會沿續到 PHP 程式結束。

使用范例

<?php
$string = '杯子';
$name = '咖啡';
$str = '這個 $string 中裝有 $name.<br>';
echo $str;
eval( "\$str = \"$str\";" );
echo $str;
?>

本例的傳回值為

這個 $string 中裝有 $name.
這個 杯子 中裝有 咖啡.


例子測試沒有任何問題.可是,當我測試如下代碼時,卻出現了錯誤:
<?
$aa='my name is yyy!';
$str='<input type="text" name="textfield" value="$aa">';
eval( "\$str = \"$str\";" );
echo $str;
?>
百思不得其解后,在chainasp上求救,在網友提出的一系列解決方案
中,終于以這種方式運行成功:
<?
$aa='my name is yyy!';
$str='<input type="text" name="textfield" value="\'$aa\'">';
eval( "\$str = \"$str\";" );
echo $str;
?>

可是,當我把$str 插入如下一個表中然后又提取出時,又出錯了,簡直惱火
死了.

數據庫 evaltest
# 表結構 'envtest'

CREATE TABLE envtest (
 id tinyint(4) NOT NULL auto_increment,
 sour mediumtext,
 PRIMARY KEY (id),
 UNIQUE id (id),
 KEY id_2 (id)
);

#表內容 'envtest'
INSERT INTO envtest VALUES( '1', '<input type=\"text\" name=\"textfield\" value=\"$aa\">');

php文件如下:
<?
$aa='mynameis yyy!';
$conn=mysql_connect('localhost','root','');
$sele='select sour from envtest where id=1';
$res=mysql_db_query('evaltest',$sele);
$arra=mysql_fetch_array($res);
$str=$arra['sour'];
eval( "echo\"$str\";" );
?>
再看看星空浪子的php中文手冊,發現這么一句話:"待處理的字串要符合 PHP 的字串格式",什么叫
"符合 PHP 的字串格式"(有誰知道,麻煩告訴一聲)?我不知道,也無從查找,只好看看字串處理函數.
發現htmlspecialchars()好像可用,于是試了一把:
<?
$aa='mynameis yyy!';
$conn=mysql_connect('localhost','root','');
$sele='select sour from envtest where id=1';
$res=mysql_db_query('evaltest',$sele);
$arra=mysql_fetch_array($res);
$str=htmlspecialchars($arra['sour']);
eval( "echo\"$str\";" );
?>
可是在頁面上顯示是這樣的:
<input type="text" name="textfield" value="mynameis yyy!">
變量帶入成功,可顯示不符合要求.察看文件源碼,內容如下:
<input type="text" name="textfield" value="my &bsp name &bsp is yyy!">
再看看手冊的htmlspecialchars()的用法,發現此函數對字串作了如下操作:
& (和) 轉成 &
" (雙引號) 轉成 "
< (小于) 轉成 <
> (大于) 轉成 >
再查找,沒發現與此函數作用相反的函數,于是,自己加了幾行代碼,再作如下調試,終于成功.
<?php
function dehtml($str){
 $str=str_replace('"','"',$str);
 $str=str_replace('<','<',$str);
 $str=str_replace('>','>',$str);
 $str=str_replace('&','&',$str); 
return $str;

$aa='my nameis yyy!';
$conn=mysql_connect('localhost','root','');
$sele='select sour from envtest where id=1';
$res=mysql_db_query('evaltest',$sele);
$arra=mysql_fetch_array($res);
$str=HTMLSpecialChars($arra['sour']);
eval( "echodehtml(\"$str\");" );
?>
在這個代碼調試成功后,我又把一個內容復雜的html頁面的源碼加入一變量后插入到evaltest表中,
再次測試,也成功了.
有關eval函數用法里的"待處理的字串要符合 PHP 的字串格式",我想是經過
HTMLSpecialChars()函數處理過的字串吧,不知正確與否,有待方家斧正.

以上方法敬請各位網友測試,如果發現有什么錯誤或者有比這更好的解決方法,請告我一聲,我的郵件
地址為:chensiping@263.net


溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

国产午夜成人免费看片无遮挡_日本免费xxxx色视频_免费人成网上在线观看_黄网址在线永久免费观看

  • <label id="pxtpz"><meter id="pxtpz"></meter></label>
      1. <span id="pxtpz"><optgroup id="pxtpz"></optgroup></span>

        久久免费国产精品| 在线观看亚洲精品| 麻豆久久久久久久| 欧美精品 国产精品| 一区二区中文字幕在线| 激情都市一区二区| 久久人人爽人人爽| 久久99这里只有精品| 精品久久久久久综合日本欧美| 精品一区二区免费在线观看| 欧美成人vr18sexvr| 国产一区二区三区高清播放| 久久久精品黄色| 99国产精品国产精品久久| 一二三区精品福利视频| 欧美日韩一区在线观看| 另类小说一区二区三区| 亚洲欧洲av在线| 欧美人xxxx| 成人成人成人在线视频| 亚洲国产欧美在线人成| 国产无一区二区| 欧美日韩一区在线观看| 国产一区在线不卡| 亚洲一区二区欧美日韩| 久久久久久久国产精品影院| 制服丝袜中文字幕一区| 一本色道久久综合精品竹菊| 国产福利一区在线| 婷婷综合在线观看| 日韩黄色免费电影| 日韩高清在线一区| 视频一区二区欧美| 亚洲综合成人在线视频| 一区二区三区欧美| 亚洲欧美偷拍卡通变态| 国产精品视频免费| 亚洲裸体在线观看| 亚洲妇熟xx妇色黄| 麻豆精品在线观看| 国产成人av影院| 夫妻av一区二区| 国产精品亚洲第一| 丁香六月综合激情| 国产精品 欧美精品| 国产91精品欧美| 欧美日韩国产经典色站一区二区三区 | 欧美一区二区免费观在线| 欧美三级资源在线| 欧美一区二区三区小说| 欧美不卡一区二区三区| 国产欧美精品区一区二区三区| 久久久综合精品| 最新国产精品久久精品| 久久国产剧场电影| 97久久超碰国产精品| 日韩午夜在线观看视频| 亚洲欧美日韩综合aⅴ视频| 美女高潮久久久| 成a人片亚洲日本久久| 欧美久久一区二区| 亚洲精品你懂的| 91免费精品国自产拍在线不卡| 欧美日韩激情在线| 国产精品欧美经典| 成人免费视频caoporn| 久久久影视传媒| 另类中文字幕网| 欧美日韩成人一区二区| 国产精品国产自产拍高清av王其| 久热成人在线视频| 777精品伊人久久久久大香线蕉| 国产精品视频看| 成人免费看视频| 国产精品国产三级国产专播品爱网 | 99久久精品免费看国产| 久久久高清一区二区三区| 国产成a人无v码亚洲福利| 久久精品视频免费观看| 国产成人精品午夜视频免费| 日韩欧美一卡二卡| 国产成人在线看| 国产精品夫妻自拍| 91啦中文在线观看| 日本不卡的三区四区五区| 91精品国产麻豆国产自产在线 | 日韩欧美一区二区不卡| 美腿丝袜亚洲色图| 国产精品日产欧美久久久久| 91免费视频大全| 日韩电影在线观看一区| 国产欧美一区二区三区沐欲| 欧美亚洲日本一区| 国产aⅴ综合色| 男人的天堂久久精品| 国产精品久久毛片a| 欧美精品三级在线观看| www.av精品| 另类小说一区二区三区| 亚洲主播在线播放| 中文字幕免费不卡| 精品国产乱码久久久久久久久| 99久久婷婷国产综合精品电影| 韩国欧美一区二区| 日韩精品视频网| 婷婷开心激情综合| 亚洲成av人片| 亚洲一区二区高清| 亚洲欧美日韩在线播放| 国产欧美一区二区在线| 亚洲精品一区在线观看| 精品国产乱码久久久久久久久 | 日韩高清欧美激情| 亚洲电影欧美电影有声小说| 亚洲欧洲三级电影| 成人欧美一区二区三区1314| 欧美高清在线精品一区| 亚洲欧洲日韩av| 亚洲精品日产精品乱码不卡| 欧美国产激情一区二区三区蜜月| 日韩欧美国产不卡| 中文字幕欧美日本乱码一线二线| 日韩毛片精品高清免费| 一区二区三区四区激情| 一区二区不卡在线播放 | 国产麻豆成人传媒免费观看| 国产剧情一区二区三区| 色哟哟日韩精品| 欧美xingq一区二区| 久久久精品日韩欧美| 一区二区三区在线观看动漫| 亚洲成av人影院| 成人免费观看av| 91精品欧美久久久久久动漫| 欧美激情一区二区三区蜜桃视频 | 亚洲欧美日韩国产综合| 激情文学综合插| 欧美视频日韩视频在线观看| 欧美一区二区高清| 一区二区不卡在线播放 | 久久精品国产一区二区三 | 亚洲sss视频在线视频| 九色综合国产一区二区三区| 欧洲生活片亚洲生活在线观看| 欧美日韩国产片| 亚洲精品写真福利| www.66久久| 国产无人区一区二区三区| 麻豆成人久久精品二区三区小说| 欧美在线三级电影| 亚洲国产综合人成综合网站| 一本色道久久加勒比精品| 国产精品家庭影院| 91视频在线观看| 一区二区三区在线视频播放| 91浏览器在线视频| 亚洲国产一区二区三区青草影视| 91福利社在线观看| 天堂成人国产精品一区| 精品国产一区久久| 成人性生交大合| 亚洲国产中文字幕在线视频综合| 日韩三级精品电影久久久 | 欧美亚洲图片小说| 激情综合网最新| 夜夜嗨av一区二区三区| 欧美一区二区三区电影| 成人18精品视频| 激情另类小说区图片区视频区| 亚洲国产高清aⅴ视频| 91网站在线播放| 国产综合久久久久影院| 日韩高清欧美激情| 亚洲国产一区二区在线播放| 中文字幕欧美国产| 亚洲精品一区二区三区福利| a亚洲天堂av| 国产成人av资源| 国内精品久久久久影院薰衣草| 亚洲福利电影网| 亚洲自拍偷拍综合| 一个色妞综合视频在线观看| 国产精品家庭影院| 中文字幕va一区二区三区| 久久亚洲综合色一区二区三区| 4438x成人网最大色成网站| 日本福利一区二区| 一本色道a无线码一区v| 成人黄页毛片网站| 福利一区二区在线| 波多野结衣在线一区| 久久电影网站中文字幕| 奇米一区二区三区av| 日韩黄色片在线观看| 欧美精品一二三四| 欧美一级搡bbbb搡bbbb| 日韩一级片在线播放| 日韩精品中文字幕在线不卡尤物| 欧美一级精品大片| 一区在线观看免费|