Whats The use of function strtok() in PHP, how is better than other string function doing the same thing?
Solution 1
There is no other string function that does the same thing. Functions like explode
return the complete split string in an array. strtok
on the other hand only returns one piece at a time, with each subsequent call returning the next piece. This is potentially much more economic and memory preserving for large strings.
Solution 2
$addr=strtok($_SERVER['REQUEST_URI'],'?');
but do not call it "better". it's just another way to do it.
Solution 3
strtok
is preferred over other function when you have to split a string on more than one delimiter.
The other function that this like preg_split, split are regex based and will have associated overhead with them.
Solution 4
strtok()
is a great and very useful function but:
This function may return Boolean
FALSE
, but may also return a non-Boolean value which evaluates toFALSE
(PHP Manual).If you want to tokenize by only one letter,
explode(
) is much faster compared tostrtok()
(Source).If you have memory-usage critical solution, you should keep in mind, that strtok function holds input string parameter (or reference to it?) in memory after usage (Source).
OM The Eternity
M a PHP Programmer.. And an Experienced Tester, And a Vocalist...
Updated on July 14, 2022Comments
-
OM The Eternity almost 2 years
Whats the use of function
strtok()
in PHP? How is better than other string function doing the same thing?