Remove Querystring from URL in PHP
In PHP, we often need to work with URLs. Sometimes, we may encounter URLs with unwanted query strings appended to them. To remove the querystring and retain only the base URL, we can employ the strtok() function.
Using strtok()
strtok() is a simple yet effective function that allows you to extract a substring from a string delimited by a given character. In this case, we use it to split the URL by the '?' character.
$url = strtok($_SERVER["REQUEST_URI"], '?');
This code assigns the substring before the first occurrence of '?' to the $url variable. It essentially removes the querystring and leaves you with the base URL.
Other Techniques
While strtok() is the most concise method, there are alternative techniques you could consider:
1. strstr() with True:
$url = strstr($_SERVER["REQUEST_URI"], '?', true);
2. explode() with Limit:
$url = explode('?', $_SERVER["REQUEST_URI"], 2)[0];
3. substr() with strrpos():
$url = substr($_SERVER["REQUEST_URI"], 0, strrpos($_SERVER["REQUEST_URI"], "?"));
However, be cautious when using these alternatives, as they may fail in certain scenarios, such as when the querystring is missing or unexpected characters are present in the URL.
The above is the detailed content of How to Remove Query Strings from URLs in PHP?. For more information, please follow other related articles on the PHP Chinese website!