3v4l.org

run code in 300+ PHP versions simultaneously
<?php $data[] = 0; $data[] = 0.0; $data[] = '0'; $data[] = NULL; $data[] = false; $data[] = true; $data[] = 1; $data[] = 1.1; $data[] = 0.1; $data[] = 'STARTED'; foreach ($data as $value) { if (empty($value) && (string)$value !== '0') { echo var_dump($value) . " is empty\r\n"; } else { echo var_dump($value) . " is not empty\r\n"; } }
Output for 4.3.0 - 4.3.11, 4.4.0 - 4.4.9, 5.0.0 - 5.0.5, 5.1.0 - 5.1.6, 5.2.0 - 5.2.17, 5.3.0 - 5.3.29, 5.4.0 - 5.4.45, 5.5.0 - 5.5.37, 5.6.0 - 5.6.28, 7.0.0 - 7.0.20, 7.1.0 - 7.1.7, 7.2.29 - 7.2.33, 7.3.12 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.6
int(0) is not empty float(0) is not empty string(1) "0" is not empty NULL is empty bool(false) is empty bool(true) is not empty int(1) is not empty float(1.1) is not empty float(0.1) is not empty string(7) "STARTED" is not empty

preferences:
299.32 ms | 406 KiB | 347 Q