kostenloser Webspace werbefrei: lima-city


String Zerlegen PHP

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    paddy-herrmy

    Kostenloser Webspace von paddy-herrmy

    paddy-herrmy hat kostenlosen Webspace.

    Hallo..

    Heute brauche ich mal wieder eure tag/hilfe">Hilfe..
    Und zwar geht es wiedermal um das Zerlegen eines Strings.

    Folgender:
    $datum = "2012-09-01 03:11:20";

    Wie stelle ich es nun am einfachsten an, dass mir der String folgendermasen zerlegt wird?

    in: $jahreszahl $monat $tag $stunde $minute $sekunde
    also das es für Jede Einheit eine eigene Variable gibt.

    Wenn jemand eine Lösung weis, wäre es nett, wenn man mir auch noch verständlich macht wie das Funktioniert^^
    Irgendwann muss ich das ja auch mal lernen :-)

    Liebe Grüsse,
    Paddy



    Beitrag zuletzt geändert: 1.9.2012 16:43:40 von paddy-herrmy
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. browsergame-entwickler

    Kostenloser Webspace von browsergame-entwickler, auf Homepage erstellen warten

    browsergame-entwickler hat kostenlosen Webspace.

    geht das net so:

    $min = 03:11:20;
    $day = 01;
    $month = 09;
    $year = 2012;

    echo $year , " - " ,$month , " - " , $day , " - " , $min;

    keine hnung ob es geht es zeimlich spät ;D
  4. Autor dieses Themas

    paddy-herrmy

    Kostenloser Webspace von paddy-herrmy

    paddy-herrmy hat kostenlosen Webspace.

    browsergame-entwickler schrieb:
    geht das net so:

    $min = 03:11:20;
    $day = 01;
    $month = 09;
    $year = 2012;

    echo $year , " - " ,$month , " - " , $day , " - " , $min;

    keine hnung ob es geht es zeimlich spät ;D


    Hihi.. entweder du willst nur trollen, oder du hast mich nicht verstanden ;)
    Von hand zerlegen kann ich das natürlich selbst^^

    Ich möchte den gesammten string aber von php automatisch in die einzelnen Variablen zerlegt bekommen :D
  5. browsergame-entwickler

    Kostenloser Webspace von browsergame-entwickler, auf Homepage erstellen warten

    browsergame-entwickler hat kostenlosen Webspace.

    paddy-herrmy schrieb:
    browsergame-entwickler schrieb:
    geht das net so:

    $min = 03:11:20;
    $day = 01;
    $month = 09;
    $year = 2012;

    echo $year , " - " ,$month , " - " , $day , " - " , $min;

    keine hnung ob es geht es zeimlich spät ;D


    Hihi.. entweder du willst nur trollen, oder du hast mich nicht verstanden ;)
    Von hand zerlegen kann ich das natürlich selbst^^

    Ich möchte den gesammten string aber von php automatisch in die einzelnen Variablen zerlegt bekommen :D


    nee ich hab dich dann net verstanden :D
    sorry ich sollte mich langsam mal hinlegen :D
    dann kann ich dir leider auch net helfen sorry wegen dem unnötigen post
  6. hackyourlife

    Moderator Kostenloser Webspace von hackyourlife

    hackyourlife hat kostenlosen Webspace.

    paddy-herrmy schrieb:
    Wenn jemand eine Lösung weis, wäre es nett, wenn man mir auch noch verständlich macht wie das Funktioniert^^
    Irgendwann muss ich das ja auch mal lernen :-)
    Also zuerst mal die Lösung:
    $datum = '2012-09-01 03:11:20';
    $regex = '/(\\d+)-(\\d+)-(\\d+) (\\d+):(\\d+):(\\d+)/';
    
    preg_match($regex, $datum, $match);
    
    $jahreszahl	= $match[1];
    $monat		= $match[2];
    $tag		= $match[3];
    $stunde		= $match[4];
    $minute		= $match[5];
    $sekunde	= $match[6];
    
    echo("Es ist die $sekunde. Sekunde der $minute. Minute der $stunde. Stunde des $tag. Tages im Monat $monat des Jahres $jahreszahl");

    Und dann die Erklärung:

    In
    $regex
    steht ein regulärer Ausdruck. Falls du das noch nicht kennen solltest: damit lassen sich sehr einfach Muster in Strings suchen. Dabei steht das
    \d
    für eine Ziffer (0-9). Das
    +
    danach bedeutet, dass ein oder mehrere Zeichen, in dem Fall Ziffern, gefunden werden.
    Die runden Klammern bedeuten immer, dass das, was darin steht in eine eigene Variable (genauer: als Element in einem Array) gespeichert wird.

    preg_match()
    zerlegt jetzt den String in
    $datum
    anhand des regulären Ausdrucks und speichert das Ergebnis in das Array
    $match
    .

    Beitrag zuletzt geändert: 1.9.2012 11:18:47 von hackyourlife
  7. g****e

    $tmparr = explode( ' ' , '2012-09-01 03:11:20' );
    $datearr = explode( '-' , $tmparr[0] );
    $year = $datearr[0];
    $month = $datearr[1];
    $day = $datearr[2];
    $timearr = explode( ':' , $tmparr[1] );
    $hour = $timearr[0];
    $min = $timearr[1];
    $sec = $timearr[2];

    Sowas?
    Du kannst auch:
    $time = strtotime( '2012-09-01 03:11:20' );
    date( 'Y' , $time );
    ...

    benutzen. Dann in "date" einfach reinpacken, was für einen String du gern hättest.

    Liebe Grüße
  8. Autor dieses Themas

    paddy-herrmy

    Kostenloser Webspace von paddy-herrmy

    paddy-herrmy hat kostenlosen Webspace.

    hackyourlife schrieb:
    paddy-herrmy schrieb:
    Wenn jemand eine Lösung weis, wäre es nett, wenn man mir auch noch verständlich macht wie das Funktioniert^^
    Irgendwann muss ich das ja auch mal lernen :-)
    Also zuerst mal die Lösung:
    $datum = '2012-09-01 03:11:20';
    $regex = '/(\\d+)-(\\d+)-(\\d+) (\\d+):(\\d+):(\\d+)/';
    
    preg_match($regex, $datum, $match);
    
    $jahreszahl	= $match[1];
    $monat		= $match[2];
    $tag		= $match[3];
    $stunde		= $match[4];
    $minute		= $match[5];
    $sekunde	= $match[6];
    
    echo("Es ist die $sekunde. Sekunde der $minute. Minute der $stunde. Stunde des $tag. Tages im Monat $monat des Jahres $jahreszahl");

    Und dann die Erklärung:

    In
    $regex
    steht ein regulärer Ausdruck. Falls du das noch nicht kennen solltest: damit lassen sich sehr einfach Muster in Strings suchen. Dabei steht das
    \d
    für eine Ziffer (0-9). Das
    +
    danach bedeutet, dass ein oder mehrere Zeichen, in dem Fall Ziffern, gefunden werden.
    Die runden Klammern bedeuten immer, dass das, was darin steht in eine eigene Variable (genauer: als Element in einem Array) gespeichert wird.

    preg_match()
    zerlegt jetzt den String in
    $datum
    anhand des regulären Ausdrucks und speichert das Ergebnis in das Array
    $match
    .


    Danke, du bist immer wieder eine Große Hilfe :-)
    JAja.. Regex is echt ne komplizierte sache..
  9. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!