的說我有一個字符串:PHP移動vaiable子,結束串
something.something/search?&abc=xyz:??????q=hello+there
或 something.something/search?abc=xyz:??????q=hello+there
我需要移動變量子:[&]abc=xyz:??????
刺痛結束。 所以我結束了: something.something/search?q=hello+there&abc=xyz:??????
子字符串是不知道在開始的多長時間。
我們知道子字符串從第一個?
開始並且它可能是&abc=xyz:?????
或abc=xyx:?????
開頭的 。
可能有也可能不是?????
它們的長度不確定。 和內容。 我們知道子字符串在q=......
處結束。 那麼第一個?
到第一個q=
之間的內容會被刪除並添加到字符串中。
然而,該結局必須以&
和1 &
開頭。
所有這些僅適用於包含something.something/search?
的字符串。
子字符串是一個相當多的變量。
我也想知道在我嘗試更改之前是否應該測試某些內容。
感謝
它說,所以這裏去編輯的問題。我想你正在接近。 一個典型的$ url將是: https://www._oogle.com/search?&tbs=qdr:q=hello+there // hello + there only example。 https://www._oogle.com/search?tbs=qdr:q=hello+there //...qdr:null|h|d|w|m|y這是過去的網頁搜索。 (多大)null(全部),小時,星期,星期,月,年。 如果tbs:qdr部分首先出現其他問題,所以我必須在q = ...部分後面移動它 。 當然,要考慮的是http:// varients。
我正在考慮使用一個contains函數來查看這個$ url是否需要這種處理。但是,它需要抓住「_oogle.com/search?& tbs = qdr:」的可能性。 (以&符號開始)[null | &] tbs = qdr:[null | h | d | w | m | y]。我想在「q =」部分之前可能還有其他參數,但稍後可能會擔心。
if (contains($url, "_oogle.com/search?tbs=qdr:"))
function contains($haystack, $needle) {
if(stristr($haystack, $needle) === FALSE) { return false; }
else {return $needle; }
感謝馬克,那會是parse_url或parse_str? – user4245782
我會試一試,讓你知道。 – user4245782
好的,所以我應該使用一個函數作爲一個數組將被使用? – user4245782