Whats The use of function strtok() in PHP, how is better than other string function doing the same thing?

StackOverflow https://stackoverflow.com/questions/2528168

  •  22-09-2019
  •  | 
  •  

Question

Whats the use of function strtok() in PHP? How is better than other string function doing the same thing?

Was it helpful?

Solution

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.

OTHER TIPS

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.

$addr=strtok($_SERVER['REQUEST_URI'],'?');

but do not call it "better". it's just another way to do it.

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 to FALSE (PHP Manual).

  • If you want to tokenize by only one letter, explode() is much faster compared to strtok() (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).

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top