URL со значением - без параметра?(Получить запрос) - PullRequest
4 голосов
/ 21 сентября 2011

Я могу быть совершенно не в своей тарелке, но я почти уверен, что видел URL-адреса с такой структурой:

http://www.example.com/dir/?=1 без передачи видимого параметра, но с заданным значением.

Если это правильная структура URL, как можно получить значение параметра 1 в PHP?

Ответы [ 4 ]

4 голосов
/ 21 сентября 2011

Это значение не будет доступно через $_GET.Я нашел это только в $_SERVER["QUERY_STRING"] или $_SERVER["REQUEST_URI"].Поэтому я предполагаю, что вы должны проанализировать эти переменные самостоятельно.

3 голосов
/ 21 сентября 2011

Вот быстрая и грязная функция, которую я использую для чтения таких URL

function get_url_params() {
    $param_count = 0;
    $params = array();
    foreach (explode('&', $_SERVER['QUERY_STRING']) as $param) {
        $param = explode('=', $param);

        if ($param[0] == '') {
            $params[$param_count] = $param[1];
        } else {
            $params[$param[0]] = $param[1];
        }

        $param_count++;
    }
    return $params;
}

print_r(get_url_params());
1 голос
/ 21 сентября 2011

вы можете вручную отфильтровать переменную из $_SERVER["QUERY_STRING"] ( документация ), которая должна быть =1 для вашего примера.

0 голосов
/ 21 сентября 2011

Скорее всего, с помощью правила перезаписи файла .htaccess.Это преобразует строку запроса во все ожидаемые сценариями сайты.

Поиск механизма перезаписи, правила перезаписи и / или .htaccess на этом сайте приведет к большому количеству информации по этому вопросу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...