Hvordan sjekke om en streng begynner med en spesifisert streng?

Jeg prøver å sjekke om en streng begynner med http. Hvordan kan jeg gjøre denne sjekken?

$string1 = 'google.com';
$string2 = 'http://www.google.com';
Løsning

Bruk funksjonen substr for å returnere en del av en streng.

substr( $string_n, 0, 4 ) === "http"

Hvis du're prøver å sørge for at det's ikke en annen protokoll. Jeg ville brukt http:// i stedet, siden https også ville matche, og andre ting som http-protocol.com.

substr( $string_n, 0, 7 ) === "http://"

Og generelt:

substr($string, 0, strlen($query)) === $query
Kommentarer (6)

Bruk strpos():

if (strpos($string2, 'http') === 0) {
   // It starts with 'http'
}

Husk de tre likhetstegnene (===). Det vil ikke fungere riktig hvis du bare bruker to. Dette er fordi strpos() vil returnere false hvis nålen ikke kan finnes i høystakken.

Kommentarer (11)

Også arbeid:

if (eregi("^http:", $url)) {
 echo "OK";
}
Kommentarer (1)