3v4l.org

run code in 300+ PHP versions simultaneously
<?php class NetUtils { private ?string $ipv4 = null; private ?string $subnet_mask = null; private ?string $network_address = null; private ?string $broadcast_address = null; public function setIpv4(string $ipv4): NetUtils { $this->ipv4 = $ipv4; return $this; } public function setSubnetMask(string $subnet_mask): NetUtils { $this->subnet_mask = $subnet_mask; return $this; } public function broadcastAddress(): string { return $this->broadcast_address; } public function networkAddress(): string { return $this->network_address; } public function calculate(): NetUtils { $network_address = []; $broadcast_address = []; for($i = 0; $i <= count(($ipv4 = explode('.', $this->ipv4))) -1; $i++) $broadcast_address[] = ($network_address[] = (int) $ipv4[$i] & (int) ($subnet_mask = explode('.', $this->subnet_mask))[$i]) | (~(int) $subnet_mask[$i]) + hexdec('100'); $this->network_address = sprintf('%s', implode('.', $network_address)); $this->broadcast_address = sprintf('%s', implode('.', $broadcast_address)); return $this; } } $network = (new NetUtils)->setIpv4('130.45.34.36') ->setSubnetMask('255.255.240.0') ->calculate(); echo "Network Address: {$network->networkAddress()}\nBroadcast Address: {$network->broadcastAddress()}";
Output for 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.34, 8.2.0 - 8.2.30, 8.3.0 - 8.3.4, 8.3.6 - 8.3.27, 8.3.29 - 8.3.30, 8.4.1 - 8.4.14, 8.4.16 - 8.4.17, 8.5.0 - 8.5.2
Network Address: 130.45.32.0 Broadcast Address: 130.45.47.255
Output for 8.4.15
/bin/php-8.4.15: /usr/lib/libm.so.6: version `GLIBC_2.38' not found (required by /bin/php-8.4.15) /bin/php-8.4.15: /usr/lib/libm.so.6: version `GLIBC_2.35' not found (required by /bin/php-8.4.15) /bin/php-8.4.15: /usr/lib/libc.so.6: version `GLIBC_2.34' not found (required by /bin/php-8.4.15) /bin/php-8.4.15: /usr/lib/libc.so.6: version `GLIBC_2.38' not found (required by /bin/php-8.4.15)
Process exited with code 1.
Output for 8.3.28
/bin/php-8.3.28: /usr/lib/libm.so.6: version `GLIBC_2.38' not found (required by /bin/php-8.3.28) /bin/php-8.3.28: /usr/lib/libm.so.6: version `GLIBC_2.35' not found (required by /bin/php-8.3.28) /bin/php-8.3.28: /usr/lib/libc.so.6: version `GLIBC_2.34' not found (required by /bin/php-8.3.28) /bin/php-8.3.28: /usr/lib/libc.so.6: version `GLIBC_2.38' not found (required by /bin/php-8.3.28)
Process exited with code 1.
Output for 8.3.5
Warning: PHP Startup: Unable to load dynamic library 'sodium.so' (tried: /usr/lib/php/8.3.5/modules/sodium.so (libsodium.so.23: cannot open shared object file: No such file or directory), /usr/lib/php/8.3.5/modules/sodium.so.so (/usr/lib/php/8.3.5/modules/sodium.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0 Network Address: 130.45.32.0 Broadcast Address: 130.45.47.255
Output for 7.3.0 - 7.3.33
Parse error: syntax error, unexpected '?', expecting function (T_FUNCTION) or const (T_CONST) in /in/9ItZ3 on line 5
Process exited with code 255.

preferences:
186.48 ms | 410 KiB | 5 Q