「include」と「file_get_contents」の違いがよく分かりません。
ネットで調べてみました。
・「include」… 指定したファイルを読み込んで評価
・「file_get_contents」… 指定したファイルの内容を全て読み込んで文字列として返す
で、実際に試してみたのですが、「file_get_contents」の方がよく分かりません。
具体的には、下記を試すと、結果が、tt string(44) "" となるのですが、ttって何ですか?
評価をしないで文字列として返したということでしょうか? それでなんで tt になるのでしょうか?
▼hoge.php
<?php
$s = file_get_contents("test1.php");
var_dump($s);
?>
▼test1.php
<?php
echo ("1どうなるのかな");
?>
No.2ベストアンサー
- 回答日時:
include()はPHPの制御構文で、読み込んだファイルを評価して
実行します。当然テキストファイルでないとだめです。
用途としては、共通のソースとか、動的に生成するソースを組み込むのに
使う事が多いです。
file_get_contents()はPHPの外部関数で、ファイルを読み込みます。
画像ファイルとか、Acrobat pdfファイルのようなバイナリーファイルも
読み込めます。(文字列として読み込まれます)
hoge.phpで
<?php
header("Content-type:image/jpeg");
print file_get_contents(hoge.jpg);
?>
とすれば、
<img src="hoge.php">
なんて事もできます。
両方とも、ini設定で許されていれば、ファイル名をURL指定して、
HTTP経由で読み込むことも出来ます。
回答ありがとうございました。
おかげで無事解決しました。
▼勘違いしていた点;
・文字列として読み込まれるのであれば、var_dumpすれば当然ブラウザ上で確認できると思っていた点。
自分でも色々試している内、勘違いに気がつきました。
勉強になりましたー。
No.1
- 回答日時:
※ PHPほとんどやったことないのでにわかな知識です。
※include の場合読み込んだファイルに書いてあることがそのままincludeした場所に埋め込まれると考えると良いかもしれません。
▼hoge.php
<?php
$test = 'HellowWorld!!';
?>
▼test1.php
<?php
echo("TEST=$test"); //結果: TEST=
include 'hoge.php';
echo("TEST=$test"); //結果: TEST=HellowWorld!!
?>
▼読み込んだ結果こういう風に処理されている
<?php
echo("TEST=$test");
$test = 'HellowWorld!!';
echo("TEST=$test");
?>
includeした部分に変数の宣言・初期化が埋め込まれるので、
二度目のechoでは$testに値が入っているわけです。
file_get_containsは単にファイルを読んでいるだけかと思います。
リファレンス読みました?
include
http://jp2.php.net/manual/ja/function.include.php
file_get_contains
http://jp2.php.net/manual/ja/function.file-get-c …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript アップロードファイルの種類によって処理を分岐させたいのですが書き方が分からずアドバイスお願いします 4 2023/06/17 19:12
- C言語・C++・C# プログラミングの授業の課題です 1 2023/01/17 22:15
- その他(プログラミング・Web制作) pythonのグローバル変数 2 2022/11/25 18:02
- C言語・C++・C# #include <stdio.h>int main(void) { int buf[100] = 6 2022/11/01 22:45
- PHP 値の取り出し方について教えて下さい。 1 2023/03/31 13:30
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
- WordPress(ワードプレス) wordpressでphpを読み込みたい 1 2022/10/30 23:40
- PHP php テーブルが作成できない 1 2022/11/17 23:41
- MySQL php テーブルを作れない 2 2022/11/17 18:22
- その他(プログラミング・Web制作) python OpenPyXLを使って出力結果をエクセルに書き込み 2 2022/06/04 19:46
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
PHPのタイムアウトについて
-
php で C言語のdefineマクロの...
-
RSSデータの読み込み方を教えて...
-
こちらはただの直列処理ですか?
-
フォントの色を変えるには?
-
onedrive にexcelファイルをア...
-
form actionで二つ送信先を指定...
-
シェルスクリプトからphpファイ...
-
FTPコマンドでディレクトリごと...
-
PHPのif文でその処理を途中で抜...
-
存在しないメールアドレスかど...
-
.htaccessにphp_valueが使用できな
-
PHP8を使うと、大量のWarningが...
-
PHPでfatal errorが出ても無視...
-
アップロード画像数でCSSを分け...
-
Apacheでhttp://localhost/が表...
-
別ファイルの変数を呼び出した...
-
FORMで送信ボタンと戻るボタン...
-
sqlで日付が一番古いデータの月...
-
php5のrename()は日本語をリネ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
php で C言語のdefineマクロの...
-
PHP MySql ページング
-
BASIC認証のユーザー名をPHPで...
-
特定の値をPOST送信で他のサー...
-
cakephpのサブタイトルはどこで...
-
PHPのタイムアウトについて
-
simplexml_load_file で呼び出...
-
phpのエラーについて
-
同一ディレクトリの連番ファイ...
-
「include()」関数の使い方につ...
-
DBから取得した内容を横表示
-
PHPでxmlファイルへのデータの...
-
home_urlとbloginfo('url')
-
PHPとHTMLをまとめてコメントア...
-
Nowdocの機能をphp5.2で使いたい
-
onedrive にexcelファイルをア...
-
フォントの色を変えるには?
-
index.phpに入るには、どうすれ...
-
PHPのif文でその処理を途中で抜...
-
FTPコマンドでディレクトリごと...
おすすめ情報