前臺程序不少情況下需要生成.php文件,諸如多用戶的在線日記程序、留言簿以及自助網站程序等等,都不可避免地在與用戶的交互中生成.php程序文件。一般的,所生成的.php文件內容并不復雜,但麻雀雖小五臟俱全,完整的.php文件結構必須得到保證。
一個.php文件,包含程序開始符(<?php)和結束符(?>),具體代碼則放置在開始符和結束符之間。為了方便日后修改和程序讀取,習慣上代碼應當按照一定的規定分行,而php代碼必定少不了變量標記符($)。這些,都給生成.php文件帶來一定的麻煩,處理它們需要一些變通方式。
我們先來處理php程序文件的開始符和結束符,這個不太復雜,我們用兩個變量來表示它們:
$str_tmp="<?php"; //開始符。$str_tmp為即將累加的變量。
$str_end="?>"; //結束符。$str_end為獨立變量。
下面來處理變量標記符($),設我們將在生成的.php文件里存在一個這樣的變量等式:$age="28";。代碼如下:
$str="$"."age=""28"";";
上式里,打印變量 $str 將得到預期的效果。代碼中,$和age要分開并用連接號(.)將其組合才能得到 $age 的效果;符號("")表示小解雙引號(");php代碼一行結束要有分號(;);則表示打個回車另起一行。
以上我們解決了php代碼起始符、結束符及代碼變量標志和等式等輸入問題,現在就可以具體進入生成.php文件的操作了。為了讓程序看起來像個樣子,我們預設一下即將生成的.php文件的內容:用戶名(黑馬)、登錄密碼(blackhorse)、年齡(28)、收入(4500)。以下是生成.php文件的完整代碼:
<?php // -- test.php -- //
//搜集資料
$str_tmp="<?php"; //得到php的起始符。$str_tmp將累加
$str_end="?>"; //php結束符
$str_tmp.="$"."name=""黑馬"";"; //加入用戶名
$str_tmp.="$"."pass=""blackhorse"";"; //加入密碼
$str_tmp.="$"."age=""28"";"; //加入年齡
$str_tmp.="$"."income=""4500"";";
$str_tmp.=$str_end; //加入結束符
//保存文件
$sf="blhorse.php"; //文件名
$fp=fopen($sf,"w"); //寫方式打開文件
fwrite($fp,$str_tmp); //存入內容
fclose($fp); //關閉文件
?>
把上述代碼保存為一個名為 test.php 的文件,運行它,將得到 blhorse.php 文件,該文件的完整內容如下:
<?php
$name="黑馬";
$pass="blackhorse";
$age="28";
$income="4500";
?>
可以看得出來,我們得到的是一個相當標準的.php配置類文件,完全符合我們的要求。至于要寫更復雜的.php文件,只要像本文代碼所顯示的那樣處理好變量的賦值和變量的累加,實現起來就變得相當容易。
新聞熱點
疑難解答