BETA

直に`return`するPHPを読み込んだ場合の挙動のメモ

投稿日:2020-01-14
最終更新:2020-01-14

ファイルをincludeする前に言っておくッ!
おれは今returnが直書きされているファイルをほんのちょっぴりだが体験した

い…いや…体験したというよりはまったく理解を超えていたのだが……

あ…ありのまま 今 起こった事を話すぜ!

「おれはreturnが直書きされているファイルをincludeしたと思ったらそいつを変数に代入できた」

な…何を言っているのかわからねーと思うがおれも何をされたのかわからなかった…

頭がどうにかなりそうだった…グローバル変数だとかサーバ変数だとかそんなチャチなもんじゃあ断じてねえ

もっと恐ろしいものの片鱗を味わったぜ…

ふと疑問に思ったのですが、何と呼んだら良いのか分からなかったのでメモ。

まずは以下のサンプルコードをご覧ください。

hoge.php

<?php  

return [  
    'hieda' => array('toneri', 'sarume', 'kojiki'),  
    'oho' => 'yasumaro',  
    'fujiwara' => 'fuhito',  
];  

このように、PHPファイル内で直にreturnで値を返すコードがあるとします。

これを

fuga.php

<?php  

include('./hoge.php');  

このように別ファイルで読み込んだ場合、hoge.phpの値は取得できるのか、と。

結果

<?php  

$hoge = include('./hoge.php');  
var_dump($hoge);  
/DIRECTORY/TO/ROOT/fuga.php:4:  
array (size=3)  
  'hieda' =>   
    array (size=3)  
      0 => string 'toneri' (length=6)  
      1 => string 'sarume' (length=6)  
      2 => string 'kojiki' (length=6)  
  'oho' => string 'yasumaro' (length=8)  
  'fujiwara' => string 'fuhito' (length=6)  

……普通にできました。

検索した

「php return 直に include」等で検索したところ、php.netも引っかかりました。

参考

技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
駆け出しエンジニアからエキスパートまで全ての方々のアウトプットを歓迎しております!
or 外部アカウントで 登録 / ログイン する
クランチについてもっと詳しく

この記事が掲載されているブログ

アルム=バンドのQrunch

よく一緒に読まれる記事

0件のコメント

ブログ開設 or ログイン してコメントを送ってみよう