LIKE-ähnlicher - Befehl bei IF-Abfrage in PHP
Stefanie Brundmann
- php
0 Sönke Tesch0 Vinzenz0 apstrakt0 Live2
Hallo,
bei Abfragen z.B. einer SQL-Datenbank kann man ja bekanntlich mit WHERE $variable1 LIKE '%hallo%' alle Einträge filtern, die in $variable1 das Wort hallo an einer beliebigen Stelle enthalten.
Bei einer IF-Abfrage funktioniert das aber nicht:
If ($variable1 LIKE '%hallo%')
{
...
}
ERROR!!!
Was ist die Lösung?
Versteht ihr, was ich meine?
bei Abfragen z.B. einer SQL-Datenbank kann man ja bekanntlich mit WHERE $variable1 LIKE '%hallo%' alle Einträge filtern, die in $variable1 das Wort hallo an einer beliebigen Stelle enthalten.
Bei einer IF-Abfrage funktioniert das aber nicht:
»»
If ($variable1 LIKE '%hallo%')
Das ist kaum verwunderlich, nur weil etwas in SQL funktioniert, muß es ja nicht gleich in PHP funktionieren.
Was ist die Lösung?
Ein Blick in die PHP-Anleitung, ist allerdings zugegebenermaßen auch etwas versteckt: die beiden Kapitel zu den regulären Ausdrücken bieten eine Reihe Vergleichsfunktionen, die ebenso mächtig sind, wie REGEX in SQL: http://www.php.net/manual/de/ref.pcre.php und http://www.php.net/manual/de/ref.regex.php.
Gruß,
soenk.e
PS: Dein gesuchtes Muster lautet "/hallo/".
Hallo Stefanie
bei Abfragen z.B. einer SQL-Datenbank kann man ja bekanntlich mit WHERE $variable1 LIKE '%hallo%' alle Einträge filtern, die in $variable1 das Wort hallo an einer beliebigen Stelle enthalten.
Bei einer IF-Abfrage funktioniert das aber nicht:
If ($variable1 LIKE '%hallo%')
Was Du suchst, sind Reguläre Ausdrücke:
http://www.php.net/manual/de/ref.regex.php
Gruss,
Vinzenz
Hallo!
bei Abfragen z.B. einer SQL-Datenbank kann man ja bekanntlich mit WHERE $variable1 LIKE '%hallo%' alle Einträge filtern, die in $variable1 das Wort hallo an einer beliebigen Stelle enthalten.
Bei einer IF-Abfrage funktioniert das aber nicht:
natürlich nicht.
If ($variable1 LIKE '%hallo%')
{
...
}ERROR!!!
Was ist die Lösung?
Du mußt mit den PHP-Stringfunktionen arbeiten, z.B. mit strpos(), also etwa so:
IF (strpos($variable1,"hallo") { ...
Versteht ihr, was ich meine?
ja.
Lade Dir am besten mal ein PHP-Handbuch aus dem Netz runter. Das beitet eine gut strukturierte Funktionsübersicht. Oder guck bei SelfPHP nach.
Tschau,
apstrakt
ich glaub LIKE geht bei if nicht
LÖSUNGSVORSCHLAG
if (preg_match("/*hallo*/",$variable1)) {
...
} else {
...
}