Avatar billede compac Seniormester
11. maj 2010 - 21:01 Der er 9 kommentarer og
1 løsning

omdøb filtype og mappe

Jeg har en gpx-fil som jeg skal have tilføjet til en mappe og hvor gpx-filen  skal omdøbes til xml.

Jeg har følgende:
$target = "../".$mappe."/";
        $target = $target . basename( $_FILES['gpsfilnavn']['name']);
        $target =    preg_replace("/(\w+).gpx/ie","$1.'.xml'",$target);

I $target skal ligge: mappenavn/gpxfil.xml

Det ser ud til at virke.

Hvordan får jeg udskilt gpxfil.gpx til en xml-fil uden mappenavn i en variabel for sig selv?
Avatar billede jakobdo Ekspert
11. maj 2010 - 21:42 #1
Måske du kan bruge basename() ?
Der får du filen uden mappenavn.
Avatar billede compac Seniormester
11. maj 2010 - 21:59 #2
Er det sådan du mener:

$xmlfil = $xmlfil . basename($_FILES['target']['name']);
Avatar billede jakobdo Ekspert
11. maj 2010 - 22:04 #3
Hvis filen altid er .gpx, så kan du f.eks. bruge:

$filnavn_uden_endelse = basename($_FILES['target']['name'],'.gpx');
$ny_filnavn = $mappenavn . $filnavn_uden_endelse . '.xml';
Avatar billede compac Seniormester
11. maj 2010 - 22:31 #4
Det virker ikke. Jeg sætter din kode ind efter dem jeg har gengivet i mit spørgsmål -er det ikke korrekt?
Avatar billede compac Seniormester
11. maj 2010 - 23:00 #5
Nu prøvede jeg at lave lidt om på koden:

$xmlfil = $xmlfil . basename( $_FILES['gpsfilnavn']['name']);
          $xmlfil =    preg_replace("/(\w+).gpx/ie","$1.'.xml'",$xmlfil);
-og det virker
Avatar billede compac Seniormester
11. maj 2010 - 23:06 #6
Iøvrigt  - jeg har altid svært ved at gennemskue problemer med opdeling af mappe- og filnavne, samt indsættelse af skråstreger i sætningerne - både når det gælder flere variable og når det gælder f.eks et fastmappenavn eller filtypenavn i kombination med en variabel.
Er der nogen der kan henvise til en artikel el. lign om dette?
Avatar billede jakobdo Ekspert
12. maj 2010 - 08:17 #7
Altså opdeling er jo "bare" at gøre det sådan her:

$del1 = 'noget';
$del2 = ' og ';
$del3 = 'noget andet';

$samlet = $del1 . $del2 . $del3;

eller:

$samlet = $del1 . '/' . $del2 . '/' . $del3;

Og ellers kan du læse lidt her:

http://dk.php.net/manual/en/language.types.string.php

Du skal også huske at du ikke kan flytte en fil, til en mappe som ikke findes, ved ikke om det er dit problem fra tidligere.
Så måske du skal oprette mappen først med mkdir()
Avatar billede compac Seniormester
12. maj 2010 - 21:18 #8
tak for skal du have -  læg et svar
Avatar billede jakobdo Ekspert
13. maj 2010 - 09:39 #9
Svar!
Avatar billede jakobdo Ekspert
13. juli 2010 - 21:57 #10
Takker for point.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester