| ブログトップ | PHP関連 |

includeしたものを変数に入れる【PHP】

例えば

<?php
echo "Hello world";
?>

という内容が書かれた、「include_hoge.php」というファイルがあるとします。

そして、これを別のファイル(hoge.php)で読み込み、include_hoge.phpの出力内容を変数に入れたいと思うことがあります。(実際はこんな単純な出力内容ではありませんが)

単純に考えると

$hensu = include(include_hoge.php);

となりますが、当然ながらこれではうまく行きません。

変数に放り込まれないどころか、ただ単にechoされた内容が表示されてしまいます。

 

次に考えられる方法は「file_get_contents」を使うことかと思います。

$hensu = file_get_contents("http://xxxxxx.net/include_hoge.php");

とすることにより、include_hoge.phpの出力内容を変数に入れることが出来ます。

しかし、そもそも「file_get_contents」が使用できないように制限されているサーバーや、include_hoge.phpにベーシック認証をかけている場合は取得ができません。(問題がなければこの方法でも良いかと思います)

 

最終的な方法としては下記となります。

ob_start();
include(include_hoge.php);
$hensu = ob_get_contents();
ob_end_clean();

これで、「file_get_contents」同様、「include」でも出力内容を変数に入れることが可能となります。

日々の生活にhappyをプラスする|ハピタス

このエントリーをはてなブックマークに追加

LINEで送る

総合管理者 | 2017年12月13日 | コメント(0) | トラックバック(0) | PHP関連

トラックバック

トラックバックURL

コメントする

※メールアドレスが公開されることはありません。

名前 *
メール*
URL
Copyright(c) 2010 - 2018 ダリの雑記