Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/243.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用php将3个ip部分转换为字母_Php - Fatal编程技术网

如何使用php将3个ip部分转换为字母

如何使用php将3个ip部分转换为字母,php,Php,我在学习php,请帮我举个例子: IP为74.1.255.28 我们只取最后3部分: 1 255 28 我们求和并转换为字母(无字母O): 谢谢。您可以使用一些PHP内置函数来完成,首先从explode()函数开始,然后您可以将IP放入数组中,因此现在您需要使用$arr['index\u number']访问最后三个部分 现在从str_split()开始,这个函数做什么?简单地将字符串转换为数组中的各个部分,然后使用array\u sum()可以得到总和 现在,在这一部分的末尾,您需要使用ch

我在学习php,请帮我举个例子:

IP为
74.1.255.28

我们只取最后3部分:

1
255
28
我们求和并转换为字母(无字母O):


谢谢。

您可以使用一些PHP内置函数来完成,首先从
explode()
函数开始,然后您可以将IP放入数组中,因此现在您需要使用
$arr['index\u number']
访问最后三个部分

现在从
str_split()
开始,这个函数做什么?简单地将字符串转换为数组中的各个部分,然后使用
array\u sum()
可以得到总和

现在,在这一部分的末尾,您需要使用
chr()
加上64,因为您需要得到数字1的一个值。就这样

$str = '74.1.255.28';
$arr = explode(".", $str);
$_1 = array_sum(str_split($arr[1]));
$_2 = array_sum(str_split($arr[2]));
$_3 = array_sum(str_split($arr[3]));

echo chr($_1 + 64); // A
echo chr($_2 + 64); // L
echo chr($_3 + 64); // J

A、
12=>L
背后的逻辑是什么?是字符编号序列吗?那么问题出在哪里。首先用炸药爆开这根绳子。然后循环遍历每个元素并求和,找到等价的字母。到目前为止你试过了吗?“请帮助我”->到目前为止你试过什么?谢谢,现在我了解了explode的工作原理,请只使用辅音而不使用元音?它不起作用,因为我尝试了其他ip,例如151.53.0.6,结果是特殊字符@@user7203212 1=>A然后0=>?。请告诉我你的逻辑。
$str = '74.1.255.28';
$arr = explode(".", $str);
$_1 = array_sum(str_split($arr[1]));
$_2 = array_sum(str_split($arr[2]));
$_3 = array_sum(str_split($arr[3]));

echo chr($_1 + 64); // A
echo chr($_2 + 64); // L
echo chr($_3 + 64); // J
$ip = '74.1.255.28';
$parts = explode('.', $ip);
// Shift first element
array_shift($parts);
$result = '';
foreach ($parts as $part) {
    $result .= chr(array_sum(str_split($part)) + 64);
}
echo $result;