Failų vienkartinis prijungimas PHP

Tarkime, kad turime failą pow.php, kuriame saugomas funkcijų rinkinys:

pow.php<?php
  function square($num) {
    return $num ** 2;
  }
  
  function cube() {
    return $num ** 3;
  }
?>

Tarkime, kad mes naudojame failo pow.php funkcijas faile sum.php:

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;
  }
?>

Tarkime, kad pagrindiniame faile mes prijungiame abu failus su funkcijomis:

index.php<?php
  require 'pow.php';
  require 'sum.php';
  
  echo square(3) + squareSum([1, 2, 3]);
?>

Tačiau mūsų laukia problema. Prie failo index.php failas pow.php bus prijungtas du kartus: tiesiogiai ir per failą sum.php.

Tai sukels problemą, nes turėsime du funkcijų rinkinius su vienodais pavadinimais.

Norint išspręsti problemą, reikėtų visus failus prijungti naudojant operatorių require_once - jis prijungs failą tik vieną kartą, ignoruodamas pakartotinius prijungimus:

index.php<?php
  require_once 'pow.php';
  require_once 'sum.php';
  
  echo square(3) + squareSum([1, 2, 3]);
?>
Задание 1

Sukurkite kelis failus su naudingais funkcijų rinkiniais. Prijunkite šiuos failus vieną prie kito ir prie jūsų pagrindinio failo.