Jörg: Songs neu nummerieren (php) / Lösungsansatz zur Diskussion

Beitrag lesen

Hallo Rolf,

ich freue mich über Deine Kritik und übernehme gerne ein paar Punkte.

  • wähle die Schreibweise deiner Variablen konsistent.

    • underscored: mp3_files
    • camel case : mp3Files
    • pascal case: Mp3Files

Werde ich versuchen, kann aber nicht dafür garantieren. Habe über die Jahrfe so meine eigene Idee von Variablennamen entwickelt. Ich weiß nicht, ob ich mich da so diszipliniert bekomme.

$Song passt da nicht rein. Namen mit Großbuchstaben vorne sind für Klassen gedacht. Schau Dir mal die PSRs an.

Oh. Das kann ich berücksichtigen.

$mp3Files_newName[$i] = sprintf("%04d %s", $i+1, $arr_song[1]);


Was macht das %s genau?

  • Mach deinen Code robuster. Ein Dateiname wie "007Goldeneye.mp3" schießt dich ab.

Kann nicht vorkommen, aber egal. Finde es trotzdem sinnvoll, was Du sagst.

  • Es ist nicht gut, $mp3Files[$i] als Renamequelle zu nutzen. Du machst eine foreach-Schleife, der Schleifenwert steht in $Song, dann solltest Du den auch verwenden. Dass $Song und $mp3Files[$i] identisch sind, ist eine möglicherweise richtige Annahme, aber wenn dein drei Monate älteres Ich diesen Code vorfindet und sieht, dass Du mal $Song und mal $mp3Files[$i] verwendest, wird es sich fragen: Wieso zum grundgütigen Geier nahm ich erst dies und dann das? Gab's da einen Grund für?!?!?! Und dann wirst Du Dich verfluchen 😉

Einverstanden. 👍

Ich hätt's vermutlich so geschrieben:


    $cleanName = count($nameParts) > 1 ? $nameParts[1] : $songName;
    $newName = sprintf("%04d $s", $i++, $cleanName);

Ich verstehe nicht ganz, was Du in der ersten zeile prüfst, ich mag dieses Kurzschreibweisen auch nicht.

Und die ZusaMMENSETZUNG von $newName ist mir auch nicht ganz klar.

Ansonsten schöner, schlanker Code.

Jörg