If I have a url that looks like this, what's the best way to read the value
http://www.domain.com/compute?value=2838
I tried parse_url()
but it gives me value=2838
not 2838
Edit: please note I'm talking about a string, not an actual url. I have the url stored in a string.
-
possible duplicate of Getting vars from URLariefbayu– ariefbayu2011年10月15日 05:28:20 +00:00Commented Oct 15, 2011 at 5:28
5 Answers 5
You can use parse_url
and then parse_str
on the query.
<?php
$url = "http://www.domain.com/compute?value=2838";
$query = parse_url($url, PHP_URL_QUERY);
$vars = array();
parse_str($query, $vars);
print_r($vars);
?>
Prints:
Array
(
[value] => 2838
)
For http://www.domain.com/compute?value=2838
you would use $_GET['value']
to return 2838
$uri = parse_url($uri);
parse_str($uri['query'], $params = array());
Be careful if you use parse_str() without a second parameter. This may overwrite variables in your script!
parse_str($url) will give you $value = 2838.
You should use GET method e.g
echo "value = ".$_GET['value'];