Maison php教程 php手册 PHP的ip2long和long2ip函数的实现原理

PHP的ip2long和long2ip函数的实现原理

Jun 21, 2016 am 08:47 AM
explode ips

最近要做个十进制数字的可逆转换做邀请码,一直没搞清楚怎么弄的,实在太复杂了,今天弄IP时想到这个可以进行转换,于是研究了下原理:

主要是自己整理了下:


$ip = '12.34.56.78';
$ips = explode('.', $ip);
$result = 0;
$result += $ips[0]<<24;
$result += $ips[1]<<16;
$result += $ips[2]<<8;
$result += $ips[3];
echo bindec(decbin($result));
echo &#39;<br/>&#39;;
echo bindec(decbin(ip2long($ip)));
echo &#39;<br/>&#39;;

$str = &#39;&#39;;
$str .= intval($result/intval(pow(2, 24))) .&#39;.&#39;;
$str .= intval(($result&0x00FFFFFF)/intval(pow(2, 16))) .&#39;.&#39;;
$str .= intval(($result&0x0000FFFF)/intval(pow(2, 8))) .&#39;.&#39;;
$str .= intval($result&0x000000FF);

echo $str;
echo &#39;<br/>&#39;;
echo long2ip($result);
Copier après la connexion

以上输出的结果为:

203569230
203569230
12.34.56.78
12.34.56.78
Copier après la connexion


这只是实现的一种方法而已,还有其他的办法

我是想用类似的方法,可以直接把一个十进制数字转换为其他十进制数值并可逆,但遇到中间有很多0的数值时发现问题太多了,如 1000100






Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Lequel est le meilleur, écran miniled ou ips ? Lequel est le meilleur, écran miniled ou ips ? Feb 18, 2024 am 09:40 AM

En comparant les deux écrans, l'écran IPS est meilleur. Après tout, l'écran IPS a un angle élevé, la vitesse de réponse est très rapide et la reproduction des couleurs est également très précise. Ces caractéristiques sont suffisantes pour surpasser l'écran miniLED, donc il. Il est plus recommandé d'utiliser l'écran IPS. Quel écran est le meilleur, miniled ou ips ? Réponse : ips est le meilleur. Si miniled est comparé à ips, ips est meilleur. L'écran IPS est un produit relativement haut de gamme parmi les panneaux LCD. L'image est très stable et il n'y a aucune trace d'eau au toucher. Deuxièmement, l'IPS a un angle de vision élevé, une vitesse de réponse rapide et une reproduction précise des couleurs. Dans le domaine du design, les professionnels de cette catégorie aiment l'utiliser. Lorsque vous profitez d'images animées à grande vitesse, l'écran dur IPS peut garantir clarté, fluidité et réalisme.

Comment utiliser la fonction d'explosion PHP et résoudre les erreurs Comment utiliser la fonction d'explosion PHP et résoudre les erreurs Mar 10, 2024 am 09:18 AM

