Einmaliges Einbinden von Dateien in PHP
Nehmen wir an, wir haben eine Datei pow.php, in der
ein Satz von Funktionen gespeichert ist:
<?php
function square($num) {
return $num ** 2;
}
function cube() {
return $num ** 3;
}
?>
Nehmen wir an, wir verwenden die Funktionen der Datei pow.php
in der Datei 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;
}
?>
Nehmen wir an, in der Hauptdatei binden wir beide Dateien mit Funktionen ein:
<?php
require 'pow.php';
require 'sum.php';
echo square(3) + squareSum([1, 2, 3]);
?>
Es erwartet uns jedoch ein Problem. Die Datei
pow.php wird in die Datei index.php
zweimal eingebunden: direkt und über die Datei
sum.php.
Das wird zu einem Problem führen, da wir dann zwei Sätze von Funktionen mit gleichen Namen haben.
Um das Problem zu lösen, sollten alle Dateien
mit dem Operator require_once eingebunden werden
- er bindet die Datei nur einmal ein und
ignoriert erneute Einbindungen:
<?php
require_once 'pow.php';
require_once 'sum.php';
echo square(3) + squareSum([1, 2, 3]);
?>
Erstellen Sie mehrere Dateien mit nützlichen Sätzen von Funktionen. Binden Sie diese Dateien gegenseitig und in Ihrer Hauptdatei ein.