Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Netbeans - include path
Szymciosek
post 1.04.2013, 23:05:42
Post #1





Grupa: Zarejestrowani
Postów: 1 168
Pomógł: 126
Dołączył: 5.02.2010
Skąd: Świdnica

Ostrzeżenie: (0%)
-----


Witam,
posiadam taki autoloader:
  1. <?php
  2.  
  3. function __autoload($className)
  4. {
  5. $className = ltrim($className, '\\');
  6. $fileName = '';
  7. $namespace = '';
  8.  
  9. if ($lastNsPos = strrpos($className, '\\'))
  10. {
  11. $namespace = substr($className, 0, $lastNsPos);
  12. $className = substr($className, $lastNsPos + 1);
  13. $fileName= str_replace('\\', DIRECTORY_SEPARATOR, $namespace) . DIRECTORY_SEPARATOR;
  14. }
  15.  
  16. $fileName .= str_replace('_', DIRECTORY_SEPARATOR, $className) . '.php';
  17.  
  18. if (file_exists($fileName))
  19. include $fileName;
  20. else echo 'Class ' . $fileName . ' does not exist';
  21. }


Na poziomie całego projektu YYY (Source files) działa wyśmienicie lecz za chiny nie mogę dostać się do plików, które dodam poprzez PHP INCLUDE PATH (properties projektu YYY).

...

Stworzyłem nowy projekt XXX z taką strukturą:
- Source files (domyślnie)
-- package
--- log/Logs.php -> namespace package\log;
--- Connect.php -> namespace package;
--- Validation.php -> namespace package;

Próbuję zrobić:
use package\log\Logs;
Logs::error('message');

Lecz otrzymuję błąd, że nie znajduje pliku logs.php...
Domyślam się, że problem leży po stronie samego autoloadera, ale jak to zmienić?

Dodam jeszcze, że sam autoloader leży w YYY/Source files/src/cms/autoloader.php, a ładowany jest w miejscu YYY/Source files/index.php
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
kayman
post 2.04.2013, 02:02:29
Post #2





Grupa: Zarejestrowani
Postów: 556
Pomógł: 40
Dołączył: 20.07.2012
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


dla mnie jest jakiś błąd w założeniu

jeżeli -> log/Logs.php to pełna ścieżka do pliku i Logs jest nazwą klasy to autoloader powinien

- sprawdzić czy plik istnieje pod podaną ścieżka (niezależnie od zagnieżdżenia)

- dołączyć kod klasy


czyli autoloader powinien mieć info o pełnej ścieżce do pliku

Ten post edytował kayman 2.04.2013, 02:36:03
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 20.06.2025 - 15:08