3v4l.org

run code in 300+ PHP versions simultaneously
<?php function saveCityZipCode(string $city, string $zipCode): void { var_dump($city, $zipCode); } $address = 'Studio 5, One Infinite Loop, Cupertino 95014'; preg_match('/\s*([^,]+?)\s*(\d+)$/', $address, $m) or throw new Exception('Failed to parse city and zipcode of address'); saveCityZipCode(...array_slice($m, 1)); // or just saveCityZipCode($m[1], $m[2]); // named capture groups can be spread too (but I probably wouldn't until PHP makes a PREG_NO_INDEXED_KEYS flag). echo "\n---\n"; preg_match('/\s*(?<city>[^,]+?)\s*(?<zipCode>\d+)$/', $address, $m) or throw new Exception('Failed to parse city and zipcode of address'); saveCityZipCode(...array_filter($m, fn($k) => !is_int($k), ARRAY_FILTER_USE_KEY));
Output for git.master_jit, git.master, rfc.property-hooks
string(9) "Cupertino" string(5) "95014" --- string(9) "Cupertino" string(5) "95014"

This tab shows result from various feature-branches currently under review by the php developers. Contact me to have additional branches featured.

Active branches

Archived branches

Once feature-branches are merged or declined, they are no longer available. Their functionality (when merged) can be viewed from the main output page


preferences:
36.9 ms | 405 KiB | 5 Q