<?php
$data = array('foo'=>'bar',
'baz'=>'boom',
'cow'=>'milk',
'php'=>'hypertext processor');
echo uri_appendQuery('http://domena/cesta/subor?query-string', $data), PHP_EOL;
echo uri_appendQuery('http://domena/cesta/?query-string', $data), PHP_EOL;
echo uri_appendQuery('http://domena/cesta/subor?', $data), PHP_EOL;
echo uri_appendQuery('http://domena/cesta/subor', $data), PHP_EOL;
echo uri_appendQuery('http://domena/cesta/subor?query-string', $data, TRUE), PHP_EOL;
/**
* Doplní k URL adrese zadané parametre za otáznikom.
*
* @param string URL adresa
* @param array [názov parametru => hodnota]
* @param bool ak je TRUE, nahradia sa všetky & v adrese za &
* @return string patrične upravenú URL adresu
*/
function uri_appendQuery($uri, array $args, $html = FALSE) {
if(!$args) { // $args môže byť prázdne pole
return $uri;
}
$sep= $html ? '&' : '&';
if(FALSE === $qmpos = strpos($uri, '?')) { // adresa ešte neobsahuje query string
$uri .= '?';
} elseif(strlen($uri) !== ($qmpos + 1)) { // adresa už obsahuje query string
$uri .= $sep;
}
return $uri .
http_build_query($args, NULL, $sep);
}
preferences:
46.79 ms | 402 KiB | 5 Q