3

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.

1

5 Answers 5

6

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
)
Sign up to request clarification or add additional context in comments.

Comments

3

For http://www.domain.com/compute?value=2838 you would use $_GET['value'] to return 2838

Comments

1
$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!

Comments

0

parse_str($url) will give you $value = 2838.

See http://php.net/manual/en/function.parse-str.php

Comments

0

You should use GET method e.g

echo "value = ".$_GET['value'];  

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.