⊗ppOpNsCU 101 of 107 menu

Η εντολή use και οι χώροι ονομάτων στην αντικειμενοστρεφή προγραμματισμό στην PHP

Ας υποθέσουμε ότι έχουμε την ακόλουθη κλάση Data:

<?php namespace \Core\Admin; class Data { public function __construct($num) { } } ?>

Ας υποθέσουμε επίσης ότι υπάρχει μια κλάση Page, που δημιουργεί μέσα σε αυτήν αντικείμενα της κλάσης Data:

<?php namespace Users; class Page { public function __construct() { $data1 = new \Core\Admin\Data('1'); $data2 = new \Core\Admin\Data('2'); } } ?>

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

Για την επίλυση ενός τέτοιου προβλήματος υπάρχει μια ειδική εντολή use. Με τη βοήθεια αυτής της εντολής αρκεί να συνδεθεί μια φορά η κλάση με το πλήρες όνομά της, και μετά από αυτό μπορούμε να αναφερθούμε σε αυτήν την κλάση απλά με το όνομα της κλάσης. Δείτε το παράδειγμα:

<?php namespace Users; use \Core\Admin\Data; // συνδέουμε την κλάση class Page extends Controller { public function __construct() { $data1 = new Data('1'); // καλούμε απλά με το όνομα $data2 = new Data('2'); // καλούμε απλά με το όνομα } } ?>

Απλοποιήστε τον ακόλουθο κώδικα χρησιμοποιώντας την use:

<?php namespace Project; class Test { public function __construct() { // Δημιουργούμε 3 αντικείμενα μιας κλάσης: $data1 = new \Core\Users\Data('user1'); $data2 = new \Core\Users\Data('user3'); $data3 = new \Core\Users\Data('user3'); } } ?>

Δίνονται οι ακόλουθες κλάσεις:

<?php namespace Core\Admin; class Controller { } ?>
<?php namespace Users; class Page extends \Core\Admin\Controller { } ?>

Απλοποιήστε τον κώδικα κληρονομικότητας της κλάσης, εφαρμόζοντας την εντολή use.

Ελληνικά
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Χρησιμοποιούμε cookie για τη λειτουργία του ιστότοπου, την ανάλυση και την εξατομίκευση. Η επεξεργασία των δεδομένων γίνεται σύμφωνα με την Πολιτική Απορρήτου.
αποδοχή όλων ρύθμιση απόρριψη