PHP'de Dosyaları Tek Seferlik Bağlama

Diyelim ki içinde bir dizi fonksiyonun saklandığı pow.php adında bir dosyamız var:

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

Diyelim ki pow.php dosyasındaki fonksiyonları sum.php dosyasında kullanıyoruz:

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

Diyelim ki ana dosyamızda her iki fonksiyon dosyasını da bağlıyoruz:

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

Ancak bizi bir problem bekliyor. index.php dosyasına pow.php dosyası iki kez bağlanmış olacak: bir kendi başına ve bir de sum.php dosyası aracılığıyla.

Bu bir soruna yol açacak, çünkü aynı isimde iki fonksiyon setimiz olacak.

Sorunu çözmek için tüm dosyaları require_once operatörü ile bağlamalısınız - bu operatör dosyayı yalnızca bir kez bağlayacak, tekrarlanan bağlamaları yoksayacaktır:

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

Faydalı fonksiyon setleri içeren birkaç dosya yapın. Bu dosyaları birbirine ve ana dosyanıza bağlayın.