La fonction d'explosion en PHP est une fonction utilisée pour diviser une chaîne en un tableau. Elle est très courante et flexible. Lors du processus d'utilisation de la fonction d'éclatement, nous rencontrons souvent des erreurs et des problèmes. Cet article présentera l'utilisation de base de la fonction d'éclatement et fournira quelques méthodes pour résoudre les rapports d'erreurs. 1. Utilisation de base de la fonction exploser En PHP, la syntaxe de base de la fonction exploser est la suivante : éclater(string$separator,string$stri

Erreurs courantes et solutions lors de l'utilisation de la fonction d'explosion en PHP Erreurs courantes et solutions lors de l'utilisation de la fonction d'explosion en PHP Mar 11, 2024 am 08:33 AM

Titre : Erreurs courantes et solutions lors de l'utilisation de la fonction exploser en PHP En PHP, la fonction exploser est une fonction courante utilisée pour diviser une chaîne en un tableau. Cependant, certaines erreurs courantes peuvent survenir en raison d'une mauvaise utilisation ou d'un format de données incorrect. Cet article analysera les problèmes que vous pouvez rencontrer lors de l'utilisation de la fonction d'éclatement et fournira des solutions et des exemples de code spécifiques. Erreur 1 : le paramètre délimiteur n'est pas transmis. Lors de l'utilisation de la fonction d'éclatement, l'une des erreurs les plus courantes est que le paramètre délimiteur n'est pas transmis.

Divisez et fusionnez des chaînes à l'aide des fonctions d'explosion et d'implosion Divisez et fusionnez des chaînes à l'aide des fonctions d'explosion et d'implosion Jun 15, 2023 pm 08:42 PM

En programmation PHP, le traitement des chaînes est une opération fréquemment requise. Parmi eux, le fractionnement et la fusion de chaînes sont deux exigences courantes. Afin d'effectuer ces opérations plus facilement, PHP propose deux fonctions très pratiques, à savoir les fonctions d'explosion et d'implosion. Cet article présentera l'utilisation de ces deux fonctions, ainsi que quelques compétences pratiques. 1. La fonction exploser La fonction exploser est utilisée pour diviser une chaîne selon le délimiteur spécifié et renvoyer un tableau. Son prototype de fonction est le suivant : arra

Diviser la chaîne en tableau à l'aide de la fonction PHP 'exploser' Diviser la chaîne en tableau à l'aide de la fonction PHP 'exploser' Jul 24, 2023 pm 11:09 PM

Utilisez la fonction PHP "exploser" pour diviser une chaîne en un tableau. Dans le développement PHP, vous rencontrez souvent des situations où vous devez diviser une chaîne selon un délimiteur spécifié. À l'heure actuelle, nous pouvons utiliser la fonction "explose" intégrée de PHP pour convertir une chaîne en tableau. Cet article explique comment utiliser la fonction « exploser » pour diviser une chaîne et donne des exemples de code pertinents. La syntaxe de base de la fonction "exploser" est la suivante : arrayexplode(

Que dois-je faire si php explosive signale une erreur ? Que dois-je faire si php explosive signale une erreur ? Jan 18, 2023 am 10:13 AM

Solution à l'erreur d'explosion de php : 1. Recherchez et ouvrez le code PHP erroné ; 2. Recherchez la partie de la fonction d'explosion ; 3. Modifiez le code en "dump(explode(',',$str));die;", c'est-à-dire , utilisez simplement une virgule pour séparer le tableau.

Comment utiliser la fonction exploser pour diviser une chaîne en PHP Comment utiliser la fonction exploser pour diviser une chaîne en PHP Jun 26, 2023 pm 12:03 PM

Dans le langage PHP, il existe de nombreuses fonctions de base qui peuvent nous aider à traiter les chaînes rapidement et efficacement. Parmi elles, la fonction d'explosion est une fonction de fractionnement de chaînes très pratique. Il peut diviser une chaîne en tableaux selon le délimiteur spécifié, puis effectuer des opérations de chaîne plus flexibles. Dans cet article, nous présenterons comment utiliser la fonction d'explosion pour diviser des chaînes en PHP. 1. Le format de la fonction éclater Le format de la fonction éclater dans le langage PHP est le suivant : éclater(sépara

Alienware AW2725QF : Dell lance un nouveau moniteur de jeu à double affichage en Europe, au Royaume-Uni et aux États-Unis Alienware AW2725QF : Dell lance un nouveau moniteur de jeu à double affichage en Europe, au Royaume-Uni et aux États-Unis Sep 13, 2024 am 06:18 AM

Dell vient de sortir son dernier moniteur de jeu Alienware, environ un mois après ses débuts. Comme prévu, l'Alienware AW2725QF se vend aux États-Unis au prix de 599 $, ce qui pourrait facilement être confondu avec l'Alienware AW27, plus cher et basé sur QD-OLED.

See all articles