Hilfe bei explode Befehl

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • #16
    na das nenn ich mal vorbildliche Eigeninitiative

    kürzer dürfte dann dies sein
    PHP-Code:
    foreach ($rawlist as $file)
        if (
    $file[0] == 'd')
            if(
    preg_match_all("#:[0-9]{2}(.*)#"$file$ausgabe))    
                echo 
    $ausgabe[0][1]; 
    TBT

    Die zwei wichtigsten Regeln für eine berufliche Karriere:
    1. Verrate niemals alles was du weißt!


    PHP 2 AllPatrizier II Browsergame

    Kommentar


    • #17
      Wie schon gesagt: "Selberlernen macht eh mehr spass! "
      Habs gerade probiert mit deinem Code aber so klappt es nicht!

      PHP-Code:
      foreach ($rawlist as $file)
      {
          if (
      $file[0] == 'd')
          {
              if(
      preg_match_all("#:[0-9]{2} (.*)#"$file$ausgabe))
              {
                  
      print_r($ausgabe);
                  echo 
      $ausgabe[0][1];
              }
          }

      Ausgabe:
      PHP-Code:
      Array
      (
          [
      0] => Array
              (
                  [
      0] => :53 --==[FTP-SERVER]==--
              )

          [
      1] => Array
              (
                  [
      0] => --==[FTP-SERVER]==--
              )

      )

      Warning:  Undefined offset:  1 in C:\apache\htdocs\neuftp\suchevonmir.php on line 31
      Array
      (
          [
      0] => Array
              (
                  [
      0] => :20 --==[E-Books]==--
              )

          [
      1] => Array
              (
                  [
      0] => --==[E-Books]==--
              )

      )

      Warning:  Undefined offset:  1 in C:\apache\htdocs\neuftp\suchevonmir.php on line 31
      ... 
      Des mit dem offset hat ich bei meinen Versuchen auch, habs aber nicht wegbekommen. Woran kanns den blos liegen?

      Mfg Markus
      Zuletzt geändert von markusschmitt; 26.04.2003, 20:29.

      Kommentar


      • #18
        soory, muß

        echo $ausgabe[1][0];

        heißen
        TBT

        Die zwei wichtigsten Regeln für eine berufliche Karriere:
        1. Verrate niemals alles was du weißt!


        PHP 2 AllPatrizier II Browsergame

        Kommentar


        • #19
          Danke

          Mfg Markus

          Kommentar


          • #20
            Hoff ich nerve nicht und bekomm noch ne Antwort

            Jetzt hab ich ein Verständnisproblem!

            Hab mich nochmal an preg_match_all gesetzt und mir das Datum ausgeben lassen.
            Mir ist aufgefallen das ich hier jetzt nur ein Array Element hab und nicht zwei wie beim vorherigen preg_match_all Befehl und ich frage mich nun woran das liegt.
            PHP-Code:
            //Erster Befehl
            if(preg_match_all("#:[0-9]{2} (.*)#"$file$ausgabe))
            //Zweiter Befehl
            if(preg_match_all("#[a-zA-Z]{3} [0-9]{2} [0-9]{2}:[0-9]{2}#"$file$datum)) 
            Die sind von der Syntax ja gleich aber wieso erhalt ich bei dem einen 2 Arrayelemente und bei letzterem nur 1?

            Mfg Markus

            Kommentar


            • #21
              Fehler gefunden im Skript

              Hat sich erledigt:

              Mfg Markus
              Zuletzt geändert von markusschmitt; 02.05.2003, 15:44.

              Kommentar


              • #22
                Sorry, klappt doch nicht.

                Hock jetzt seit 6 Stunden davor und finde keine Lösung!

                OK, also ich such doch mit preg_match_all nach übereinstimmung. Leider klappt das nichts so wie ich es will.

                PHP-Code:
                if ($file[0] == '-')  //Wenn es eine Datei ist
                {
                    if(
                preg_match_all("#:[0-9]{2} (.*)#"$file$ausgabe) || preg_match_all("# [a-zA-Z]{3} [0-9]{2} [0-9]{4} (.*)#"$file$ausgabe))
                    {
                        echo 
                $ausgabe[1][0] . "<br>";
                        
                $aktuelle_datei addslashes($ausgabe[1][0]);
                        
                $groesse ftp_size($open$ausgabe[1][0]);
                           ...
                    }
                    echo 
                $file "<br>";
                    echo 
                $ausgabe[1][0] . "<br>";  //Hierfür bekomm ich die Fehlermeldung

                Ausgabe:
                -rw-r--r-- 1 ftp ftp 786771608 Jul 14 2078 CD01.MPG

                Warning: Undefined offset: 0 in C:\apache\htdocs\neuftp\suchevonmir.php on line 150

                -rw-r--r-- 1 ftp ftp 786938936 Jul 14 2078 CD02.MPG

                Warning: Undefined offset: 0 in C:\apache\htdocs\neuftp\suchevonmir.php on line 150

                Das bedeutet doch soviel das in Element $ausgabe[1][0] nicht drin steht. Habs mir mit print_r($ausgabe) auch schon ausgeben lassen und es steht auch nichts drin aber ich weiß nicht warum. Zuerst hab ich gedacht das es an dem : liegt weil es in den oberen Beispielen kein : gibt also hab ich das "||" reingeschrieben blos das gibt mir auch nichts aus. Wieso findet der mir nichts in dem String?

                Mfg Markus

                Kommentar


                • #23
                  OK also wenn meine Daten so aussehen
                  -rw-r--r-- 1 ftp ftp 786771608 Jul 14 2078 CD01.MPG
                  klappt der Befehl nicht´.

                  Wenn sie so aussehen klappt es
                  -rw-r--r-- 1 ftp ftp 786771608 Jul 14 20:38 CD01.MPG

                  also das erste preg match funktioniert
                  wieso das 2te nicht?
                  PHP-Code:
                   if(preg_match_all("#:[0-9]{2} (.*)#"$file$ausgabe) || preg_match_all("# [a-zA-Z]{3} [0-9]{2} [0-9]{4} (.*)#"$file$ausgabe)) 
                  Mfg Markus

                  Kommentar

                  Lädt...
                  X