OM The Eternity
OM The Eternity

Reputation: 16204

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

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

Upvotes: 27

Views: 12069

Answers (4)

simhumileco
simhumileco

Reputation: 34525

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).

Upvotes: 5

Your Common Sense
Your Common Sense

Reputation: 157839

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

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

Upvotes: 6

codaddict
codaddict

Reputation: 454970

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.

Upvotes: 7

deceze
deceze

Reputation: 522033

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.

Upvotes: 41

Related Questions