Wie suche ich in PHP nach einen bestimmten Wort in einem Array?

... komplette Frage anzeigen

4 Antworten

array_filter($meinedaten, "gefunden")

wir machen wir das nun , also die funktion heisst gefunden , geben tun wir dem ding die $meindaten mit , netterweise ein array , da die funktion ein array erwarten um bei jedem durchlauf das nächste element zu nutzen .

also $meinedaten = array ("fischkopf","hirntot","liebesapfel","totenkopf" );

die funktion

function gefunden($daselementvomarray) {

}

da array_filter ja wissen muss was los ist und wann sie welches ergebnis nehmen kann , muss als rückgabe wert ein wahr rauskommen . wenn wahr packt die funktion das in das ergebnis array

also machen wir kurz mal eine aussage .

function gefunden($daselementvomarray) {
  if ($daselementvomarray === "liebesapfel") {
      return true;
  } else {
     return false;
  }
}

somit wird also nur true = wahr bei liebesapfel zurückgegeben . alle anderen werte haben false und werden nicht in das ergebnisarray gespeichert .


nun rufen wir das ganze mal auf


$ergebnis = array_filter($meinedaten, "gefunden");

und jetzt sollte nur sachen die ein wahr wert ergeben auch in $ergebnis sein .

print_r($ergebnis);


voila :)

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Evolution48
16.11.2015, 15:18

sehr sehr sehr VERDAMMT gut erklärt! großes danke! sobald es es möglich ist wirst du das hilfreichste kommentar :) 

1

du musst lediglich eine kleine Funktion erstellen die überprüft ob bot im String vorkommt und dementsprechend true/false zurückgibt. Warum willst du die einfachste Methode nicht verwenden? Alternativ fällt mir nur die manuelle Iteration ein.

 

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Evolution48
16.11.2015, 14:09

weil ich ehrlich gesagt den teil mit der funktion nicht ganz verstehe.. also wie ich sie schreibe und der funktion sage das diese nach dem wort 'bot' suchen soll 

0

Nimm doch statt des Arrays einen String und mache das über eine RegEx.

Antwort bewerten Vielen Dank für Deine Bewertung

In PHP gibt es die array-search function.

$key = array_search('bot', $array);
Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Evolution48
16.11.2015, 13:48

die array_search funktion bringt da leider nicht viel :/ 

0

Was möchtest Du wissen?