PHPにファイルをインポートするにはどのような方法がありますか? PHPでファイルを導入する4つの方法(コード)を紹介
PHP にファイルをインポートするにはどのような方法がありますか? PHP インポート ファイルには 4 つのステートメントがあります: include、require、include_once、require_once PHP インポート ファイルの具体的な例を見てみましょう。
基本構文
require: require 関数は通常、PHP スクリプトの先頭に配置され、実行されます。 PHP の前に まず、require で指定されたインポートされたファイルを読み込み、インポートされたスクリプト ファイルをインクルードして実行してみます。 require の仕組みは PHP の実行効率を高めるためのもので、同じ Web ページ内で一度解釈されると、2 回目は解釈されなくなります。ただし、同様に、インポートされたファイルを繰り返し解釈しないため、PHP でファイルを導入するためにループまたは条件ステートメントを使用する場合は include を使用する必要があります。
include: は、PHP スクリプト内のどこにでも (通常はプロセス コントロールの処理部分に) 配置できます。 include で指定したファイルに対して PHP スクリプトを実行すると、インクルードされて実行が試行されます。この方法により、プログラムの実行プロセスを簡略化できます。同じファイルに 2 回目に遭遇した場合でも、PHP は再度それを再解釈します。 include の実行効率は、require の実行効率よりもはるかに低くなります。同時に、インポートされたファイルにユーザー定義関数が含まれている場合、 PHP では、解釈プロセス中に関数定義が繰り返されるという問題が発生します。
require_once/include_once: これらの関数は、それぞれ require/include と同じです。違いは、実行時に、ターゲット コンテンツが以前にインポートされているかどうかを最初にチェックすることです。インポートされているため、同じコンテンツが再度導入されることはありません。
#お互いの違い
include と require:
include には戻り値がありますが、require には戻り値がありません include がファイルのロードに失敗すると、警告 (E_WARNING) が生成され、エラー発生後もスクリプトは実行を継続します。そのため、実行を継続して結果をユーザーに出力したい場合には include を使用します。//test1.php <?php include './tsest.php'; echo 'this is test1'; ?> //test2.php <?php echo 'this is test2\n'; function test() { echo 'this is test\n'; } ?> //结果: this is test1
//test1.php <?php require './tsest.php'; echo 'this is test1'; ?> //test2.php <?php echo 'this is test2\n'; function test() { echo 'this is test\n'; } ?>
include と include_once:
include でロードされたファイルは、重複する場合、 include ステートメントがある限り、(繰り返しロードが発生する可能性がある場合でも) 1 回ロードされます。 include_once がファイルをロードするとき、前のコードがロードされているかどうかを判断する内部判断メカニズムが存在します。ここで注意する必要があるのは、include_once はファイルの内容ではなく、同じパスのファイルが以前にインポートされているかどうかに基づいて判断されることです (つまり、インポートされる 2 つのファイルの内容が同じです)。 、 include_once を使用すると、依然として 2 つが導入されます)。//test1.php <?php include './test2.php'; echo 'this is test1'; include './test2.php'; ?> //test2.php <?php echo 'this is test2'; ?> //结果: this is test2this is test1this is test2 //test1.php <?php include './test2.php'; echo 'this is test1'; include_once './test2.php'; ?> //test2.php <?php echo 'this is test2'; ?> //结果: this is test2this is test1 //test1.php <?php include_once './test2.php'; echo 'this is test1'; include './test2.php'; ?> //test2.php <?php echo 'this is test2'; ?> //结果: this is test2this is test1this is test2 //test1.php <?php include_once './test2.php'; echo 'this is test1'; include_once './test2.php'; ?> //test2.php <?php echo 'this is test2'; ?> //结果: this is test2this is test1
require と require_once: include と include_once と同じ違いです。
読み込み時の実行処理
1. include(require)文からphpスクリプトモードを終了(htmlコードモードに入る)2. include ステートメントで設定したファイル内のコードを読み込み、実行してみます3. html モードを終了し、php スクリプト モードに再度入り、後続のスクリプトの実行を続行しますプログラム
//test1.php <html> <body> 主文件开始位置: <?php echo "<br> 主文件中位置 A"; include "./test2.php"; //要载入的文件 echo "<br> 主文件中位置 B"; ?> <br> 主文件结束位置 </body> </html> //test2.php <br> 被载入文件位置 1 <?php echo "<br> 被载入文件位置 2"; ?> <br> 被载入文件位置 3
#分析:
#相対パス:
現在の Web ページ ファイルの場所を基準にして、ロードされたファイルの場所を見つけます。 ./ 表示表示当前位置,即当前网页文件所在的目录
. . / 表示上一级位置,即当前网页文件所在目录的上一级目录
//例如:
include "./test2.php";
require "../../test3.html";
ログイン後にコピー
./ 表示表示当前位置,即当前网页文件所在的目录 . . / 表示上一级位置,即当前网页文件所在目录的上一级目录 //例如: include "./test2.php"; require "../../test3.html";
絶対パス:
ローカル絶対パスとネットワーク絶対パス
ローカル絶対パス: ローカル ルート ディレクトリから、対応するディレクトリにインポートするファイルが見つかるまで、階層ごとに再帰的に検索します。 include "C:/PHP/test/test2.php";
ログイン後にコピー絶対パスはプロジェクトの移植性や保守性に役立たないことは誰もが知っているので、コードに絶対パスを直接記述することは一般的にはまれですが、絶対パスを使用する必要がある場合はどうすればよいでしょうか。パス? ? PHP にはマジック定数 __DIR__ とグローバル配列 $_SERVER があり、その使用法は次のとおりです:
include "C:/PHP/test/test2.php";
<?php define('DS') or define('DS',DIRECTORY_SEPARATOR); echo "使用绝对路径引入(方法一)"; include __DIR__ . DS . 'test2.php'; echo "使用绝对路径载入方法(方法二)"; $root = $_SERVER['DOCUMENT_ROOT']; // 获得当前站点的根目录 include $root.DS.'node_test'.DS.'inAndRe'.DS. 'test2.php'; ?>
URL を介してファイルにリンクします。サーバーは、URL で指定されたファイルが実行後に返されます。 include "http://www.lishnli/index.php"
ログイン後にコピー
パスなし: include "http://www.lishnli/index.php"
ファイル名のみが指定され、パス情報は指定されません。 . このとき、PHPは現在のWebページのディレクトリにあるので、ファイルを検索し、同名のファイルがあればそれを実行してインポートします。 需要注意:无论采用哪种路径,必须要加上文件后缀名,这四种文件载入方式不能识别无后缀的文件。
//test1.php
include "./test2.php";
//结果:this is test2
//test1.php
include "./test2";
//结果:
ログイン後にコピー返回值的比较
上文说道include有返回值,而require无返回值
对于include,如果载入成功,有返回值,返回值为1;如果载入失败,则返回false.
对于require,如果载入成功,有返回值,返回值为1;如果载入失败,无返回值。
//test1.php
<?php
$a = include "./test2.php";
var_dump($a);
echo "<br>";
$b = include "./test2.phps";
var_dump($b);
echo "<br>";
$c = require "./test2.php";
var_dump($c);
echo "<br>";
$d = require "./test2.phps";
var_dump($d);
?>
ログイン後にコピー输出:

