[PHP]$_SERVER['PHP_SELF']的使用

有時候在執行PHP的時候我們需要得到現在正在執行的程式所在的位置和名稱時
就會使用到$_SERVER['PHP_SELF']方法
$_SERVER 的參數使用非常廣泛,尤其是牽涉到各種伺服器事件的時候
和靜態網站不同,動態網站上常常會和伺服器端索取一些資訊
例如本篇的$_SERVER['PHP_SELF']

$_SERVER['PHP_SELF']
主要就是找出正在執行的檔案在伺服器下面的位置
以本機環境做說明的話就是找出文件在localhost下面的位置

這類應用非常廣泛,例如在form表單傳遞資料的時候
以往都必須給一個action參數設定位置,就會造成頁面跳轉然後顯示結果
如果我們把參數設定成一個php程式碼段定位到$_SERVER["PHP_SELF"]
<form method="POST" action="<?php echo $_SERVER["PHP_SELF"];?>">

於是我們POST出去的值就會回到同一個檔案上
相關範例依然在 github 上,下載php_self.php執行檔案便可以測試效果

可以發現我們填入的內容按下送出後直接在下方接收並且顯示出來了!
一開始看到這個用法我還以為這是什麼巫術,為什麼action會是這樣奇怪的東西
深深地感覺到自己還有很多不足的地方,30個小時的課程只有引導入門而已

留言