Jak dostat jméno souboru bez přípony

Občas jsem se dostal do situace, kdy jsem musel např. odělit příponu od jména souboru. Popíšu tu jeden z možných postupů...

Občas jsem se dostal do situace, kdy jsem musel např. odělit příponu od jména souboru. Nabídnu Vám tedy jedno řešení, i když o něm vím, že má jednu velkou mouchu.
Pokud má soubor v názvu víc teček, uvedený postup nebude fungovat (nicméně to, že soubor má v názvu víc teček není zrovna obvyklý případ).
Vím, šlo by to ošetřit, ale to až někdy jindy.

Takže, použiju fci explode(), basename() a strlen().
Zjistím si přes REQUEST_URI celou adresu bez serveru, a pomocí fce basename získám pouze jméno souboru. Rozdělím tedy soubor pomocí explode, dělící prvek je . (tečka). Explode mi soubor rozdělí na části, volám je tedy rozdel[0], rozdel[1] a pokud by bylo více teček tak i [2],[3]…
Dále už jenom všechno proženu přes strlen, který mi spočítá znaky. Všechny proměnné vyechnuju a je to… :-)
 

<?php
$soubor2=$_SERVER['REQUEST_URI'];
$soubor=basename("$soubor2");
$rozdel=explode (".", $soubor);
$pripona="$rozdel[1]";
$jmeno_bez_pripony="$rozdel[0]";
$delka=strlen($soubor);
$delka_pripony=strlen($pripona);
$delka_jmeno=strlen($jmeno_bez_pripony);
?>


PS: Článek byl z důvodu překopání funkcionality webu zkrácen o ukázku. Dík za pocopení.


<Starší | tento článek | Novější>

Napsáno: 4. 11. 2005, 00:00 | Přečteno: 12583x | Kategorie: PHP School | Napsal: peCan.cz |
Sadistická rodinka jede na nedělní výlet autem... Vyjedou, ujedou 2 kilometry, do cesty jim vběhne zajíc, tatínek šlápne na plyn a přejede ho. Všichni v aute radostně výskají, jak se mu to povedlo. Jedou dál. 50. kilometr. Do cesty vběhne srna, tatínek zrychlí a je na maděru. Všichni se opět radostně smějí, děti tleskají. 80 kilometr. Předjíždějí náklaďák naložený ocelovýma plátama, vtom jedna deska spadne na auto, rozpulí ho a tatínkovi uřeže hlavu. Všichni se smějí, jen nejmenší pláče. Proč brečíš, ptá se ho maminka. Když já to neviděl...
Petr Graubner | ICQ- 264912843, Jabber - pecan27@njs.netlab.cz | RSS | Šlape na miniRS | Styl CoolStyle | Zpracováno za: 0.138s | Počet SQL dotazů ve fóru: 1 | Admin