3v4l.org

run code in 300+ PHP versions simultaneously
<?php $urls = ['document/âne', 'ドキュメント/ウィスキー', '/документ/водка', '/etc/ôöœt', '/etc/', 'etc/fstab', 'etc/', '/fstab', 'fstab']; $format = "%-25s %-20s %s\n"; printf($format, '$url', 'basename($url)', 'substr(strrchr("/$url", "/"), 1)'); echo str_repeat('-', 80), PHP_EOL; foreach ($urls as $url) { printf($format, $url, fix_offset($url) .basename($url), fix_offset(basename($url)).substr(strrchr("/$url", '/'), 1)); } function fix_offset($str) { return str_repeat(' ', strlen($str) - mb_strlen($str)); }
Output for 8.1.23 - 8.1.34, 8.2.7 - 8.2.30, 8.3.0 - 8.3.30, 8.4.1 - 8.4.18, 8.5.0 - 8.5.3
$url basename($url) substr(strrchr("/$url", "/"), 1) -------------------------------------------------------------------------------- document/âne âne âne ドキュメント/ウィスキー ウィスキー ウィスキー /документ/водка водка водка /etc/ôöœt ôöœt ôöœt /etc/ etc etc/fstab fstab fstab etc/ etc /fstab fstab fstab fstab fstab fstab
Output for 7.4.33
$url basename($url) substr(strrchr("/$url", "/"), 1) -------------------------------------------------------------------------------- document/âne ne âne ドキュメント/ウィスキー ウィスキー /документ/водка водка /etc/ôöœt t ôöœt /etc/ etc etc/fstab fstab fstab etc/ etc /fstab fstab fstab fstab fstab fstab
Output for 5.4.16
$url basename($url) substr(strrchr("/$url", "/"), 1) -------------------------------------------------------------------------------- document/âne ne âne ドキュメント/ウィスキー ウィスキー /документ/водка водка /etc/ôöœt t ôöœt /etc/ etc etc/fstab fstab fstab etc/ etc /fstab fstab fstab fstab fstab fstab
Output for 5.3.3
Parse error: syntax error, unexpected '[' in /in/DlOg4 on line 3
Process exited with code 255.

preferences:
68.93 ms | 923 KiB | 4 Q