Μοναδική σύνδεση αρχείων σε 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 θα συνδεθεί δύο φορές: από μόνο του και μέσω του αρχείου sum.php.

Αυτό θα οδηγήσει σε πρόβλημα, καθώς θα έχουμε δύο σύνολα συναρτήσεων με τα ίδια ονόματα.

Για την επίλυση του προβλήματος, θα πρέπει να συνδέουμε όλα τα αρχεία μέσω του τελεστή require_once - αυτός θα συνδέει το αρχείο μόνο μία φορά, αγνοώντας επαναλαμβανόμενες συνδέσεις:

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

Δημιουργήστε πολλά αρχεία με χρήσιμα σύνολα συναρτήσεων. Συνδέστε αυτά τα αρχεία το ένα με το άλλο και στο κύριο αρχείο σας.