2016-05-04 8 views
0

Ich bin für die Verwendung von strpos ein seltsames Ergebnis zu erzielen -PHP - strpos Mit falschem Ergebnis suchen Sting Rückkehr

Die $ tmp Variable wird alle Feld Ergebnisse aus einer Mysql Tabelle ziehen. Zur Vereinfachung kürze ich nur auf diese Variable

$ tmp = "Als Chat Buddies, durch persönliche E-Mail, durch Text Messaging";

Var_dump $ tmp die oben beispielsweise angezeigt werden ..

ich diesen Befehl bin mit ..

if (($label == 'Communication') AND (strpos($tmp, 'As Chat Buddies') !== 'false')) 
     { 
      $tmp .= '&nbsp;<img src="http://www.test.com/image/chat.jpg">'; 

      } 

Dies funktioniert und zeigt das Bild auf der rechten Seite.

Dieses Problem ist .. Der nächste Befehl in der Reihenfolge (und alle zusätzlichen Befehlen) ...

if (($label == 'Communication') AND (strpos($tmp, 'In Real Life') !== 'false')) 
     { 
      $tmp .= '&nbsp;<img src="http://www.test.com/image/real.jpg">'; 

      } 

Will auch .. auch wenn es angezeigt sein nicht in der Zeichenfolge überall? Seine Rückkehr als unabhängig gültig.

Irgendwelche Ratschläge?

+2

'false' sollte die Konstante nicht eine Zeichenfolge in Anführungszeichen –

+0

' strpos ($ tmp 'Wie Chat Buddies') sein! == falsch "wäre die richtige Wahl. – Tyr

+0

Es scheint, als könnte es ein wenig einfacher sein, wenn die Werte in '$ tmp' in einem Array statt einer Zeichenkette wären. –

Antwort

0

falsch sollte die Konstante sein, nicht eine Zeichenfolge in Anführungszeichen Wie @markbaker oben erwähnt