Grafiken laden, bearbeiten und in ein Magazin laden

Das wird wohl doch ne ganze ecke schwieriger als ich dachte.

Die Code stelle am Anfang von deinem Beispiel "$letters = array();" verstehe ich schon einmal gar nicht.

Denn die Zeichen (Buchstaben und Zahlen) erhalte ich ja vom User in der Variable "$var = 'BMW500PS';".

Des Weiteren fällt mir keine Lösung ein wie ich Zahlen von Zahlen unterscheiden soll.

Beispiel:

Bmw500Ps

B -> großes B -> Ordner 1
m -> kleines m -> Ordner 2
w -> kleines w -> Ordner 2
5 -> Tja?
0 -> Tja?
0 -> Tja?
P -> großes P -> Ordner 1
s -> kleines s -> Ordner 2

Denn es gibt zwei verschiedene Arten von Zahlen im Skript. Also zwei verschiedene mögliche Grafiken.

Ich habe mir überlegt das der User ein Ausrufezeichen vor die Zahl schreiben muss um zu unterscheiden welches Zeichen er meint.

Beispiel: Bmw5!0!0PS

Die "5" wäre Ordner 1 und "!0" und !0" wären Ordner 2.

Aber das Skript erkennt ja jeweil nur EIN Zeichen in der Variable.

B.png
m.png
w.png
5.png
0.png
0.png
P.png
s.png

Deswegen dachte ich auch eine Funktion die all diese Sachen umsetzen kann. Das heisst jetzt nicht das ich auf einen fertigen Code von euch warte (was ich trotzdem immer gerne sehe ;) ) sondern eher Denkanstösse, Ideen, Links usw.
 
Ich würde so gerne einmal mit Profis arbeiten!
PHP:
$var = 'Bmw500PS';
$pattern = '/([a-z])|([A-Z])|([0-9])/';
if(preg_match_all($pattern, $var, $matches) !== false) {
  $count  = count($matches[0]);
  foreach($matches[0] as $i => $letter) {
    # Kleinbuchstabe
    if(!empty($matches[1][$i])) {
      $result[] = array($letter, 0);
    # Großbuchstabe
    } elseif(!empty($matches[2][$i])) {
      $result[] = array($letter, 1);
    # Ziffer
    } else {
      $result[] = array($letter, 2);
    }
  }
} else {
  $result = array();
}
 
Ich würde so gerne einmal mit Profis arbeiten!

Wir können zusammen jedes Auto reparieren, tunen oder evtl. sogar bauen. Ich kann bei dir auch die Buchhaltung schmeißen. Aber PHP, nach da kann ich nicht viel.

Edit:

Hast du denn evtl. auch eine Idee wie ich Zahlen unterscheiden könnte? Also z.B. 5!0!0 (5 !0 !0) statt 500.
 
Zuletzt bearbeitet:
Achso. :)

Und wie unterscheidet das Skript die Zahlen?

Wenn ich es mit
PHP:
$var = 'Bmw500PS';
ausführe und ausgebe (prinz) erscheint folgendes:
PHP:
Array
(
    [0] => Array
        (
            [0] => B
            [1] => 1
        )

    [1] => Array
        (
            [0] => m
            [1] => 0
        )

    [2] => Array
        (
            [0] => w
            [1] => 0
        )

    [3] => Array
        (
            [0] => 5
            [1] => 2
        )

    [4] => Array
        (
            [0] => 0
            [1] => 2
        )

    [5] => Array
        (
            [0] => 0
            [1] => 2
        )

    [6] => Array
        (
            [0] => P
            [1] => 1
        )

    [7] => Array
        (
            [0] => S
            [1] => 1
        )

)

Wenn ich es aber mit
PHP:
$var = 'Bmw50!0PS';
ausführe und ausgebe (print) erscheint folgendes:
PHP:
Array
(
    [0] => Array
        (
            [0] => B
            [1] => 1
        )

    [1] => Array
        (
            [0] => m
            [1] => 0
        )

    [2] => Array
        (
            [0] => w
            [1] => 0
        )

    [3] => Array
        (
            [0] => 5
            [1] => 2
        )

    [4] => Array
        (
            [0] => 0
            [1] => 2
        )

    [5] => Array
        (
            [0] => 0
            [1] => 2
        )

    [6] => Array
        (
            [0] => P
            [1] => 1
        )

    [7] => Array
        (
            [0] => S
            [1] => 1
        )

)

Also kein Unterschied?
 
Was willst du denn mit dem Ausrufezeichen erreichen? Ansonsten: erster Wert im Array: das Zeichen, zweiter Wert im Array: 0 => Kleinbuchstabe, 1 => Großbuchstabe, 2 => Ziffer
 
Was willst du denn mit dem Ausrufezeichen erreichen?

Also nehmen wir an der User hat "Bmw50!0Ps" eingegeben.

Dann soll folgendes passieren:

B -> Ordner 1 -> B.png
m -> Ordner 2 -> m.png
w -> Ordner 2 -> w.png

5 -> Ordner 1 -> 5.png
0 -> Ordner 1 -> 0.png
!0 -> Ordner 2 -> 0.png // Wenn möglich soll das Skript hier erkennen das diese Null (wegen dem Ausrufezeichen davor) ein "kleiner Buchstabe" ist sozusagen.

P -> Ordner 1 -> P.png
s -> Ordner 2 -> s.png

Oder gibt es noch eine andere Möglichkeit das "automatisch" erkannt wird das die "0" aus einem anderen Verzeichnis geladen werden soll?
 
Was soll das bringen, Zahlen zu unterscheiden****?
Du willst doch hoffentlich nicht die Bilder für Zahlen bis 10.000 anfertigen und abspeichern?

Klein- und Großbuchstaben sind verständlich, aber kleine Zahlen****
€: wieso zensiert der zwei-, drei- und vierfaches Fragezeichen^^
 
Zuletzt bearbeitet:
Du könntest sagen, dass jede zweite Null oder jede letzte Null als kleine Null dargestellt werden soll, aber wenn es dafür keine Regeln gibt, dann musst du das beispielsweise mit deinem Ausrufezeichen lösen.
 
Was das bringen soll?

Einfaches Beispiel:
Die Grafiken in Ordner 1 sind Blau.
Die Grafiken in Ordner 2 sind Rot.

Und der User soll ja dann entscheiden welche Farbe der Buchstabe oder die Zahl haben soll.

Kannst du deinen Code nicht um diese Eigenschaft erweitern?
 
Zurück