LoginSignup
0
0

More than 1 year has passed since last update.

【備忘録】.phpから別の.phpにある変数を参照する

Last updated at Posted at 2022-04-17

web開発初心者の備忘録です。
オリジナリティあふれるソースコード。

ポイント

require関数を使って.phpを読み込むことで、記述されているグローバル?な変数を参照できる。

ファイル構成

IISでルートに設定しているフォルダ
 └ test
   ├ main.html
   ├ main.php
   ├ lib.php
   ├ info.php
   ├ main.js
   └ jquery-3.6.0.js

ソースコード

main.html
<!DOCTYPE html>
<html>

<head>
    <meta charset="utf-8"/>
    <title>test</title>

    <script type="text/javascript" src="jquery-3.6.0.js"></script>
    <script type="text/javascript" src="main.js"></script>
</head>

<body>
    <button onclick="hoge()">実行</button>
</body>

<script type="text/javascript" src="main.js"></script>

</html>
main.js
function hoge() {
    $.ajax({
        type: "GET",
        url: "../test/main.php",
        timeout: 5000
    }).done(($data) => {
        console.log("done");
        console.log($data);
    }).fail(($data) => {
        console.log("fail");
        console.log($data);
    }).always(() => {
        console.log("always");
    });
}
main.php
<?php    
    require('lib.php');
    sleep(3);

    echo sample();
?>
lib.php
<?php   
    function sample() {
        require('info.php');
    
        return $Message;
    }
?>
info.php
<?php    
    $Message = "連れてこられたデータ";
?>

結果

スクリーンショット 2022-04-18 010406.jpg
いいね
スクリーンショット 2022-04-18 010452.jpg
ちなみに、require関数をsample関数の外に置く(#includeみたいなポジションに記述する)と、WarningページのHTMLを投げ返されます。あくまで呼び出したスコープの範囲内でしか参照できないみたいですね。

最後に

…やっぱりヘッダファイルくんの代わりなんてどこにもいないんだね。

  • 初学者の備忘録です。
  • 片手間でやっているので、記述が曖昧&雑です。
  • 動作したコードをそのまま載せていますが、摩訶不思議な力によりほかの環境では動かないかもしれません。
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0