Μοναδική σύνδεση αρχείων σε PHP
Ας υποθέσουμε ότι έχουμε ένα αρχείο pow.php, στο οποίο
αποθηκεύεται ένα σύνολο συναρτήσεων:
<?php
function square($num) {
return $num ** 2;
}
function cube() {
return $num ** 3;
}
?>
Ας υποθέσουμε ότι χρησιμοποιούμε τις συναρτήσεις του αρχείου pow.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;
}
?>
Ας υποθέσουμε ότι στο κύριο αρχείο συνδέουμε και τα δύο αρχεία με συναρτήσεις:
<?php
require 'pow.php';
require 'sum.php';
echo square(3) + squareSum([1, 2, 3]);
?>
Ωστόσο, μας περιμένει ένα πρόβλημα. Στο αρχείο
index.php το αρχείο pow.php θα
συνδεθεί δύο φορές: από μόνο του και μέσω του αρχείου
sum.php.
Αυτό θα οδηγήσει σε πρόβλημα, καθώς θα έχουμε δύο σύνολα συναρτήσεων με τα ίδια ονόματα.
Για την επίλυση του προβλήματος, θα πρέπει να συνδέουμε όλα τα
αρχεία μέσω του τελεστή require_once
- αυτός θα συνδέει το αρχείο μόνο μία φορά,
αγνοώντας επαναλαμβανόμενες συνδέσεις:
<?php
require_once 'pow.php';
require_once 'sum.php';
echo square(3) + squareSum([1, 2, 3]);
?>
Δημιουργήστε πολλά αρχεία με χρήσιμα σύνολα συναρτήσεων. Συνδέστε αυτά τα αρχεία το ένα με το άλλο και στο κύριο αρχείο σας.