当文件中有return:
当被载入文件中有return语句时,会有另外的机制,此时return语句的作用是终止载入过程,即被载入文件中return语句的后续代码不再载入。return语句也可以用于被载入文件载入时返回一个数据。
//test1.php
<?php
$a = include "./test2.php";
echo "<br>";
var_dump($a);
?>
//test2.php
//该文件中有return语句
<?php
$b = 'test2';
echo "被载入的文件:A 位置";
return $b;
echo "<br 被载入的文件: B 位置";
?>
ログイン後にコピー
结果:

相关推荐:
php 字符串写入文件或追加入文件(file_put_contents)
以上がPHPにファイルをインポートするにはどのような方法がありますか? PHPでファイルを導入する4つの方法(コード)を紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。
//test1.php include "./test2.php"; //结果:this is test2 //test1.php include "./test2"; //结果:
//test1.php <?php $a = include "./test2.php"; var_dump($a); echo "<br>"; $b = include "./test2.phps"; var_dump($b); echo "<br>"; $c = require "./test2.php"; var_dump($c); echo "<br>"; $d = require "./test2.phps"; var_dump($d); ?>

//test1.php <?php $a = include "./test2.php"; echo "<br>"; var_dump($a); ?> //test2.php //该文件中有return语句 <?php $b = 'test2'; echo "被载入的文件:A 位置"; return $b; echo "<br 被载入的文件: B 位置"; ?>


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

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

ホットトピック









JWTは、JSONに基づくオープン標準であり、主にアイデンティティ認証と情報交換のために、当事者間で情報を安全に送信するために使用されます。 1。JWTは、ヘッダー、ペイロード、署名の3つの部分で構成されています。 2。JWTの実用的な原則には、JWTの生成、JWTの検証、ペイロードの解析という3つのステップが含まれます。 3. PHPでの認証にJWTを使用する場合、JWTを生成および検証でき、ユーザーの役割と許可情報を高度な使用に含めることができます。 4.一般的なエラーには、署名検証障害、トークンの有効期限、およびペイロードが大きくなります。デバッグスキルには、デバッグツールの使用とロギングが含まれます。 5.パフォーマンスの最適化とベストプラクティスには、適切な署名アルゴリズムの使用、有効期間を合理的に設定することが含まれます。

PHP開発における固体原理の適用には、次のものが含まれます。1。単一責任原則(SRP):各クラスは1つの機能のみを担当します。 2。オープンおよびクローズ原理(OCP):変更は、変更ではなく拡張によって達成されます。 3。Lischの代替原則(LSP):サブクラスは、プログラムの精度に影響を与えることなく、基本クラスを置き換えることができます。 4。インターフェイス分離原理(ISP):依存関係や未使用の方法を避けるために、細粒インターフェイスを使用します。 5。依存関係の反転原理(DIP):高レベルのモジュールと低レベルのモジュールは抽象化に依存し、依存関係噴射を通じて実装されます。

システムが再起動した後、UnixSocketの権限を自動的に設定する方法。システムが再起動するたびに、UnixSocketの許可を変更するために次のコマンドを実行する必要があります:sudo ...

記事では、PHP 5.3で導入されたPHPの後期静的結合(LSB)について説明し、より柔軟な継承を求める静的メソッドコールのランタイム解像度を可能にします。 LSBの実用的なアプリケーションと潜在的なパフォーマ

PHP開発でPHPのCurlライブラリを使用してJSONデータを送信すると、外部APIと対話する必要があることがよくあります。一般的な方法の1つは、Curlライブラリを使用して投稿を送信することです。

記事では、入力検証、認証、定期的な更新など、脆弱性から保護するためのフレームワークの重要なセキュリティ機能について説明します。

phpstormでCLIモードをデバッグする方法は? PHPStormで開発するときは、PHPをコマンドラインインターフェイス(CLI)モードでデバッグする必要がある場合があります。
