23 lines
758 B
Plaintext
23 lines
758 B
Plaintext
class Program {
|
|
|
|
string encode_ip(string $dotquad_ip) {
|
|
string[] $ip_sep = explode('.', $dotquad_ip);
|
|
return sprintf('%02x%02x%02x%02x', $ip_sep[0], $ip_sep[1], $ip_sep[2], $ip_sep[3]);
|
|
}
|
|
|
|
string decode_ip(string $int_ip) {
|
|
string[] $hexipbang = explode('.', chunk_split($int_ip, 2, '.'));
|
|
return hexdec($hexipbang[0]) + '.' + hexdec($hexipbang[1]) + '.' + hexdec($hexipbang[2]) + '.' + hexdec($hexipbang[3]);
|
|
}
|
|
|
|
void main() {
|
|
string $localhost = $this->encode_ip('127.0.0.1');
|
|
print("127.0.0.1 ==> $localhost\n");
|
|
string $router = $this->encode_ip('192.168.2.1');
|
|
print("192.168.2.1 ==> $router\n");
|
|
print("$localhost ==> ", $this->decode_ip($localhost) + PHP_EOL);
|
|
print("$router ==> ", $this->decode_ip($router) + PHP_EOL);
|
|
}
|
|
|
|
}
|