peinliche frage, hab ein blackout

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

  • peinliche frage, hab ein blackout

    hi

    irgendwie bin ich grad zu blöd, zum ne dumme frage zu beantworten.

    und zwar habe ich einen string wie folgt:
    Code:
    mpg3;jpg12;wmv2;avi1;
    nun will ich den so ausgeben, das am schluss
    Code:
    P:12 / M:6
    steht.

    also kurz, die endungen von filmdateien zusammenzählen.

    nun wollte ich mit
    Code:
    $tempm1=preg_replace("/mpg(.*);/U","\\1",$row['dateitypen']);
    die zahl ausfiltern, welche angibt, wieviele mpg dateien der DS hat.



    aber irgendwie schaff ich es einfach nicht, die zahlen rauszufiltern.


    könnte mir da jemand auf die sprünge helfen??

    ist sicher irgenetwas ganz einfachs und simples, aber ich hab irgendwie ein totales blackout.
    (müsste wohl mal schlafen gehen)


    ou, sorry fürs stören, habe grad irgendwie einen geistesblizt, und schwupdi wup, gings.

    thx

    @mod: könnt ihr nun löschen
    Zuletzt geändert von fabio; 08.11.2003, 01:03.

  • #2
    das nächste Mal poste deinen Geistesblitz bitte, damit auch andere was davon haben. ... und zwar am besten mit neuem Beitrag und nicht den alten bearbeiten!
    Hier ist meine Idee dazu:

    PHP-Code:
    preg_match_all("/(?=;|^)([a-z]+)(\d+)(?=;|$)/",
      
    $row['dateitypen'], $matchesPREG_SET_ORDER);
    $dateitypen = array();
    foreach (
    $matches as $match)
      
    $dateitypen[$match[1]] = $match[2];
    var_dump($dateitypen); 
    mein Sport: mein Frühstück: meine Arbeit:

    Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

    Kommentar


    • #3
      oke, werd ich machen.

      also hier meine lösung.
      ist wahrscheinlich nicht die beste, aber was solls, es geht.
      PHP-Code:
          $tempm1=preg_replace("/(.*)mpg([0-9]{1,3})(.*)/","\\2",$row['dateitypen']);
          
      $tempm2=preg_replace("/(.*)wmv([0-9]{1,3})(.*)/","\\2",$row['dateitypen']);
          
      $tempm3=preg_replace("/(.*)avi([0-9]{1,3})(.*)/","\\2",$row['dateitypen']);
          
      $tempm4=preg_replace("/(.*)mov([0-9]{1,3})(.*)/","\\2",$row['dateitypen']);
          
      $tempm5=preg_replace("/(.*)asf([0-9]{1,3})(.*)/","\\2",$row['dateitypen']);
          
      $tempmovies $tempm1+$tempm2+$tempm3+$tempm4+$tempm5;
          
      $temppics=preg_replace("/(.*)jpg([0-9]{1,3})(.*)/","\\2",$row['dateitypen']);;
          if(
      $temppics>=1){$tempdateitypen .= "B: <b>".nullvorne($temppics)."</b> ";}
          if(
      $tempmovies>=1){$tempdateitypen .= "V: <b>".nullvorne($tempmovies)."</b> ";}
          
          
          echo 
      "\n\t<td valign=top >$tempdateitypen</td>"
      aber eine frage hätte ich noch.
      warum nicht editieren??
      ich meine, dann gibt es _ein bisschen_ weniger speicher auf der datenbank.

      aber ist ja auch egal

      trotzdem Big THX


      PS:
      irgendwie ist das, wenn man zwei backslashes ( \ ) im php code macht, das da nur einer angezeigt wird.
      ????

      Kommentar


      • #4
        ja, kleiner Bug in der Forensoftware.
        Steht soweit ich weiß schon auf der todo-Liste, die nach dem nächsten Upgrade abgearbeitet wird.

        nebenbei: Replacement may contain references of the form \\n or (since PHP 4.0.4) $n, with the latter form being the preferred one.
        mein Sport: mein Frühstück: meine Arbeit:

        Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

        Kommentar

        Lädt...
        X