webentwicklung-frage-antwort-db.com.de

Prüfen Sie, ob die Variable mit 'http' beginnt.

Ich bin mir sicher, dass dies eine einfache Lösung ist. Ich habe einfach nicht genau das gefunden, was ich brauchte.

Mit PHP habe ich eine Variable $ source. Ich möchte prüfen, ob $ source mit 'http' beginnt. 

if ($source starts with 'http') {
 $source = "<a href='$source'>$source</a>";
}

Vielen Dank!

21
Andelas
if (strpos($source, 'http') === 0) {
    $source = "<a href=\"$source\">$source</a>";
}

Hinweis Ich verwende ===, nicht ==, da strpos boolesche false zurückgibt, wenn die Zeichenfolge keine Übereinstimmung enthält. Null ist falsch in PHP, daher ist eine strikte Gleichheitsprüfung erforderlich, um Mehrdeutigkeiten zu beseitigen.

Referenz:

http://php.net/strpos

http://php.net/operators.comparison

46
Jonah

Sie möchten die Funktion substr() .

if(substr($source, 0, 4) == "http") {
   $source = "<a href='$source'>$source</a>";
}
13
AgentConundrum
if(strpos($source, 'http') === 0)
    //Do stuff
6
Ben

Verwenden Sie substr :

if (substr($source, 0, 4) === 'http')
5
casablanca
if(preg_match('/^(http)/', $source)){
...
}
0
ali