目次
include と require: " >include と require:
include と include_once:
ローカル絶対パスとネットワーク絶対パス" > ローカル絶対パスとネットワーク絶対パス
include "C:/PHP/test/test2.php";
ログイン後にコピー
絶対パスはプロジェクトの移植性や保守性に役立たないことは誰もが知っているので、コードに絶対パスを直接記述することは一般的にはまれですが、絶対パスを使用する必要がある場合はどうすればよいでしょうか。パス? ? PHP にはマジック定数 __DIR__ とグローバル配列 $_SERVER があり、その使用法は次のとおりです: " > ローカル ルート ディレクトリから、対応するディレクトリにインポートするファイルが見つかるまで、階層ごとに再帰的に検索します。
include "C:/PHP/test/test2.php";
ログイン後にコピー
絶対パスはプロジェクトの移植性や保守性に役立たないことは誰もが知っているので、コードに絶対パスを直接記述することは一般的にはまれですが、絶対パスを使用する必要がある場合はどうすればよいでしょうか。パス? ? PHP にはマジック定数 __DIR__ とグローバル配列 $_SERVER があり、その使用法は次のとおりです:
include "http://www.lishnli/index.php"
ログイン後にコピー
" > URL を介してファイルにリンクします。サーバーは、URL で指定されたファイルが実行後に返されます。
include "http://www.lishnli/index.php"
ログイン後にコピー
当文件中有return:
ホームページ バックエンド開発 PHPチュートリアル PHPにファイルをインポートするにはどのような方法がありますか? PHPでファイルを導入する4つの方法(コード)を紹介

PHPにファイルをインポートするにはどのような方法がありますか? PHPでファイルを導入する4つの方法(コード)を紹介

Jul 23, 2018 pm 05:09 PM

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 &#39;./tsest.php&#39;;
echo &#39;this is test1&#39;;
?>

//test2.php
<?php
echo &#39;this is test2\n&#39;;
function test() {
    echo &#39;this is test\n&#39;;
}
?>

//结果:
this is test1
ログイン後にコピー

require は、ロードが失敗すると致命的なエラー (E_COMPILE_ERROR) を生成し、エラーの発生後にスクリプトの実行が停止します。通常、後続のコードがロードされたファイルに依存する場合に使用されます。

//test1.php
<?php
require &#39;./tsest.php&#39;;
echo &#39;this is test1&#39;;
?>

//test2.php
<?php
echo &#39;this is test2\n&#39;;
function test() {
    echo &#39;this is test\n&#39;;
}
?>
ログイン後にコピー

結果:

PHPにファイルをインポートするにはどのような方法がありますか? PHPでファイルを導入する4つの方法(コード)を紹介

include と include_once:

include でロードされたファイルは、重複する場合、 include ステートメントがある限り、(繰り返しロードが発生する可能性がある場合でも) 1 回ロードされます。 include_once がファイルをロードするとき、前のコードがロードされているかどうかを判断する内部判断メカニズムが存在します。ここで注意する必要があるのは、include_once はファイルの内容ではなく、同じパスのファイルが以前にインポートされているかどうかに基づいて判断されることです (つまり、インポートされる 2 つのファイルの内容が同じです)。 、 include_once を使用すると、依然として 2 つが導入されます)。

//test1.php
<?php
include &#39;./test2.php&#39;;
echo &#39;this is test1&#39;;
include &#39;./test2.php&#39;;
?>

//test2.php
<?php
echo &#39;this is test2&#39;;
?>

//结果:
this is test2this is test1this is test2


//test1.php
<?php
include &#39;./test2.php&#39;;
echo &#39;this is test1&#39;;
include_once &#39;./test2.php&#39;;
?>

//test2.php
<?php
echo &#39;this is test2&#39;;
?>

//结果:
this is test2this is test1


//test1.php
<?php
include_once &#39;./test2.php&#39;;
echo &#39;this is test1&#39;;
include &#39;./test2.php&#39;;
?>

//test2.php
<?php
echo &#39;this is test2&#39;;
?>

//结果:
this is test2this is test1this is test2


//test1.php
<?php
include_once &#39;./test2.php&#39;;
echo &#39;this is test1&#39;;
include_once &#39;./test2.php&#39;;
?>

//test2.php
<?php
echo &#39;this is test2&#39;;
?>

//结果:
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
ログイン後にコピー

結果:

