目次
[PHPソースコードの読み方]explode関数とimplode関数、explodeimplode
爆発する
$制限
$区切り文字
コアソースコード
php_explode
php_explode_negative_limit
爆裂
コアコード
php_implode
smart_str_appendl
ホームページ バックエンド開発 PHPチュートリアル [PHP ソース コードの読み取り]explode 関数と implode 関数、explodeimplode_PHP チュートリアル

[PHP ソース コードの読み取り]explode 関数と implode 関数、explodeimplode_PHP チュートリアル

Jul 12, 2016 am 08:52 AM
explode

[PHPソースコードの読み方]explode関数とimplode関数、explodeimplode

explode関数とimplode関数は、パラメータを取得した後に特定の文字に従って文字列を分割したり、パラメータの結果を使用したりするなど、主に文字列配列の操作に使用されます。配列 文字が結合されて文字列出力になります。これら 2 つの関数は PHP でよく使用されるため、その原理を理解する必要があります。

爆発する

リーリー

各要素は文字列の部分文字列であり、境界点として文字列 $delimiter で区切られます。

$制限

$limit が設定されており、それが正の数である場合、返される配列には最大で $limit 要素が含まれ、最後の要素には $string の残りが含まれます。

$limit が負の数の場合、最後の -$limit 要素を除くすべての要素を返します。

$limitが0の場合は1として扱われます。

$区切り文字

$delimiter が空の場合、関数は FALSE を返します。区切り文字が文字列内になく、$limit が負の数の場合は、空の配列が返されます。

コアソースコード

リーリー

特殊な状況を処理し、変数を初期化した後、次のステップのために php_explode/php_explode_negative_limit 関数を呼び出します。以下はphp_explode関数のソースコードです

php_explode

リーリー

実装では、add_next_index_stringlを呼び出して、取得した各文字列を配列return_valueに追加します。 add_next_index_string は、この関数のコア関数です。

リーリー

add_next_index_stringl 関数は、zend_hash_next_index_insert 関数を呼び出して、配列に str を挿入します。 php_explode_negative_limit 関数のソースコードを見てみましょう

php_explode_negative_limit

リーリー

php_explode_negative_limit も php_implode と同様の操作です。分離された文字列を見つけた後、add_next_index_string 関数を呼び出して、limit + 見つかった文字列を return_value 配列に追加します。

爆裂

リーリー

一次元配列の値を文字列に変換します

implode関数は2つのパラメータオーダーを受け取ることができます。

コアコード

リーリー

基礎となる実装では、implode 関数がパラメーターを処理した後、変換のために php_implode 関数を呼び出します。

php_implode

リーリー

php_implode 関数が配列の各要素を走査し、その型を決定し、必要な型変換を実行してから、smart_str_appendl 関数を呼び出して値を文字列に追加していることがわかります。 Smart_str_appendl は、implode 実装コードのコア関数です。

smart_str_appendl

リーリー

smart_str_appendl_ex は主に memcpy 関数を呼び出して文字列をコピーします。

限られた文体と限られた知識によるオリジナル記事 記事内に何か間違っている点がございましたら、お知らせください。

この記事がお役に立ちましたら、ぜひお勧めください。ありがとうございます^_^。

PHP ソースコードを読むためのその他の記事:

【PHPソースコード読み込み】strlen関数

[PHPソースコードの読み方] strpos、strstrとstripos、stristr関数

www.bkjia.com本当http://www.bkjia.com/PHPjc/1127592.html技術記事 【PHPソースコード読み込み】explode関数とimplode関数、explodeimplodeexplode関数とimplode関数は主に、パラメータを取得した後に特定の文字に従って文字列を分割するなど、文字列配列の操作に使用されます...
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PHPのexplode関数の使い方とエラー解決方法 PHPのexplode関数の使い方とエラー解決方法 Mar 10, 2024 am 09:18 AM

PHPのexplode関数の使い方とエラー解決方法

explode関数とimplode関数を使用して文字列を分割および結合する explode関数とimplode関数を使用して文字列を分割および結合する Jun 15, 2023 pm 08:42 PM

explode関数とimplode関数を使用して文字列を分割および結合する

PHP で展開関数を使用する場合の一般的なエラーと解決策 PHP で展開関数を使用する場合の一般的なエラーと解決策 Mar 11, 2024 am 08:33 AM

PHP で展開関数を使用する場合の一般的なエラーと解決策

PHP関数「explode」を使用して文字列を配列に分割する PHP関数「explode」を使用して文字列を配列に分割する Jul 24, 2023 pm 11:09 PM

PHP関数「explode」を使用して文字列を配列に分割する

PHP 関数「explode」を使用して文字列を複数の部分文字列に分割する PHP 関数「explode」を使用して文字列を複数の部分文字列に分割する Jul 25, 2023 pm 06:29 PM

PHP 関数「explode」を使用して文字列を複数の部分文字列に分割する

php 爆発でエラーが報告された場合はどうすればよいですか? php 爆発でエラーが報告された場合はどうすればよいですか? Jan 18, 2023 am 10:13 AM

php 爆発でエラーが報告された場合はどうすればよいですか?

PHPでexplode関数を使用して文字列を分割する方法 PHPでexplode関数を使用して文字列を分割する方法 Jun 26, 2023 pm 12:03 PM

PHPでexplode関数を使用して文字列を分割する方法

PHPのexplode()関数とは何ですか? PHPのexplode()関数とは何ですか? Sep 04, 2023 pm 01:01 PM

PHPのexplode()関数とは何ですか?

See all articles