This time I will bring you a detailed explanation of the steps to use mb_strpos in PHP. What are the precautions when using mb_strpos in PHP? Here are practical cases, let’s take a look.
(PHP 4 >= 4.0.6, PHP 5, PHP 7)
mb_strpos — Find position of first occurrence of string in a string
mb_strpos — Finds the first occurrence of string in another string
int mb_strpos ( string $haystack , string $needle [, int $offset = 0 [, string $encoding = mb_internal_encoding() ]] ) //Finds position of the first occurrence of a string in a string. // 查找 string 在一个 string 中首次出现的位置。 //Performs a multi-byte safe strpos() operation based on number of characters. The first character's position is 0, the second character position is 1, and so on. // 基于字符数执行一个多字节安全的 strpos() 操作。 第一个字符的位置是 0,第二个字符的位置是 1,以此类推。
haystack
The string being checked.
The string being checked.
needle
The string to find in haystack. In contrast with strpos(), numeric values are not applied as the ordinal value of a character.
Look for this string in haystack. Unlike strpos(), numeric values are not treated as character sequential values.
offset
The search offset. If it is not specified, 0 is used. A negative offset counts from the end of the string.
The offset of the search position. If this parameter is not provided, 0 will be used. Negative offsets will be counted from the end of the string.
encoding
The encoding parameter is the character encoding. If it is omitted, the internal character encoding value will be used.
encoding parameter is character encoding. If omitted, the internal character encoding is used.
Return Values
Returns the numeric position of the first occurrence of needle in the haystack string. If needle is not found, it returns FALSE .
Returns the value of the first occurrence of needle in the haystack of string. If needle is not found, it returns FALSE.
Example
<?php /** * Created by PhpStorm. * User: zhangrongxiang * Date: 2018/2/2 * Time: 下午11:16 */ $str = "Hello World! Hello PHP"; $pos = mb_strpos( $str, "Hello", 0, mb_internal_encoding() ); echo $pos . PHP_EOL;//0 $pos = mb_strpos( $str, "Hello", 2, mb_internal_encoding() ); echo $pos . PHP_EOL;//13 function mb_str_replace( $haystack, $search, $replace, $offset = 0, $encoding = 'auto' ) { $len_sch = mb_strlen( $search, $encoding ); $len_rep = mb_strlen( $replace, $encoding ); while ( ( $offset = mb_strpos( $haystack, $search, $offset, $encoding ) ) !== false ) { $haystack = mb_substr( $haystack, 0, $offset, $encoding ) . $replace . mb_substr( $haystack, $offset $len_sch, $le = mb_strlen( $haystack ) - mb_strlen( $search ) mb_strlen( $replace ), $encoding ); //echo $le.PHP_EOL; $offset = $offset $len_rep; if ( $offset > mb_strlen( $haystack, $encoding ) ) { break; } } return $haystack; } $replace = mb_str_replace( "hello world !hello world !hello world !hello world !", "hello", "hi" ); echo $replace . PHP_EOL; //hi world !hi world !hi world !hi world ! //hi PHP !hi PHP !hi PHP !hi PHP ! echo mb_str_replace( $replace, "world", "PHP" ) . PHP_EOL; echo mb_str_replace( $replace, " ", "-" ) . PHP_EOL; //PHP是世界上最好的语言
The above is the detailed content of Detailed explanation of the steps to use mb_strpos in PHP. For more information, please follow other related articles on the PHP Chinese website!