ホームページ  >  記事  >  phpのsubstr関数の定義と使い方のまとめ(2022年)

phpのsubstr関数の定義と使い方のまとめ(2022年)

PHP中文网
PHP中文网オリジナル
2018-05-02 10:53:458238ブラウズ

phpのsubstr関数の定義と使い方のまとめ(2022年)

php substr は、php 言語に基づいて開発された、文字列の一部を返すことができる関数です。 php substrを使用すると文字化けが発生することがありますが、どうすれば解決できますか?

php substr 基本構文

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

文字をインターセプトする場合、substr 関数は GB2312 エンコードでエンコードされた場合、バイト単位でインターセプトします。は 3 バイトであるため、指定された長さの文字列をインターセプトするときに中国語の文字が切り捨てられると、返された結果が表示されるときに文字化けします。

phpのsubstrパラメータ

パラメータ の説明
文字列 は必須です。返される文字列の一部を指定します。
開始

必須。文字列内のどこから開始するかを指定します。

  • 正の数値 - 文字列内の指定された位置から始まります

  • 負の数値 - 文字列の末尾から指定された位置から始まります

  • 0 - 文字列内の最初の文字から始まります

長さ

オプション。返される文字列の長さを指定します。デフォルトは文字列の終わりまでです。

  • 正 - start引数の位置から返される長さ

  • 負 - 文字列の終わりから返される長さ

php substr 返回值

返回提取的子字符串, 或者在失败时返回 FALSE。

php substr 示例

1、基本使用

