Failide ühekordne kaasamine PHP-s
Oletame, et meil on fail pow.php, milles
hoitakse funktsioonide kogumit:
<?php
function square($num) {
return $num ** 2;
}
function cube() {
return $num ** 3;
}
?>
Oletame, et me kasutame faili pow.php funktsioone
failis 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;
}
?>
Oletame, et põhifailis kaasame mõlemad funktsioonide failid:
<?php
require 'pow.php';
require 'sum.php';
echo square(3) + squareSum([1, 2, 3]);
?>
Siiski ootab meid probleem. Faili
index.php fail pow.php
kaasatakse kaks korda: iseenesest ja läbi faili
pow.php.
See põhjustab probleemi, kuna meil on kaks samanimeliste funktsioonide komplekti.
Probleemi lahendamiseks tuleks kõik
failid kaasada läbi operaatori require_once
- see kaasab faili ainult üks kord,
ignoreerides korduvaid kaasamisi:
<?php
require_once 'pow.php';
require_once 'sum.php';
echo square(3) + squareSum([1, 2, 3]);
?>
Looge mitu faili kasulike funktsioonide kogumitega. Kaasake need failid üksteisele ja oma põhifailile.