PHPでのexplodeとsplitの違いの分析

伊谢尔伦
リリース: 2023-03-02 17:18:01
オリジナル
1097 人が閲覧しました

今日、分割を使用しているときにいくつかの問題が発生しました。関数についてまだ深く理解していないので、クローズアップしてマークを付けておきます

まず、2つのメソッドの定義を見てみましょう:

関数プロトタイプ: array split (string $pattern, string $string [, int $limit])

関数プロトタイプ :arrayexplode (string $separator, string $string [, int $limit])

一見すると違いはなく、同じ関数に見えます。私はこの間違いを犯しました。 2 つの関数の最初のパラメータは文字列 $pattern と文字列区切り文字であることに注意してください。1 つは $pattern が通常の文字列であり、もう 1 つは $separator が通常の文字列であることです。

次のコードを見てください:

$test = end(explode('.', 'abc.txt'));
echo $test;//output txt
ログイン後にコピー

次のように置き換えます:

$test1 = end(split('.','abc.txt'));
echo $test1;//no output
ログイン後にコピー

分割の正しい使用方法は次のとおりです: エスケープ記号を追加します

$test1 = end(split('\.','abc.txt'));
echo $test1;//output txt
ログイン後にコピー

分析: 「.」記号は正規表現のキーワードであるため、 Split は無効ですが、Explore は有効です。


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