一個.php文件,包含程序開始符(),具體代碼則放置在開始符和結束符之間。為了方便日後修改和程序讀取,習慣上代碼應當按照一定的規定分行,而php代碼必定少不了變量標記符($)。這些,都給生成.php文件帶來一定的麻煩,處理它們需要一些變通方式。
我們先來處理php程序文件的開始符和結束符,這個不太復雜,我們用兩個變量來表示它們:
$str_tmp="<?php"; //開始符。$str_tmp為即將累加的變量。
$str_end="?>"; //結束符。$str_end為獨立變量。
下面來處理變量標記符($),設我們將在生成的.php文件裡存在一個這樣的變量等式:$age="28";。代碼如下:
$str="$"."age=\"28\";\r\n";
上式裡,打印變量 $str 將得到預期的效果。代碼中,$和age要分開並用連接號(.)將其組合才能得到 $age 的效果;符號(\")表示小解雙引號(");php代碼一行結束要有分號(;);\r\n則表示打個回車另起一行。
以上我們解決了php代碼起始符、結束符及代碼變量標志和等式等輸入問題,現在就可以具體進入生成.php文件的操作了。為了讓程序看起來像個樣子,我們預設一下即將生成的.php文件的內容:用戶名(黑馬)、登錄密碼(blackhorse)、年齡(28)、收入(4500)。以下是生成.php文件的完整代碼:
<?php // -- test.php -- //
//搜集資料
$str_tmp="<?php\r\n"; //得到php的起始符。$str_tmp將累加
$str_end="?>"; //php結束符
$str_tmp.="$"."name=\"黑馬\";\r\n"; //加入用戶名
$str_tmp.="$"."pass=\"blackhorse\";\r\n"; //加入密碼
$str_tmp.="$"."age=\"28\";\r\n"; //加入年齡
$str_tmp.="$"."income=\"4500\";\r\n";
$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文件,只要像本文代碼所顯示的那樣處理好變量的賦值和變量的累加,實現起來就變得相當容易。