Névtér probléma !
Sziasztok !
Eddig nem használtam a névteret de most egy kis kód csoportosítás szempontjából jól jönne. Nem egy túl bonyolult dolog ahogy láttam, de a biztonság kedvéért elolvastam a neten vagy öt tutorialt is, kezdve a php.net-en található leírásokkal. Szóval a problémám az, hogy egyszerűen nem működik a dolog. Egyébként a legfrissebb XAMPP-al (PHP 5.3.1) próbáltam és Symfony 1.4.6-ot használok de ez utóbbi gondolom lényegtelen. Hiába csinálok egy nevter.php-t :
...meg egy Test.php-t :
... Fatal error-t kapok, hogy "Call to undefined function Nevter\valami()". Nem véletlenül hagytam le a Test.php-ból az include, meg a reqire_once részt mert ugye Simfony-ban automatikusan importálódnak a fájlok.
Egyébként próbáltam a use Nevter as Ujnev; kombinációt is, de itt meg olyan hibákat kapok, hogy "syntax error, unexpected T_USE" és társai... Úgyhogy passzlom a dolgot, a segítséget meg előre is köszönöm.
■ Eddig nem használtam a névteret de most egy kis kód csoportosítás szempontjából jól jönne. Nem egy túl bonyolult dolog ahogy láttam, de a biztonság kedvéért elolvastam a neten vagy öt tutorialt is, kezdve a php.net-en található leírásokkal. Szóval a problémám az, hogy egyszerűen nem működik a dolog. Egyébként a legfrissebb XAMPP-al (PHP 5.3.1) próbáltam és Symfony 1.4.6-ot használok de ez utóbbi gondolom lényegtelen. Hiába csinálok egy nevter.php-t :
<?php
namespace Nevter;
function valami(){}
namespace Nevter;
function valami(){}
...meg egy Test.php-t :
<?php
\Nevter\valami();
\Nevter\valami();
... Fatal error-t kapok, hogy "Call to undefined function Nevter\valami()". Nem véletlenül hagytam le a Test.php-ból az include, meg a reqire_once részt mert ugye Simfony-ban automatikusan importálódnak a fájlok.
Egyébként próbáltam a use Nevter as Ujnev; kombinációt is, de itt meg olyan hibákat kapok, hogy "syntax error, unexpected T_USE" és társai... Úgyhogy passzlom a dolgot, a segítséget meg előre is köszönöm.
őőő
Oda van írva
Kérdésem az eredeti téma felvetőhöz: a nevter.php-t nem Nevter.php-nak kéne elnevezni? Biztos vagy benne, hogy végrehajtotta az include-ot? (Ronda megoldásnak irass ki include-kor valamit és nyomj egy exitet.)
Mindkettőt kipróbáltam
Az importálásban meg biztos vagyok. MIvel minden más esetben, amikor nem névtereket használok jól működik a dolog. A Symfony automatikusan beimportálja az azonos könyvtárban levő fájlokat, plusz az esetleges gyermekkönyvtárakat is. De az egyszerűség kedvéért én ugyan abba a mappába tettem a két teszt fájlt, de így se működnek. Tehát nem az importálással van a baj.
Nem tudom mi lehet a gond :(
Ne feltételezz!
Igazad lehet
Echo
Bocs de nem értem...
Teszt
Fatal error...
akkor nem töltötte be a nevter.php-t a Test.php előtt. Ergó marad a manuális import vagy nem közvetlenül hívod meg.
Kipróbáltam...
Meg lehetne találni
Igen igazad van
A segítséget még egyszer köszönöm, mindenkinek. Majd nemsokára jön a Symfony 2.0, hátha abban már nem lesznek ilyen gondok :)
Vissza az alapokhoz
Értem...
arc
Whiteman: elvileg ha egybeágyazott névterek vannak, vagy import függvényt használsz vagy ha több névteret helyezel egy fileban esetleg egyedi fordítót használsz akkor hibát kaphatsz.
Nempara
rendben