PHPにファイルをインポートするにはどのような方法がありますか? PHPでファイルを導入する4つの方法(コード)を紹介#分析:

PHPにファイルをインポートするにはどのような方法がありますか? PHPでファイルを導入する4つの方法(コード)を紹介

##ロード中のパスの問題

#相対パス:

現在の Web ページ ファイルの場所を基準にして、ロードされたファイルの場所を見つけます。
./  表示表示当前位置,即当前网页文件所在的目录
. . /  表示上一级位置,即当前网页文件所在目录的上一级目录

//例如:
include "./test2.php";
require "../../test3.html";
ログイン後にコピー

絶対パス:

ローカル絶対パスとネットワーク絶対パス

ローカル絶対パス:

ローカル ルート ディレクトリから、対応するディレクトリにインポートするファイルが見つかるまで、階層ごとに再帰的に検索します。
include "C:/PHP/test/test2.php";
ログイン後にコピー
絶対パスはプロジェクトの移植性や保守性に役立たないことは誰もが知っているので、コードに絶対パスを直接記述することは一般的にはまれですが、絶対パスを使用する必要がある場合はどうすればよいでしょうか。パス? ? PHP にはマジック定数 __DIR__ とグローバル配列 $_SERVER があり、その使用法は次のとおりです:

<?php
define(&#39;DS&#39;) or define(&#39;DS&#39;,DIRECTORY_SEPARATOR);

echo "使用绝对路径引入(方法一)";
include __DIR__ . DS . &#39;test2.php&#39;;

echo "使用绝对路径载入方法(方法二)";
$root = $_SERVER[&#39;DOCUMENT_ROOT&#39;]; // 获得当前站点的根目录
include $root.DS.&#39;node_test&#39;.DS.&#39;inAndRe&#39;.DS. &#39;test2.php&#39;;
?>
ログイン後にコピー

絶対ネットワーク パス:

URL を介してファイルにリンクします。サーバーは、URL で指定されたファイルが実行後に返されます。
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);

?>
ログイン後にコピー

输出:

PHPにファイルをインポートするにはどのような方法がありますか? PHPでファイルを導入する4つの方法(コード)を紹介

当文件中有return:

当被载入文件中有return语句时,会有另外的机制,此时return语句的作用是终止载入过程,即被载入文件中return语句的后续代码不再载入。return语句也可以用于被载入文件载入时返回一个数据。

//test1.php
<?php
$a = include "./test2.php";
echo "<br>";
var_dump($a);
?>


//test2.php
//该文件中有return语句
<?php
$b = &#39;test2&#39;;
echo "被载入的文件:A 位置";
return $b;
echo "<br 被载入的文件: B 位置";
?>
ログイン後にコピー

结果:

相关推荐:

php引入css文件出错,但是网页已经有样式了

php 字符串写入文件或追加入文件(file_put_contents)

以上がPHPにファイルをインポートするにはどのような方法がありますか? PHPでファイルを導入する4つの方法(コード)を紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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)

JSON Web Tokens(JWT)とPHP APIでのユースケースを説明してください。 JSON Web Tokens(JWT)とPHP APIでのユースケースを説明してください。 Apr 05, 2025 am 12:04 AM

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

確固たる原則と、それらがPHP開発にどのように適用されるかを説明してください。 確固たる原則と、それらがPHP開発にどのように適用されるかを説明してください。 Apr 03, 2025 am 12:04 AM

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

システムの再起動後にUnixSocketの権限を自動的に設定する方法は? システムの再起動後にUnixSocketの権限を自動的に設定する方法は? Mar 31, 2025 pm 11:54 PM

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

PHPにおける後期静的結合の概念を説明します。 PHPにおける後期静的結合の概念を説明します。 Mar 21, 2025 pm 01:33 PM

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

PHPのCurlライブラリを使用してJSONデータを含むPOSTリクエストを送信する方法は? PHPのCurlライブラリを使用してJSONデータを含むPOSTリクエストを送信する方法は? Apr 01, 2025 pm 03:12 PM

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

フレームワークセキュリティ機能:脆弱性から保護します。 フレームワークセキュリティ機能:脆弱性から保護します。 Mar 28, 2025 pm 05:11 PM

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

phpstormでCLIモードをデバッグする方法は? phpstormでCLIモードをデバッグする方法は? Apr 01, 2025 pm 02:57 PM

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

See all articles