|
| ereg_replace? Fra : Tonni Aagesen |
Dato : 02-08-01 18:22 |
|
Hej liste,
Her er et spørgsmål, som I sikkert alle kan besvare (bare ikke jeg selv):
Jeg skal bruge navnet på en fil uden extensions alá
$path = '/foo/bar/foobar.php?x=5&y=2';
$newPath = ereg_replace(".php", "", $path);
echo "$newPath";
Den skal altså skrive "foobar" uanset hvad der står efter ".php". Kan man
bruge et wildcard efter ".php" ?
--
Mvh
Tonni Aagesen
agent29@mail1.stofanet.dk
| |
Jonas Delfs (02-08-2001)
| Kommentar Fra : Jonas Delfs |
Dato : 02-08-01 19:04 |
|
"Tonni Aagesen" <use.my@signature.com> skrev i en meddelelse
news:3b698c13$0$3247$ba624c82@nntp01.dk.telia.net...
> Jeg skal bruge navnet på en fil uden extensions alá
>
> $path = '/foo/bar/foobar.php?x=5&y=2';
> $newPath = ereg_replace(".php", "", $path);
> echo "$newPath";
>
> Den skal altså skrive "foobar" uanset hvad der står efter ".php".
Noget alá:
$newPath = eregi_replace("([a-z\.]+)", file://\\1, $path);
--
Mvh./Best Regards | Jonas Delfs, http://delfs.dk
"hehe ikke set en standart i min kode før, hvad er det for nogle dimser?" -
X
| |
Jonas Delfs (03-08-2001)
| Kommentar Fra : Jonas Delfs |
Dato : 03-08-01 01:27 |
|
"Jonas Delfs" <jonas@nospam.delfs.dk> skrev i en meddelelse
news:9kc4im$gme$1@sunsite.dk...
> > Jeg skal bruge navnet på en fil uden extensions alá
> >
> > $path = '/foo/bar/foobar.php?x=5&y=2';
> > $newPath = ereg_replace(".php", "", $path);
> > echo "$newPath";
> >
> > Den skal altså skrive "foobar" uanset hvad der står efter ".php".
>
> Noget alá:
> $newPath = eregi_replace("([a-z\.]+)", file://\\1, $path);
Hmm... hvad var det egentligt for noget crap.
--
Mvh./Best Regards
Jonas Delfs, http://delfs.dk
"hehe ikke set en standart i min kode før, hvad er det for nogle dimser?"
| |
Niels Andersen (02-08-2001)
| Kommentar Fra : Niels Andersen |
Dato : 02-08-01 19:10 |
|
"Tonni Aagesen" <use.my@signature.com> wrote in message
news:3b698c13$0$3247$ba624c82@nntp01.dk.telia.net...
> Jeg skal bruge navnet på en fil uden extensions alá
> $path = '/foo/bar/foobar.php?x=5&y=2';
> $newPath = ereg_replace(".php", "", $path);
> echo "$newPath";
> Den skal altså skrive "foobar" uanset hvad der står efter ".php".
> Kan man bruge et wildcard efter ".php" ?
Tjoh...
$newPath = ereg_replace("\.php.*", "", $path);
Læg mærke til at punktum er et specialtegn. Derfor escaper jeg det første
punktum, som rent faktisk skal være et punktim.
Hmm... Bare lige for at tage det fra en anden vinkel, hvor får du $path fra?
Hvis det fx. er den uri client har forespurgt, kan du med $PHP_SELF få
"/foo/bar/foobar.php".
basename($PHP_SELF) giver "foobar.php", så er har du fået næsten det hele
forærende. :)
I øvrigt, når du skal lave noget så simpelt som som at erstatte en streng,
er det spild af processor-kraft at bruge regular expresseions.
$newpath = str_replace('.php', '', $path);
Dette vil gå meget hurtigere.
Anyway, hvis du har en path med sti, filnavn (inkl. extension "php") og
parametre, og filnavnet altid slutter med ".php" og dette ikke skal med,
ville jeg nok gøre sådan her:
$path = '/foo/bar/foobar.php?x=5&y=2';
ereg('.*/(.*).php', $path, $newpath);
echo $newpath[1];
Jeg er dog ikke lige helt sikker på hvordan den vil opføre sig, hvis der er
en skråstreg efter spørgsmålstegnet.
Mvh.
Niels Andersen
| |
Tonni Aagesen (02-08-2001)
| Kommentar Fra : Tonni Aagesen |
Dato : 02-08-01 19:53 |
|
"Niels Andersen" <niels-usenet@myplace.dk> skrev i en meddelelse
news:FHga7.431$PZ4.57564@news000.worldonline.dk...
> Hmm... Bare lige for at tage det fra en anden vinkel, hvor får du $path
fra?
Den regner jeg med at tage fra "basename($REQUEST_URI);"
--
Mvh
Tonni Aagesen
agent29@mail1.stofanet.dk
| |
Niels Andersen (02-08-2001)
| Kommentar Fra : Niels Andersen |
Dato : 02-08-01 21:53 |
|
"Tonni Aagesen" <use.my@signature.com> wrote in message
news:3b69a14b$0$3244$ba624c82@nntp01.dk.telia.net...
> > Hmm... Bare lige for at tage det fra en anden vinkel, hvor får du $path
> fra?
> Den regner jeg med at tage fra "basename($REQUEST_URI);"
Hvad med den her:
$filename = basename($PHP_SELF);
$name = str_replace('.php', '', $filename);
Mon ikker den giver det, du ønsker?
Mvh.
Niels Andersen
| |
Tonni Aagesen (03-08-2001)
| Kommentar Fra : Tonni Aagesen |
Dato : 03-08-01 01:19 |
|
"Niels Andersen" <niels-usenet@myplace.dk> skrev i en meddelelse
news:B4ja7.478$PZ4.68342@news000.worldonline.dk...
> Hvad med den her:
> $filename = basename($PHP_SELF);
> $name = str_replace('.php', '', $filename);
>
> Mon ikker den giver det, du ønsker?
Jo, præcis - Mange tak!
--
Mvh
Tonni Aagesen
agent29@mail1.stofanet.dk
| |
|
|