Heim  >  Artikel  >  Backend-Entwicklung  >  PHP verwendet die Funktion preg_match(), um die Methode zur Überprüfung der IP-Adresse zu implementieren

PHP verwendet die Funktion preg_match(), um die Methode zur Überprüfung der IP-Adresse zu implementieren

墨辰丷
墨辰丷Original
2018-05-26 16:36:092008Durchsuche

In diesem Artikel wird hauptsächlich vorgestellt, wie PHP die Funktion preg_match() verwendet, um die IP-Adresse zu überprüfen, einschließlich der regulären Matching-Vorgänge von PHP für Zahlen und Zeichenfolgen. Freunde in Not können sich auf Folgendes beziehen:

In diesem Artikel werden die Beispiele erläutert So verwendet PHP die Funktion preg_match(), um die IP-Adresse zu überprüfen. Teilen Sie es wie folgt mit allen als Referenz:

Code 1, regelmäßige Implementierung

preg_match('/^(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:[.](?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}$/', $ipAddress);

Code 2,

<?php
/*
*@return Boolen
*@param String $ip 要匹配的ip地址
*@param String $pat 匹配的正则规则
*@param Boolen 匹配成功后返回的布尔值
*preg_match()
*0为不成功,1为成功
*/
function fun($ip){
  //0.0.0.0--- 255.255.255.255
  $pat = "/^(((1?\d{1,2})|(2[0-4]\d)|(25[0-5]))\.){3}((1?\d{1,2})|(2[0-4]\d)|(25[0-5]))$/";
  if(preg_match($pat,$ip)){
   $num = preg_match($pat,$ip);
   return $num;
  }else{
   $num = preg_match($pat,$ip);
   return $num;
  }
}
echo fun("255.255.255.255");

Die Effizienz des regulären ist nicht so gut wie die des nativen, also werfen Sie einfach den Link (Filterfunktion) weg und gehen Sie.

Filteroptionen, wie private IP-Adressen usw.

Verwendungsreferenz Validieren einer IP-Adresse mit der Funktion filter_var von PHP

Wie stellt PHP fest, ob eine IP eine gültige IP-Adresse ist?

Die meisten Leute haben das Ich habe dieses Protokoll gesehen. Der erste Eindruck muss sein, dass es darum geht, anhand regulärer Ausdrücke zu urteilen.

Nein, nach PHP5.2.0 gibt es eine spezielle Funktion, um dieses Urteil zu fällen.

Beurteilen Sie, ob es sich um eine legale IP handelt

if(filter_var($ip, FILTER_VALIDATE_IP)) {
// it&#39;s valid
}
else {
// it&#39;s not valid
}

Beurteilen Sie, ob es sich um eine legale IPv4-IP-Adresse handelt

if(filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4)) {
// it&#39;s valid
}
else {
// it&#39;s not valid
}

Stellen Sie fest, ob es sich um eine legale öffentliche IPv4-Adresse wie 192.168.1.1 handelt.

if(filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4 | FILTER_FLAG_NO_PRIV_RANGE)) {
// it&#39;s valid
}
else {
// it&#39;s not valid
}

Bestimmen Sie, ob es sich um eine legale IPv6-Adresse handelt

if(filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_NO_RES_RANGE)) {
// it&#39;s valid
}
else {
// it&#39;s not valid
}

Bestimmen Sie, ob es sich um eine öffentliche IPv4-IP-Adresse oder eine legale öffentliche IPv6-IP-Adresse handelt

if(filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_NO_PRIV_RANGE | FILTER_FLAG_NO_RES_RANGE)) {
// it&#39;s valid
}
else {
// it&#39;s not valid
}

Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, dass er für das Studium aller hilfreich sein wird.


Verwandte Empfehlungen:

php preg_matchMatch-String-Length-Fallanalyse

PHP preg_matchDetaillierte Erläuterung der Schritte zum Anpassen der Zeichenfolgenlänge

PHP preg_matchImplementierung von Reguläre Ausdrücke Methoden zum Abgleichen von Funktionen

Das obige ist der detaillierte Inhalt vonPHP verwendet die Funktion preg_match(), um die Methode zur Überprüfung der IP-Adresse zu implementieren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn