3v4l.org

run code in 300+ PHP versions simultaneously
<?php var_dump([ 'compared to empty' => [ "strcmp('', 'a')" => strcmp('', 'a'), "strcmp('', str_repeat('a', 2))" => strcmp('', str_repeat('a', 2)), "strcmp('', str_repeat('a', 8))" => strcmp('', str_repeat('a', 8)), ], 'same leading substring (no mismatch, but unequal length' => [ "strcmp('a', str_repeat('a', 2))" => strcmp('a', str_repeat('a', 2)), "strcmp('a', str_repeat('a', 8))" => strcmp('a', str_repeat('a', 8)), "strcmp('aaa', str_repeat('aaa', 2))" => strcmp('aaa', str_repeat('aaa', 2)), "strcmp('aaa', str_repeat('aaa', 8))" => strcmp('aaa', str_repeat('aaa', 8)), "strcmp('aaa', str_repeat('aaa', 20))" => strcmp('aaa', str_repeat('aaa', 20)), ], 'equal length parial match' => [ "strcmp('a', 'z')" => strcmp('a', 'z'), "strcmp('aaaa', 'aaaz')" => strcmp('aaaa', 'aaaz'), "strcmp('aaaaaa', 'aaazaa')" => strcmp('aaaaaa', 'aaazaa'), "strcmp('aaaaaa', 'aaazzz')" => strcmp('aaaaaa', 'aaazzz'), "strcmp(str_repeat('a', 16), str_repeat('a', 8) . str_repeat('z', 8))" => strcmp(str_repeat('a', 16), str_repeat('a', 8) . str_repeat('z', 8)), ], 'unequal length partial match' => [ "strcmp('a', 'za')" => strcmp('a', 'za'), "strcmp('a', 'az')" => strcmp('a', 'az'), "strcmp('aaa', 'aaza')" => strcmp('aaa', 'aaza'), "strcmp('aaa', 'aazz')" => strcmp('aaa', 'aazz'), "strcmp('aaa', 'az')" => strcmp('aaa', 'az'), "strcmp(str_repeat('a', 7), str_repeat('a', 7) . str_repeat('z', 7))" => strcmp(str_repeat('a', 7), str_repeat('a', 7) . str_repeat('z', 7)), ], 'equal length, no match' => [ "strcmp('a', 'z')" => strcmp('a', 'z'), "strcmp('aaa', 'zaa')" => strcmp('aaa', 'zaa'), "strcmp('aaa', 'zzz')" => strcmp('aaa', 'zzz'), "strcmp(str_repeat('a', 8), 'z' . str_repeat('a', 7))" => strcmp(str_repeat('a', 8), 'z' . str_repeat('a', 7)), "strcmp(str_repeat('a', 8), str_repeat('z', 8))" => strcmp(str_repeat('a', 8), str_repeat('z', 8)), ], 'unequal length, no match' => [ "strcmp('a', 'za')" => strcmp('a', 'za'), "strcmp('aaa', 'zaaaa')" => strcmp('aaa', 'zaaaa'), "strcmp('aaa', 'zzzzz')" => strcmp('aaa', 'zzzzz'), "strcmp(str_repeat('a', 8), 'z' . str_repeat('a', 8))" => strcmp(str_repeat('a', 8), 'z' . str_repeat('a', 8)), "strcmp(str_repeat('a', 8), str_repeat('z', 10))" => strcmp(str_repeat('a', 8), str_repeat('z', 10)), ] ]);
Output for git.master_jit, git.master, rfc.property-hooks
array(6) { ["compared to empty"]=> array(3) { ["strcmp('', 'a')"]=> int(-1) ["strcmp('', str_repeat('a', 2))"]=> int(-1) ["strcmp('', str_repeat('a', 8))"]=> int(-1) } ["same leading substring (no mismatch, but unequal length"]=> array(5) { ["strcmp('a', str_repeat('a', 2))"]=> int(-1) ["strcmp('a', str_repeat('a', 8))"]=> int(-1) ["strcmp('aaa', str_repeat('aaa', 2))"]=> int(-1) ["strcmp('aaa', str_repeat('aaa', 8))"]=> int(-1) ["strcmp('aaa', str_repeat('aaa', 20))"]=> int(-1) } ["equal length parial match"]=> array(5) { ["strcmp('a', 'z')"]=> int(-25) ["strcmp('aaaa', 'aaaz')"]=> int(-1) ["strcmp('aaaaaa', 'aaazaa')"]=> int(-1) ["strcmp('aaaaaa', 'aaazzz')"]=> int(-1) ["strcmp(str_repeat('a', 16), str_repeat('a', 8) . str_repeat('z', 8))"]=> int(-25) } ["unequal length partial match"]=> array(6) { ["strcmp('a', 'za')"]=> int(-25) ["strcmp('a', 'az')"]=> int(-1) ["strcmp('aaa', 'aaza')"]=> int(-25) ["strcmp('aaa', 'aazz')"]=> int(-25) ["strcmp('aaa', 'az')"]=> int(-6425) ["strcmp(str_repeat('a', 7), str_repeat('a', 7) . str_repeat('z', 7))"]=> int(-1) } ["equal length, no match"]=> array(5) { ["strcmp('a', 'z')"]=> int(-25) ["strcmp('aaa', 'zaa')"]=> int(-1638400) ["strcmp('aaa', 'zzz')"]=> int(-1644825) ["strcmp(str_repeat('a', 8), 'z' . str_repeat('a', 7))"]=> int(-25) ["strcmp(str_repeat('a', 8), str_repeat('z', 8))"]=> int(-25) } ["unequal length, no match"]=> array(5) { ["strcmp('a', 'za')"]=> int(-25) ["strcmp('aaa', 'zaaaa')"]=> int(-1638400) ["strcmp('aaa', 'zzzzz')"]=> int(-1644825) ["strcmp(str_repeat('a', 8), 'z' . str_repeat('a', 8))"]=> int(-25) ["strcmp(str_repeat('a', 8), str_repeat('z', 10))"]=> int(-25) } }

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:
37.46 ms | 411 KiB | 5 Q