Аднакратнае падключэнне файлаў у PHP

Хай у нас ёсць файл pow.php, у якім захоўваецца набор функцый:

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

Хай мы выкарыстоўваем функцыі файла pow.php у файле 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;
  }
?>

Хай у асноўным файле мы падключаем абодва файлы з функцыямі:

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

Нас, аднак, падпільноўвае праблема. Да файла index.php файл pow.php будзе падключаны два разы: сам па сабе і праз файл pow.php.

Гэта прывядзе да праблемы, так як у нас будуць два наборы функцый з аднолькавымі імёнамі.

Для вырашэння праблемы варта падключаць усе файлы праз аператар require_once - ён будзе падключаць файл толькі адзін раз, ігнаруючы паўторнае падключэнні:

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

Зрабіце некалькі файлаў з карыснымі наборамі функцый. Падключыце гэтыя файлы адзін да аднаго і да вашага асноўнага файлу.