国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

PHP之mb_substr使用

eechen / 1816人閱讀

摘要:獲取部分字符串根據(jù)字符數(shù)執(zhí)行一個多字節(jié)安全的操作。位置是從的開始位置進行計數(shù)。第一個字符的位置是。從該中提取子字符串。中要使用的最大字符數(shù)。如果省略,則使用內(nèi)部字符編碼。函數(shù)根據(jù)和參數(shù)返回中指定的部分。

mb_substr

(PHP 4 >= 4.0.6, PHP 5, PHP 7)

mb_substr — Get part of string

mb_substr — 獲取部分字符串

Description
string mb_substr ( 
    string $str ,
    int $start [,
    int $length = NULL [, 
    string $encoding = mb_internal_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.
//根據(jù)字符數(shù)執(zhí)行一個多字節(jié)安全的 substr() 操作。 位置是從 str 的開始位置進行計數(shù)。 第一個字符的位置是 0。第二個字符的位置是 1,以此類推。
Parameters str

The string to extract the substring from.

從該 string 中提取子字符串。

start

If start is non-negative, the returned string will start at the start"th position in str, counting from zero. For instance, in the string "abcdef", the character at position 0 is "a", the character at position 2 is "c", and so forth.

如果 start 不是負數(shù),返回的字符串會從 str 第 start 的位置開始,從 0 開始計數(shù)。舉個例子,字符串 "abcdef",位置 0 的字符是 "a",位置 2 的字符是 "c",以此類推。

If start is negative, the returned string will start at the start"th character from the end of str.

如果 start 是負數(shù),返回的字符串是從 str 末尾處第 start 個字符開始的。

length

Maximum number of characters to use from str. If omitted or NULL is passed, extract all characters to the end of the string.

str 中要使用的最大字符數(shù)。如果省略了此參數(shù)或者傳入了 NULL,則會提取到字符串的尾部。

encoding

The encoding parameter is the character encoding. If it is omitted, the internal character encoding value will be used.

encoding 參數(shù)為字符編碼。如果省略,則使用內(nèi)部字符編碼。

Return Values

mb_substr() returns the portion of str specified by the start and length parameters.

mb_substr() 函數(shù)根據(jù) start 和 length 參數(shù)返回 str 中指定的部分。

Changelog

5.4.8 - Passing NULL as length extracts all characters to the end of the string. Prior to this version NULL was treated the same as 0.

Examples
 0  length > 0*/
$mystring = mb_substr( $string, 5, 1 );
echo $mystring . PHP_EOL; // 5
$mystring = mb_substr( $string, 5, 2 );
echo $mystring . PHP_EOL; // 56
$mystring = mb_substr( $string, 10, 2 );
echo $mystring . PHP_EOL; // 你好

/** start < 0  length > 0*/
$mystring = mb_substr( $string, - 2, 2 );
echo $mystring . PHP_EOL; // 你好
echo "mb_strlen : " . mb_strlen( $string ) . PHP_EOL;//12
$mystring = mb_substr( $string, - mb_strlen( $string ), 2 );
echo $mystring . PHP_EOL; // 01
$mystring = mb_substr( $string, - 3, 2 );
echo $mystring . PHP_EOL; // 9你

/** start > 0  length <  0*/
$mystring = mb_substr( $string, 5, - 1 );
echo $mystring . PHP_EOL; // 56789你
$mystring = mb_substr( $string, 0, - mb_strlen( $string ) + 1 );
echo $mystring . PHP_EOL; // 0
$mystring = mb_substr( $string, 5, - 5 );
echo $mystring . PHP_EOL; // 56

/** start < 0  length <  0*/
$mystring = mb_substr( $string, - 10, - 1 );
echo $mystring . PHP_EOL; // 23456789你
$mystring = mb_substr( $string, - 5, - 1 );
echo $mystring . PHP_EOL; // 789你

function mb_ucfirst( $str, $enc = "utf-8" ) {
    return mb_strtoupper( mb_substr( $str, 0, 1, $enc ), $enc ) . mb_substr( $str, 1, mb_strlen( $str, $enc ), $enc );
}

echo mb_ucfirst( "hello world 你好 中國" ) . PHP_EOL; //Hello world 你好 中國

/**
 * @param $string
 * @param string $encoding
 *
 * @return array
 */
function get_character_classes( $string, $encoding = "UTF-8" ) {
    $current_encoding = mb_internal_encoding();
    mb_internal_encoding( $encoding );
    $has          = array();
    $stringlength = mb_strlen( $string, $encoding );
    for ( $i = 0; $i < $stringlength; $i ++ ) {
        $c = mb_substr( $string, $i, 1 );
        if ( ( $c >= "0" ) && ( $c <= "9" ) ) {
            $has["numeric"] = "numeric";
        } else if ( ( $c >= "a" ) && ( $c <= "z" ) ) {
            $has["alpha"]      = "alpha";
            $has["alphalower"] = "alphalower";
        } else if ( ( $c >= "A" ) && ( $c <= "Z" ) ) {
            $has["alpha"]      = "alpha";
            $has["alphaupper"] = "alphaupper";
        } else if ( ( $c == "$" ) || ( $c == "£" ) ) {
            $has["currency"] = "currency";
        } else if ( ( $c == "." ) && ( $has["decimal"] ) ) {
            $has["decimals"] = "decimals";
        } else if ( $c == "." ) {
            $has["decimal"] = "decimal";
        } else if ( $c == "," ) {
            $has["comma"] = "comma";
        } else if ( $c == "-" ) {
            $has["dash"] = "dash";
        } else if ( $c == " " ) {
            $has["space"] = "space";
        } else if ( $c == "/" ) {
            $has["slash"] = "slash";
        } else if ( $c == ":" ) {
            $has["colon"] = "colon";
        } else if ( ( $c >= " " ) && ( $c <= "~" ) ) {
            $has["ascii"] = "ascii";
        } else {
            $has["binary"] = "binary";
        }
    }
    mb_internal_encoding( $current_encoding );
    
    return $has;
}

$string = "1234asdfA£^_{}|}~????";
foreach ( get_character_classes( $string ) as $k => $v ) {
    echo $k . " : " . $v . PHP_EOL;
}
//numeric : numeric
//alpha : alpha
//alphalower : alphalower
//alphaupper : alphaupper
//currency : currency
//ascii : ascii
//binary : binary
文章參考

http://php.net/manual/en/func...

轉(zhuǎn)載注明出處

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/28202.html

相關(guān)文章

  • PHP】substr()和mb_substr()的差別

    摘要:最近遇到一個問題,太久沒有使用來對字符串進行處理根據(jù)字符數(shù)截取今天周五了今天周五天周五了了了 最近遇到一個問題,太久沒有使用substr來對字符串進行處理 mb_substr(); // 根據(jù)字符數(shù)截取 $str = 今天周五了friday; echo mb_substr($str, 0, 4); // 今天周五 echo mb_substr($str, 1, 4); // 天周...

    greatwhole 評論0 收藏0
  • PHP 字符串截取字符串函數(shù)

    摘要:應(yīng)用場景從數(shù)據(jù)庫讀取產(chǎn)品標題過長時,會導(dǎo)致布局混亂,我們可以使用字符串截斷函數(shù)進行截斷,用代替截斷部分。 應(yīng)用場景 從數(shù)據(jù)庫讀取產(chǎn)品標題過長時,會導(dǎo)致布局混亂,我們可以使用字符串截斷函數(shù)進行截斷,用...代替截斷部分。 函數(shù)代碼 /** * 字符截取(對中文、英文都可以進行截取) * @param string $string 字符串 * @...

    godiscoder 評論0 收藏0
  • PHP字符串操作

    摘要:字符串變量被解析。很顯然,代表,代表獲取字符串的長度對于英文數(shù)字字母。你好,截取字符串對于純英文字符,可以使用對于中文字符,可以使用例如你好,世界查找字符串查找字符串,有內(nèi)置函數(shù)代表,應(yīng)該代表。當然也有函數(shù)用于處理其他編碼的字符串。 1. 單引號和雙引號 PHP可以在單引號或者雙引號中包含字符串。但是單引號和雙引號有所區(qū)別。 單引號包含的內(nèi)容會被認為是普通字符串 雙引號中允許包含字符...

    taoszu 評論0 收藏0
  • PHP 源碼探秘 - 為什么 trim 會導(dǎo)致亂碼

    摘要:我的博客運行以下代碼互聯(lián)網(wǎng)產(chǎn)品我們可能以為會得到的結(jié)果是互聯(lián)網(wǎng)產(chǎn)品,實際結(jié)果是互聯(lián)網(wǎng)產(chǎn)。所以在執(zhí)行的時候,通過字節(jié)比對,會將去掉,導(dǎo)致了最后出現(xiàn)了亂碼。 我的博客 https://mengkang.net/1039.html 運行以下代碼: $tag = 互聯(lián)網(wǎng)產(chǎn)品、; $text = rtrim($tag, 、); print_r($text); 我們可能以為會得到的結(jié)果是互聯(lián)網(wǎng)產(chǎn)品...

    xbynet 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<