require_once文は、外部ファイルを一度だけ読み込む制御構文。require文は、何度でも再読み込みできるが、require_once文は、一度読み込んだファイルを再読み込みすることはない。
使い方
丸括弧なし
require_once 'ファイル名';
「ファイル名」の外部ファイルを一度だけ読み込む。
丸括弧あり
require_once ( 'ファイル名' );
「ファイル名」の外部ファイルを一度だけ読み込む。
サンプル
requireとrequire_onceの比較サンプル
「sample.php」から、require文とrequire_once文で読み込む比較サンプル。
require.php
require文で読み込むPHPファイル。
<?php
$varA = 'おはよう(^o^)';
?>
$varA = 'おはよう(^o^)';
?>
require_once.php
require_once文で読み込むPHPファイル。
<?php
$varB = 'おはよう(^o^)';
?>
$varB = 'おはよう(^o^)';
?>
sample.php
<?php
require 'require.php';
require_once 'require_once.php';
echo '<p>$varA: ' . $varA . '</p>';
echo '<p>$varB: ' . $varB . '</p>';
$varA = 'おやすみ(-_-)';
$varB = 'おやすみ(-_-)';
require 'require.php';
require_once 'require_once.php';
echo '<p>$varA: ' . $varA . '</p>';
echo '<p>$varB: ' . $varB . '</p>';
?>
require 'require.php';
require_once 'require_once.php';
echo '<p>$varA: ' . $varA . '</p>';
echo '<p>$varB: ' . $varB . '</p>';
$varA = 'おやすみ(-_-)';
$varB = 'おやすみ(-_-)';
require 'require.php';
require_once 'require_once.php';
echo '<p>$varA: ' . $varA . '</p>';
echo '<p>$varB: ' . $varB . '</p>';
?>
↓↓↓出力結果↓↓↓
$varA: おはよう(^o^)
$varB: おはよう(^o^)
$varA: おはよう(^o^)
$varB: おやすみ(-_-)
$varB: おはよう(^o^)
$varA: おはよう(^o^)
$varB: おやすみ(-_-)
return文なし、丸括弧なし
return文のないPHPファイル「noreturn.php」を、「sample.php」から、丸括弧なしのrequire_once文で一度だけ読み込むサンプル。
noreturn.php
return文のないPHPファイル。
<?php
$varA = 'こんにちは♪';
?>
$varA = 'こんにちは♪';
?>
sample.php
<?php
$varB = require_once 'noreturn.php';
echo '<p>$varA: ' . $varA . '</p>';
echo '<p>$varB: ' . $varB . '</p>';
?>
$varB = require_once 'noreturn.php';
echo '<p>$varA: ' . $varA . '</p>';
echo '<p>$varB: ' . $varB . '</p>';
?>
↓↓↓出力結果↓↓↓
$varA: こんにちは♪
$varB: 1
$varB: 1
return文なし、丸括弧あり
return文のないPHPファイル「noreturn.php」を、「sample.php」から、丸括弧ありのrequire_once文で一度だけ読み込むサンプル。
noreturn.php
return文のあるPHPファイル。
<?php
$varA = 'こんにちは♪';
?>
$varA = 'こんにちは♪';
?>
sample.php
<?php
$varB = require_once ( 'noreturn.php' );
echo '<p>$varA: ' . $varA . '</p>';
echo '<p>$varB: ' . $varB . '</p>';
?>
$varB = require_once ( 'noreturn.php' );
echo '<p>$varA: ' . $varA . '</p>';
echo '<p>$varB: ' . $varB . '</p>';
?>
↓↓↓出力結果↓↓↓
$varA: こんにちは♪
$varB: 1
$varB: 1
return文あり、丸括弧なし
return文のあるPHPファイル「return.php」を、「sample.php」から、丸括弧なしのrequire_once文で一度だけ読み込むサンプル。
return.php
return文のあるPHPファイル。
<?php
$varA = 'こんにちは♪';
return $varA;
?>
$varA = 'こんにちは♪';
return $varA;
?>
sample.php
<?php
$varB = require_once 'return.php';
echo '<p>$varA: ' . $varA . '</p>';
echo '<p>$varB: ' . $varB . '</p>';
?>
$varB = require_once 'return.php';
echo '<p>$varA: ' . $varA . '</p>';
echo '<p>$varB: ' . $varB . '</p>';
?>
↓↓↓出力結果↓↓↓
$varA: こんにちは♪
$varB: こんにちは♪
$varB: こんにちは♪