我想在這裏做的是利用PHP的能力來創建和寫入文件,因爲我有350頁使用相同的代碼行相同的行號相差一個。更重要的是通過代碼執行此操作,而不是手動創建350頁!如何在變量中使用函數?
每個文件都是(.php),並以它已經定義的內容的標題命名。但是,因爲這將是到達該頁面的URL,所以我需要格式化標題並使用格式化版本作爲文件名。
這是我的本錢入手:
function seoUrl($string) {
//Make lowercase
$string = strtolower($string);
//Clean up multiple dashes or whitespaces
$string = preg_replace("/[\s-]+/", " ", $string);
//Convert whitespaces and underscore to dash
$string = preg_replace("/[\s_]/", "-", $string);
return $string;
}
我剛纔就在這裏發現了這個功能,它完美地工作了製作網站地圖所有這些頁面。這些網址就像我想要的一樣。但是,當我爲每個標題調用相同的函數時,我遇到了一個障礙。我認爲我有錯碼的地方所以這裏有一塊文件創建代碼:
//Content title to be formatted for the filename
$title1="Capitalized And Spaced Title";
//Formatting
$urlfile1="seoUrl ($title1)";
//Text to be written
$txt1="<?include 'tpl/pages/1.txt'?>";
//And the create/write file code
$createfile1=fopen("$urlfile1.php", "w");
fwrite($createfile1, $txt1);
fclose($createfile1);
代碼插入$ TXT值就好了,這其實是我期待有一個問題。但我創建的文件包括函數名稱和括號,加上標題沒有格式化。
我沒有在網站地圖頁面上這個問題:
$url1="$domainurl/$pathurl/$title1.php";
$url2="$domainurl/$pathurl/$title2.php";
...
seoUrl($url1);
seoUrl($url2);
...
<?echo $url1?><br>
<?echo $url2?><br>
...
我用盡了一切我現在就可以過去幾個小時想。我在這裏做錯了什麼?
請注意如何「調用」'seoUrl'函數以及如何調用其他函數,例如。 'strtolower'。 –