Portál AbcLinuxu, 15. prosince 2025 04:10
Řešení dotazu:
print_r(parse_url($var)); nebo var_dump(parse_url($var)); to ti ukaze co skutecne leze z ty fce.
<?php
function qa_delete($url) {
$pos = strpos($url, '?');
if ($pos !== false)
return substr($url, 0, $pos);
return $url;
}
Použití:
<?php
var_dump(qa_delete('/prvni/druha?name=treti&id=2'));
Práce s řetězcem -- odmazat vše od posledního otazníku (změna strpos na strrpos v kódu)
<?php
function qa_delete($url) {
$pos = strrpos($url, '?');
if ($pos !== false)
return substr($url, 0, $pos);
return $url;
}
Regulární výraz -- odmazat od 1. otazníku
<?php
function qa_delete($url) {
preg_match('@([^?]*)@', $url, $m);
return $m[1];
}
Ukázka použití (jedna z předchozích možností musí být spuštěna předem):
<?php
var_dump(qa_delete('/prvni/druha?name=treti&id=2'));
Výstup:
string(12) "/prvni/druha"
naozaj netreba vymyslat hluposti a precitat si pripadne dokumentaciu k parse_url http://php.net/manual/en/function.parse-url.php
$full_url = 'http://www.abclinuxu.cz/EditDiscussion/431817?action=add&dizId=228744&threadId=0'; $part = '/prvni/druha/?name=treti&id=2'; $full_url_clear = parse_url($full_url,PHP_URL_PATH); var_dump($full_url_clear); // string(22) "/EditDiscussion/431817" $part_clear = parse_url($part,PHP_URL_PATH); var_dump($part_clear); // string(13) "/prvni/druha/"
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.