Conectarea unică a fișierelor în PHP
Să presupunem că avem un fișier pow.php, în care
este stocat un set de funcții:
<?php
function square($num) {
return $num ** 2;
}
function cube() {
return $num ** 3;
}
?>
Să presupunem că utilizăm funcțiile din fișierul pow.php
în fișierul sum.php:
<?php
require 'pow.php';
function squareSum($arr) {
$res = 0;
foreach ($arr as $elem) {
$res += square($elem);
}
return $res;
}
function cubeSum($arr) {
$res = 0;
foreach ($arr as $elem) {
$res += cube($elem);
}
return $res;
}
?>
Să presupunem că în fișierul principal conectăm ambele fișiere cu funcții:
<?php
require 'pow.php';
require 'sum.php';
echo square(3) + squareSum([1, 2, 3]);
?>
Cu toate acestea, ne așteaptă o problemă. Către fișierul
index.php fișierul pow.php va fi
conectat de două ori: prin sine însuși și prin fișierul
sum.php.
Aceasta va duce la o problemă, deoarece vom avea două seturi de funcții cu aceleași nume.
Pentru a rezolva problema, ar trebui să conectăm toate
fișierele prin operatorul require_once
- acesta va conecta fișierul doar o singură dată,
ignorând conexiunile repetate:
<?php
require_once 'pow.php';
require_once 'sum.php';
echo square(3) + squareSum([1, 2, 3]);
?>
Creați mai multe fișiere cu seturi utile de funcții. Conectați aceste fișiere unul la altul și la fișierul dvs. principal.