Array Elemente "kürzen"

Anthony

Mitglied
Hallo,

ich habe beispielsweise so ein
Array: ( [0] => gleicher Text 140/146 [1] => gleicher Text 152/158 [2] => gleicher Text 164/170 [3] ...)

und erhalten möchte ich
Array: ( [0] => 140/146 [1] => 152/158 [2] => 164/170 [3] ...)

Es sollen also "nur" die Unterschiede erhalten bleiben, wobei "gleicher Text" vorher nicht bekannt ist <-> Datenbank-Abfrage. Gibt es eine einfache Lösung? Aufwendig und kompliziert kann ich es lösen...

Vielen Dank!

Gruß Anthony
 
Hi

ist es immer so, dass der gleiche Text (egal wie er lautet) zuerst kommt, und der unterschiedliche Teil danach?
Falls nein, gibt es immer nur einen unterschiedlichen Teil (und davor und dahinter gleichen Text), oder können es auch mehrere Teile sein, mit gleichem Text auch dazwischen?
 
Hi,

leider kann der Unterschied auch an einer anderen Stelle sein.
Array: ( [0] => gleicher Text 140/146, für Kinder [1] => gleicher Text 152/158, für Kinder [2] => gleicher Text 164/170, für Kinder [3] ...)
 
Dies sollte behilflich sein.. Du musst dein Array mit $arr austauschen.
Ausgabe:
Code:
Array
(
   [0] => blblblb156/451asdhjklhaskd
   [1] => blblblb156/471asdalhj
   [2] => blblblb166/451asdalhj
   [3] => blblblb156/451asdalhj
   [4] => blblblb146/451asdalhj
   [5] => blblblb156/451asdalhj
)
blblblb156/451asdhjklhaskdblblblb156/471asdalhjblblblb166/451asdalhjblblblb156/451asdalhjblblblb146/451asdalhjblblblb156/451asdalhjArray
(
   [0] => 156/451
   [1] => 156/471
   [2] => 166/451
   [3] => 156/451
   [4] => 146/451
   [5] => 156/451
)

PHP:
<?php
$arr = [
   "blblblb156/451asdhjklhaskd",
   "blblblb156/471asdalhj",
   "blblblb166/451asdalhj",
   "blblblb156/451asdalhj",
   "blblblb146/451asdalhj",
   "blblblb156/451asdalhj"
];
$a = implode($arr);
preg_match_all('@[0-9]+/[0-9]+@si',$a,$result);
echo '<pre>';
print_r($arr);

echo $a;
print_r($result[0]);
 
Vielen Dank für die Antwort!
Leider habe ich nicht genau genug das Problem beschrieben - sorry!

Der gesuchte Unterschied ist nicht zwangläufig eine Zahl oder bestimmte Zeichen, es könnte eine Form oder Farbe sein.
 
Klingt nach nem klassischen XY-Problem. Was willst du wirklich machen? Du suchst schon nach etwas sehr speziellem, guckst aber evtl. an einer einfacheren Lösung vorbei. Außerdem erwähntest du im ersten Post eine Datenbankabfrage - wie kommt die ins Spiel?
 
Genau das glaube ich ja - ich sehe die einfache Lösung nicht...
Prinzipiell möchte ich zusammengehörige Artikel finden und sinnvoll zur Auswahl stellen <-> Variantenmodul. In einer Tabellen-Spalte gibt es die oben genannten Daten, die in ein Array eingetragen werden und dann gekürzt, in meinem Beispiel, als Größe (140/146, ...) ausgegeben und zur Auswahl gestellt werden sollen.

Es funktioniert im Grunde, ich dachte aber, dass ich die einfache Lösung übersehe...
 

Neue Beiträge

Zurück