Diskuze: PHP odebrání textu za posledním lomítkem
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.

Člen

Zobrazeno 7 zpráv z 7.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Dejme tomu, že tohle je to snad nejjednodušší řešení:
$get = $_GET['url'];
... nějaký zpracování a v nějaké proměnné (například $page) máš to "cs/Main_page"
$page = explode('/', $page);
tudíž $page je pole a vypadá to takto:
Array (
[0] => 'cs'
[1] => 'Main_Page'
)
Tohle jsem zkoušel, ale nedostal jsem se tak daleko, abych byl schopen odstranit poslední část pole a zase ho složit pomocí implode()
Pokud nedáš příklad jak a co děláš, nevím kde máš chybu. Mohu ti napsat kompletní kód, ale asi se nebude shodovat s tím tvým. Buď zde uveď příklad (resp kód) nebo ti s tvou chybou nikdo moc nepomůže.
Pochopil jsem dobře, že z http://example.com/?… chceš http://example.com/?…?
Toho docílíš například pomocí regulárního výrazu:
<?php
$url = 'http://example.com/?page=cs/Main_page';
$upravenaUrl = preg_replace('~/\w+$~', null, $url);
echo $upravenaUrl; //Vypíše http://example.com/?page=cs
?>
Pavel Mareš: bohužel, tu funkci jsem smazal
Mara 'SIFLER' Z.: ne, té funkci předávám jen obsah GET, takže z "cs/Main_page" na "cs". Ale tvůj kód by na to použít šel, pokud změním výstup, řekl bych
Tak jsem zkusil upravit ten kód výš a funguje to. Díky moc
Zobrazeno 7 zpráv z 7.