<?php
echo substr(&#39;abcdef&#39;, 1);     // bcdef
echo substr(&#39;abcdef&#39;, 1, 3);  // bcd
echo substr(&#39;abcdef&#39;, 0, 4);  // abcd
echo substr(&#39;abcdef&#39;, 0, 8);  // abcdef
echo substr(&#39;abcdef&#39;, -1, 1); // f

// 访问字符串中的单个字符
// 也可以使用中括号
$string = &#39;abcdef&#39;;
echo $string[0];                 // a
echo $string[3];                 // d
echo $string[strlen($string)-1]; // f
?>

2、高性能使用

<?php
class apple {
    public function __toString() {
        return "green";
    }
}

echo "1) ".var_export(substr("pear", 0, 2), true).PHP_EOL;
echo "2) ".var_export(substr(54321, 0, 2), true).PHP_EOL;
echo "3) ".var_export(substr(new apple(), 0, 2), true).PHP_EOL;
echo "4) ".var_export(substr(true, 0, 1), true).PHP_EOL;
echo "5) ".var_export(substr(false, 0, 1), true).PHP_EOL;
echo "6) ".var_export(substr("", 0, 1), true).PHP_EOL;
echo "7) ".var_export(substr(1.2e3, 0, 4), true).PHP_EOL;
?>

php substr 常见问题

1. 如何解决php substr乱码问题

简介:substr函数在截取字符时是按字节来截取的,中文字符在GB2312编码时为2个字节,utf-8编码时为3个字节,所以截取指定长度的字符串时如果截断了汉字,那么返回的结果显示出来便会出现乱码。

2. 关于PHP substr()函数的几个程序

简介:前面小编已经为大家分享了两篇关于phpsubstr()函数的一些用法技巧,现在和大家分享几个用PHP substr()函数写的程序,赶紧来get吧。

3. php substr()函数处理中文详解

简介:substr()函数中文版

4. php substr()函数字符串截取用法实例讲解

简介:这篇文章主要介绍了PHP中substr函数字符串截取用法,结合实例形式分析说明的PHP中substr函数的功能,定义与具体使用技巧,需要的朋友可以参考下

5. php substr()函数的用法

简介:这篇文章主要介绍了php中substr()函数参数说明及用法,以实例形式深入分析了substr()函数中的各个参数的含义,并举例说明了其对应的用法,需要的朋友可以参考下

6. 有关php substr()函数的文章推荐10篇

简介:本文实例讲述了PHP中字符串长度的截取用法。分享给大家供大家参考,具体如下:php中提供了很多使用函数,其中字符串的截取函数也不例外,而且功能也非常强大。<?php//文件编码格式为UTF-8$str='在公园船上,有一个漂亮的女孩,如果在湖中央发生点什么……';echo mb_substr($str,0,7,'UTF-8');//这里设...

7. php substr中文乱码解决办法

简介:php substr中文乱码解决办法

8. PHP substr截取字符串时,中文出现乱码的问题解决

简介::本篇文章主要介绍了PHP substr截取字符串时,中文出现乱码的问题解决,对于PHP教程有兴趣的同学可以参考一下。

9. php substr截断中文半个汉字乱码问题的解决方法

简介:php substr截断中文半个汉字乱码问题的解决方法

10. PHP substr 截取字符串出现乱码问题解决方法[utf8与gb2312]_PHP教程

简介:PHP substr 截取字符串出现乱码问题解决方法[utf8与gb2312]。substr --- 取得部份字符串 语法 : string substr (string string, int start [, int length]) 说明 : substr( )传回 string的一部份字符串,由参数 start和 length指定

11. 浅析PHP substr,mb_substr以及mb_strcut的区别和用法_PHP教程

简介:浅析PHP substr,mb_substr以及mb_strcut的区别和用法。PHP substr()函数可以 分割文字,但要分割的文字如果包括中文字符往往会遇到问题,这时可以用mb_substr()/mb_strcut这个函数,mb_substr() /mb_strcu

12. PHP substr_replace() 関数の構文とパラメーター_PHP チュートリアル

はじめに: PHP substr_replace() 関数の構文とパラメーター。 PHP substr_replace() 関数の構文 substr_replace(string,replacement,start,length) パラメータ 説明 string 必須。チェックする文字列を指定します。交換が必要です。挿入する内容を指定します

13. php substr(),explode(),strrev()_PHPチュートリアル

はじめに: php substr(),explode(),strrev()。 substr(str,start,length); 例: substr(php チュートリアルは非常に良い言語です,4,5); startstr の長さの場合、戻り値は () です。 ,26 ,5); s

14. php substr_replace は指定された位置の文字を置換し、メモリ破損の脆弱性があります_PHP チュートリアル

はじめに: php substr_replace は指定された位置の文字を置換し、メモリを保持します破損の脆弱性。 PHP チュートリアルの substr_replace は、指定された位置の文字を置換し、メモリ破損の脆弱性を示します。 ヒントとコメント 注: start が負の数で、length が start 以下の場合、length は 0 です。 $username =

15. PHP Substr ライブラリ関数の関数の紹介_PHP チュートリアル

はじめに: PHP Substr ライブラリ関数の関数の紹介。初心者 以下の PHP Substr ライブラリ関数プログラムは完璧ではありませんが、一般的な中国語 (GB18030、GB2312、BIG5) の処理には問題ありません。この関数は、UTF-8 でエンコードされたテキストには適していません。 //$str 文字

16. PHP で中国語をインターセプトするときの文字化けの問題を解決する substr_PHP チュートリアル

はじめに: PHP で中国語をインターセプトするときの文字化けの問題を解決する substr. 1を使用しています。mbstring拡張ライブラリのmb_substrインターセプトを使用すると文字化けを回避できます。 2. インターセプト関数を自分で作成しますが、効率は mbstring 拡張ライブラリを使用するほど高くありません。 3. これだけなら

17. PHP substr 関数の実装スキルの解説_PHP チュートリアル

はじめに: PHP substr 関数の実装スキルの解説。初心者の混乱を解消するために、substr 関数の使用法を整理し、いくつかの例を作成しました。専門家の方はスルーしてください。 まず、PHP substr 関数の構文を見てみましょう: string substr(string

18. PHP substr 関数の使用法を説明する_PHP チュートリアル

はじめに: PHP substr 関数の使用法を説明します。 PHP は現在最も一般的に使用されています。Web ページを動的に開発するための言語であり、プログラミングで最もよく使用されるのは文字列処理です。ここでは PHP の substr の使用方法について詳しく説明します。

には類似した実装がたくさんあります。

19. php substr() 関数。末尾が 4 の数字のフィルタリング_PHP チュートリアル

はじめに: php substr() 関数は、末尾が 4 の数字のフィルタリングを実装します。今日、顧客は 400 個の電話番号を生成したいと考えています。開始位置は 10000 の数値です。たとえば、数値は 10004 ですが、フィルターされた仮数は

20 になります。 strings_PHP チュートリアルの例

はじめに: php substr_replace は、文字列の一部を直接置換する str_replace に似ています。以下のエディターは、substr_replace() の操作方法を生徒に紹介します。

21. php substr() 関数。中国語の文字列の文字化け_PHP チュートリアル

はじめに: php の substr() 関数は、必要に応じて中国語の文字列をインターセプトします。 substr() を使用して英語の文字列全体をインターセプトする場合、中国語または英語が含まれている場合は問題ありません。これは悲劇になりますが、心配しないでください。他の方法を使用して解決できます。 PHPで中国語が文字化けする問題の解決方法substr_PHPチュートリアル

はじめに: PHP substr で中国語の文字化けをインターセプトする問題の解決策。 PHP には、substr、mb_substr、mb_strcut 関数などのいくつかの文字インターセプト関数が用意されています。PHP 初心者の中には、中国語の文字をインターセプトするために substr を使用する人もいますが、その場合、中国語の文字が文字化けしてしまうことがあります

23。 substr_replace() 関数のいくつかのアプリケーション例_PHP チュートリアル

はじめに: PHP substr_replace() 関数のいくつかのアプリケーション例。 substr_replace() 関数の概要 substr_replace() 関数は、文字列の一部を別の文字列に置き換えます。 構文: substr_replace(string,replacement,start,length) パラメータ文字列、must

24. PHP substr() 関数のいくつかのプログラム アプリケーション_PHP チュートリアル

はじめに: PHP substr() 関数プログラムのいくつかのプログラム アプリケーション応用。 substr() 関数の概要 substr() 関数は文字列の一部を返します。 構文: substr(文字列,開始,長さ)。文字列: 必須。返される文字列の一部を指定します。開始: 必須

25. php substr,iconv_substr,mb_substr_PHP チュートリアル

はじめに: php substr,iconv_substr,mb_substr。 PHP が中国語の文字列をインターセプトする場合、多くの場合、iconv_substr と mb_substr の 2 つの関数が使用されます。これら 2 つの関数のどちらを選択すればよいでしょうか。この記事で紹介した事例を参考にすると理解できるでしょう。

PHP 関連の知識については、PHP 中国語 Web サイト をご覧ください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。