Inclusione singola di file in PHP
Supponiamo di avere un file pow.php, in cui
è memorizzato un insieme di funzioni:
<?php
function square($num) {
return $num ** 2;
}
function cube() {
return $num ** 3;
}
?>
Supponiamo di utilizzare le funzioni del file pow.php
nel file 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;
}
?>
Supponiamo che nel file principale includiamo entrambi i file con le funzioni:
<?php
require 'pow.php';
require 'sum.php';
echo square(3) + squareSum([1, 2, 3]);
?>
Tuttavia, c'è un problema. Il file
pow.php verrà incluso due volte nel file
index.php: una volta direttamente e una volta tramite il file
sum.php.
Ciò causerà un problema, poiché avremo due insiemi di funzioni con lo stesso nome.
Per risolvere il problema, è necessario includere tutti
i file tramite l'operatore require_once
- esso includerà il file solo una volta,
ignorando le inclusioni ripetute:
<?php
require_once 'pow.php';
require_once 'sum.php';
echo square(3) + squareSum([1, 2, 3]);
?>
Create diversi file con utili insiemi di funzioni. Collegate questi file tra loro e al vostro file principale.