Hi leute ich komme nicht weiter Bitte helft mir.
Ich möchte in einem String nach bestimmten schlüsselwörtern suchen.
in der vorlage klapt das nur mit meinem String leider nicht.
Warum ???
‚Am Sonntag ist es sonnig bei nahezu wolkenfreiem Himmel. Dabei kühlt es sich in den Morgenstunden auf 15 Grad ab, im Tagesverlauf werden dann 29 Grad erreicht. Der Wind weht schwach aus südöstlichen Richtungen.‘
if(stristr($str, 'sonnig') !== false) {
echo 'Es ist sonnig';
}
passt die Meldung wieder zum Blick aus dem Fenster
stristr() und ähnliche Suchfunktionen liefern false zurück, wenn der String nicht gefunden wurde. Als „Erfolgsmeldung“ wird gemeinerweise nicht „true“ gemeldet, sondern zur möglichen Weiterverwendung die Position im String, an der der Suchstring gefunden wurde.
Merkwürdig. Da ich noch nicht IP-Symcon nutze, habe ich folgenden „Versuchsaufbau“ erfolgreich genutzt:
<?
$str = 'Am Sonntag ist es sonnig bei nahezu wolkenfreiem Himmel. Dabei kühlt es sich in den Morgenstunden auf 15 Grad ab, im Tagesverlauf werden dann 29 Grad erreicht. Der Wind weht schwach aus südöstlichen Richtungen.';
$str = html_entity_decode($str);
if(stristr($str, 'sonnig') !== false) {
echo 'Es ist sonnig';
}
?>
Klappt dieser Code bei Dir? Wenn ja, dann liefert vielleicht „GetValueString(‚Wetter_Vorhersage‘)“ nicht genau das zurück, was Du hier erwartest.
stristr() gibt einen String zurück… „===“ prüft nicht nur auf Inhalt, wie „==“ es tut, sondern auch auf den Variablentyp. Da String aber immer ungleich Boolean ist war nichts anderes zu erwarten als dass die Bedingung nicht erfüllt wird.