1. PHP / Говнокод #3900

    +154

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    // берет запрос и делает из него массив
    	public function requestUri() {
    		if (isset($_SERVER['REQUEST_URI'])) {
    			$uri = $_SERVER['REQUEST_URI'];
    		}
    		else {
    			if (isset($_SERVER['argv'])) {
    				$uri = $_SERVER['SCRIPT_NAME'] .'?'. $_SERVER['argv'][0];
    			}
    			elseif (isset($_SERVER['QUERY_STRING'])) {
    				$uri = $_SERVER['SCRIPT_NAME'] .'?'. $_SERVER['QUERY_STRING'];
    			}
    			else {
    				$uri = $_SERVER['SCRIPT_NAME'];
    			}
    		}
    		// Prevent multiple slashes to avoid cross site requests via the FAPI.
    		$uri = trim($uri, '/');
    		$arr = explode('/', $uri);
    		$this->queryArr = array();
    		foreach($arr as $val) {
    			$val = trim($val);
    			if($val != '') $this->queryArr[] = $val;
    		}
    
    		return $uri;
    	}

    Такая вот реализация разбора "красивого" uri

    Запостил: rudolff, 07 Августа 2010

    Комментарии (6) RSS

    • строчка 8 - шедевр. я бы не додумался.
      правда пользы от метода ровно столько, сколько от строчки return $_SERVER['REQUEST_URI'];
      Ответить
      • А Вы никогда не слышали о CGI ?
        Ответить
        • и не только слышал. а в данном случае к чему упомянули?
          Ответить
          • REQUEST_URI не передается в скрипт если оный обрабатывается не модулем апача, а cgi версией php, да притом под каким-нибудь другим сервером, например lighttpd
            Ответить
    • Меня одного смутила аббревиатура FAPi?
      Ответить

    Добавить комментарий