ホームページ > バックエンド開発 > PHPの問題 > PHPで中国語の文字列インターセプトを実装する方法

PHPで中国語の文字列インターセプトを実装する方法

青灯夜游
リリース: 2023-03-11 16:34:01
オリジナル
6940 人が閲覧しました

PHP では、mb_substr() 関数を使用して中国語の文字列をインターセプトできます。この関数は、文字列の指定された部分をインターセプトできます。この関数は、英語の文字だけでなく、中国語の文字にも有効です。構文形式は「mb_substr($str,$start,$length,$encoding)」です。

PHPで中国語の文字列インターセプトを実装する方法

このチュートリアルの動作環境: Windows7 システム、PHP7.1 バージョン、DELL G3 コンピューター

mb_substr() 関数は次から選択できます。 string 指定された部分をインターセプトします。substr() 関数とは異なり、mb_substr() 関数は英語文字だけでなく中国語文字にも有効です。その構文形式は次のとおりです:

mb_substr($str , $start [, $length = NULL [, $encoding = mb_internal_encoding()]])
ログイン後にコピー

パラメータの説明

  • $str: インターセプトする文字列、その文字列には少なくとも 1 つの文字が含まれます;
  • $start: インターセプトされた文字列の開始位置;
    • $start が負の数でない場合、$start が負の数である場合、文字列は $str の $start 文字からインターセプトされます;
    • $start が負の数である場合、文字列は $str の $start 文字からインターセプトされます$str の終わりから $start 文字まで。位置のインターセプトを開始します。
  • $length: インターセプトされた文字列の長さを示すオプションのパラメーター;
    • $length が正の数の場合、文字列は $start から逆方向にインターセプトされます。位置 $length 文字まで;
    • $length が負の数の場合、$string の末尾の $length 文字が省略されます ($start が負の数の場合は、末尾から数えられます)文字列の);
    • $length の値が NULL であるか、$length が省略されている場合は、文字列の末尾まで切り取られます。
  • $encoding: $str の文字エンコーディングを示すオプションのパラメーター。省略した場合は、内部の文字エンコーディングが使用されます。

[例] mb_substr() 関数を使用して、指定した長さの中国語文字列をインターセプトします。

<?php
    $str = &#39;欢迎访问PHP中文网,一个在线学习编程的网站。&#39;;
    echo mb_substr($str, 4).&#39;<br>&#39;;
    echo mb_substr($str, -19).&#39;<br>&#39;;
    echo mb_substr($str, 4, 6).&#39;<br>&#39;;
    echo mb_substr($str, 4, -16).&#39;<br>&#39;;
    echo mb_substr($str, -19, -13).&#39;<br>&#39;;
    echo mb_substr($str, -19, 6).&#39;<br>&#39;;
    var_dump(mb_substr($str, 40));
    echo &#39;<br>&#39;;
    var_dump(mb_substr($str, 4, null));
?>
ログイン後にコピー

実行結果は以下のとおりです。

PHP中文网,一个在线学习编程的网站。
PHP中文网,一个在线学习编程的网站。
PHP中文网
PHP
PHP中文网
PHP中文网
string(0) ""
string(55) "PHP中文网,一个在线学习编程的网站。"
ログイン後にコピー

[例] mb_substr()関数を使用して、指定した長さの文字列を切り出し、余分な部分を「...」に置き換えます。

<?php
    $str = &#39;PHP中文网是一个在线学习编程的网站,我们发布了多套文字教程,它们都通俗易懂,深入浅出。&#39;;
    if(strlen($str)>18){
        echo mb_substr($str, 0, 18).&#39;...&#39;;
    }else{
        echo $str;
    }
?>
ログイン後にコピー

実行結果は次のとおりです:

PHP中文网是一个在线学习编程的网站...
ログイン後にコピー

推奨される学習: 「PHP ビデオ チュートリアル

以上がPHPで中国語の文字列インターセプトを実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート