Sample text:
$text = \'Administration\\Controller\\UserController::Save\';
Task - extract everything before ::
Option 1:
Tested: explode with limit (solution3) Tested: preg_match
note: 10000 is not enough for me, so I run with 10 000 000 x 3
And the results are:
Did solution1 in 6.4486601352692 seconds.
Did solution2 in 9.4331159591675 seconds.
Did solution3 in 6.6791591644287 seconds.
Did solution4 in 9.3652379512787 seconds.
Did solution1 in 7.1072399616241 seconds.
Did solution2 in 10.755952835083 seconds.
Did solution3 in 7.5958750247955 seconds.
Did solution4 in 9.4377269744873 seconds.
Did solution1 in 7.4207429885864 seconds.
Did solution2 in 10.894104003906 seconds.
Did solution3 in 7.701789855957 seconds.
Did solution4 in 9.5081558227539 seconds.
The solution3 is take longer than the solution1!
ran on cli, 100% cpu usage on 1 thread