Je dois couper le dernier octet à partir d'une adresse IP en utilisant php. Fondamentalement, j'essaie de supprimer les chiffres après le troisième point. Je me demande s'il existe une solution prête à l'emploi pour cela? car mes capacités de regex sont au mieux basiques. Merci beaucoup.trim ip adresse octet
7
A
Répondre
17
$trimmed = implode(".", array_slice(explode(".", $ip), 0, 3));
ou
$trimmed = substr($ip, 0, strrpos($ip, "."));
ou peut-être
$trimmed = preg_replace("/(\d{1,3})\.(\d{1,3}).(\d{1,3}).(\d{1,3})/", '$1.$2.$3', $ip);
Une approche plus mathématique qui ne supprime pas le dernier chiffre, mais remplace plutôt avec un 0:
$newIp = long2ip(ip2long("192.168.0.10") & 0xFFFFFF00);
0
Regexp vatiant
$ip = '192.168.20.10';
preg_replace_callback(
'/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/'
, create_function('$matches', '$matches[4] = "0"; array_shift($matches); return implode(".", $matches);')
, $ip
);
Vous pouvez également utiliser ip2long et long2ip ... mais ont aucune idée de « solution de boîte » avec elle:
$ip = ip2long('192.168.20.10') - 10;
echo long2ip($ip);
2
Cela supprimera les derniers chiffres et le point.
$trimmed = preg_replace('/\.\d{1,3}$/', '', $ip);
Questions connexes
- 1. Adresse IP Navigateur
- 2. Attraper adresse IP change
- 3. Adresse IP? - Cocoa
- 4. adresse IP dans Silverlight
- 5. Partage d'une adresse IP dédiée
- 6. GetExtendedUdpTable et adresse IP distante
- 7. TcpListener: écouter sur chaque adresse, y compris GPRS adresse IP
- 8. Comment changer une adresse IP en C++?
- 9. Validation de champ pour une adresse IP
- 10. 234.xxx adresse IP - quel est-il
- 11. serveur RMI ramassant une ancienne adresse ip
- 12. Obtenir une adresse IP "réelle" avec VB.NET?
- 13. Dans Ruby, comment obtenir son octet IP sans passer par DNS?
- 14. IIS7 ou ASP.NET est de retour une adresse IP client étrange Adresse
- 15. htaccess demande de renvoi si adresse IP interne
- 16. Comment déterminer si une adresse IP appartient à un pays
- 17. Python Twisted: restriction de l'accès par adresse IP
- 18. Pourquoi avoir DHCP et adresse IP statique en même temps?
- 19. Comment obtenir une adresse IP dans un PageMethod?
- 20. Adresse IP de l'hôte local VS dans ASP.net
- 21. Comment allez-vous configurer une adresse IP virtuelle?
- 22. site web/adresse IP sortante du serveur web
- 23. Notre serveur subversion a une nouvelle adresse IP - maintenant quoi?
- 24. Modification d'une adresse IP de machine Windows CE par programme?
- 25. comment bloquer mon site d'une adresse IP connue?
- 26. Limitation de bande passante dans IIS 6 par adresse IP
- 27. Comment puis-je faire Compojure écouter une seule adresse IP
- 28. Comment convertir la représentation décimale d'une adresse IP en binaire?
- 29. Autoriser une requête provenant d'une adresse IP spécifique uniquement
- 30. VMWare - Adresse IP statique du système d'exploitation virtuel
Que puis-je demander de plus? passez une bonne journée! :) –
OMG, quelle belle façon de démontrer la règle "il y a plus moyen de bien faire les choses", respect! –
Le dernier semble magique: D – Aley