在我公司的網站上,有一些我不明白的代碼。它工作正常。見:可以自動切換參數值嗎?
extract($_REQUEST);
switch(@$task){
//Only for tracker app/ Later move to seperate api///
case "get_all_trackers":
$trackerObj = new trackerClass('trackerClass');
echo $service = $trackerObj->getAllTrackers($_POST);
break;
default:
//dsfsdfdsf
}
現在,你可以看到$任務沒有定義(「根據我」)。但它在某種程度上需要字符串'get_all_trackers'。當我使用PostMan並給出參數task=get_all_trackers
並且它工作時,我開始瞭解這一點。我甚至將$任務的名稱更改爲$ somethingelse,並且它仍然有效。它的價值如何?
['extract()'](http://php.net/extract)發揮了魔力,將REQUEST鍵設置爲變量。因此,爲什麼如果你在Postman中改變'task'的名字並且它仍然可以工作。 '$ task'本質上是'$ _REQUEST ['task']'。 – Darren
好的,但如何更改varialbe的名稱不會影響它?已更改的變量名稱與帖子鍵不同? –
你在改變什麼? – Darren