[英]Better way to do this in PHP
我目前將我的htaccess文件設置為刪除文件類型
www.example.com/home.php
會成為,
www.example.com/home
我需要將url與我保存在數據庫中的url進行比較,我這樣做,
if ($_SERVER['QUERY_STRING']) {
$pageURL = str_replace('.php', '?', 'http://' . $_SERVER['SERVER_NAME'] . $_SERVER['PHP_SELF'] . $_SERVER['QUERY_STRING']);
}
else {
$pageURL = substr('http://' . $_SERVER['SERVER_NAME'] . $_SERVER['PHP_SELF'], 0, -4);
}
當我將url保存在數據庫中時,它會在htaccess文件刪除.php后保存為當前頁面url,使用jquery ajax插入。
當我來比較它時,我需要這個在php中匹配,因為php沒有考慮到htaccess的變化。
有一個更好的方法嗎?
你可以做:
$pageURL = rtrim($_SERVER['REQUEST_URI'], '.php');
只要它出現在網址的末尾,這將為您的網址刪除.php
。
查看parse_url()
函數。 您可以使用它將URL解析為部分,然后修改路徑組件(例如,刪除.php)。 然后,您可以使用http_build_url()
函數從這些部分重建URL。
在我看來,結合John的使用parse_url()
以及使用pathinfo()的建議將是最好的 - 修剪,使用substr的截斷等並不總是像pathinfo()
那樣優雅。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.