引用 - PHP マニュアルのメモ

Aug 08, 2016 am 09:28 AM
amp function php var

引用とは

PHP における参照とは、Unix におけるファイル名とファイル自体に似た、同じ変数コンテンツが異なる変数名でアクセスされることを意味します (変数名はディレクトリ エントリであり、変数コンテンツはファイル自体です。つまり、同じファイルは異なるディレクトリ エントリでアクセスされます)。Unix ファイル システムのハード リンクと考えることができます。

ファイル システムには 2 種類のリンクがあり、1 つはハード リンクと呼ばれ、もう 1 つはシンボリック リンクと呼ばれます。デフォルトでは、ln コマンドはハード リンクを生成します。ハード接続とは、インデックス ノードを介した接続を指します。 Linux ファイル システムでは、ディスク パーティションに格納されているファイルには、その種類に関係なく、インデックス ノード番号 (InodeIndex) と呼ばれる番号が割り当てられます。 Linux では、同じインデックス ノードを指す複数のファイル名が存在します。通常、この接続はハード接続です。ハード リンクの機能は、ファイルに複数の有効なパス名を持たせることで、ユーザーが重要なファイルへのハード リンクを確立して「誤って削除」を防ぐことができます。その理由は、前述したように、ディレクトリのインデックス ノードへの接続が複数あるためです。 1 つの接続だけを削除しても、インデックス ノード自体や他の接続には影響しません。最後の接続が削除された場合にのみ、ファイルのデータ ブロックとディレクトリ接続が解放されます。つまり、ファイルは実際に削除されます。ハード接続に対応して、Lnux システムにはシンボリック リンク (Symbilc Link) と呼ばれる別の接続があり、ソフト リンクとも呼ばれます。ソフト リンク ファイルは Windows のショートカットに似ています。これは実際には特殊ファイルの一種です。シンボリック リンクでは、ファイルは実際には別のファイルの位置情報を含むテキスト ファイルです。

引用符は主に 3 つの目的で使用されます:

  • 同じコンテンツを指します
  • 変数を参照渡しする
  • 参照による返却

同じコンテンツを指します

Reference を使用すると、$a = & $b,意味着$a$b同じ変数を指すなど、2 つの変数が同じコンテンツを指すことができます。

未定義の変数が参照によって割り当てられた場合、参照パラメータによって渡された場合、または参照によって返された場合、変数は自動的に作成されます。たとえば、次のプログラムは変数 $a を自動的に作成します。

リーリー

PHP 5 以降、new 演算子は自動的に参照を返します。

参照渡し

変数の参照渡しは、次のコードによって実現できます。foo 関数の変数 $var は、foo函数中变量$var指向了和$a が指すのと同じ内容を指します。 。

リーリー

関数定義のみに参照記号 &,在函数调用时没有引用符号& が付いています。

参照による返却

参照を返すには、次の構文を使用します。

リーリー

参照による戻りはパラメータの受け渡しとは異なることに注意してください。& シンボルは関数定義と関数呼び出しの両方で使用されます (通常のコピーの代わりに参照が返されることを示します)。

引用解除

が参照の場合、変数名と変数の内容の間のバインディングが壊れるだけで、変数の内容は破壊されません。 unset()

引用の位置づけ

多くの PHP 構文構造は、

ポインターなどの参照メカニズムを通じて実装されます。 global引用和$this

使用される場合、

は常にそれを呼び出すオブジェクトへの参照になります。 global $var声明一个变量时,实际上是建立了一个到全局变量的引用,和$var = & $GLOBALS['var']作用是相同的。在对象方法中,$this

(全文終わり)

上記は、リファレンス - PHP マニュアル ノートを内容の側面も含めて紹介しています。PHP チュートリアルに興味のある友人の役に立てば幸いです。

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

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

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

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Dec 24, 2024 pm 04:42 PM

PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

CakePHP の日付と時刻 CakePHP の日付と時刻 Sep 10, 2024 pm 05:27 PM

Cakephp4 で日付と時刻を操作するには、利用可能な FrozenTime クラスを利用します。

CakePHP について話し合う CakePHP について話し合う Sep 10, 2024 pm 05:28 PM

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

CakePHP ファイルのアップロード CakePHP ファイルのアップロード Sep 10, 2024 pm 05:27 PM

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP バリデータの作成 CakePHP バリデータの作成 Sep 10, 2024 pm 05:26 PM

Validator は、コントローラーに次の 2 行を追加することで作成できます。

CakePHP のロギング CakePHP のロギング Sep 10, 2024 pm 05:26 PM

CakePHP へのログインは非常に簡単な作業です。使用する関数は 1 つだけです。 cronjob などのバックグラウンド プロセスのエラー、例外、ユーザー アクティビティ、ユーザーが実行したアクションをログに記録できます。 CakePHP でのデータのログ記録は簡単です。 log()関数が提供されています

PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 Dec 20, 2024 am 11:31 AM

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、

CakePHP クイックガイド CakePHP クイックガイド Sep 10, 2024 pm 05:27 PM

CakePHP はオープンソースの MVC フレームワークです。これにより、アプリケーションの開発、展開、保守がはるかに簡単になります。 CakePHP には、最も一般的なタスクの過負荷を軽減するためのライブラリが多数あります。

See all articles