Poonam Bhatt
Poonam Bhatt

Reputation: 10302

Difference between mb_substr and substr

Will it make any difference or impact on my result, if I use substr() instead of mb_substr() function?

As my server does not have support for mb_ functions, I have to replace it with substr()

Upvotes: 39

Views: 34904

Answers (3)

Saad Achemlal
Saad Achemlal

Reputation: 3738

If you have utf-8 encoding use mb_substr

Example :

echo substr("hi mémé", 0 , 5); // will print hi m�
echo mb_substr("hi mémé", 0 , 5); // will print hi mé

Upvotes: 95

Alin Breaban
Alin Breaban

Reputation: 284

It will impact your script if you work with multi-byte text that you substring from. If this is the case, I higly recommend enabling mb_* functions in your php.ini or do this ini_set("mbstring.func_overload", 2);

Upvotes: 16

Lawrence Cherone
Lawrence Cherone

Reputation: 46602

string substr ( string $string , int $start [, int $length ] )

Returns the portion of string specified by the start and length parameters.

string mb_substr ( string $str , int $start [, int $length [, string $encoding ]] )

Performs a multi-byte safe substr() operation based on number of characters. Position is counted from the beginning of str. First character's position is 0. Second character position is 1, and so on.

Upvotes: 5

Related Questions