najpierw przedstawię sytuację kiedy wszystko mi działa
w katalogu /classes mam plik Config.php
<?php class Config { private function __construct() {} self::$instance = new Config(); } return self::$instance; } /* public function setProperty($name, $val){ $this->data[$name] = $val; } */ public function getProperty($name){ throw new Exception('Nie istniejąca dyrektywa: '.$name); } return $this->data[$name]; } } ?>
kiedy ją dołączam do pliku znajdującego się w tym samym folderze index.php
<?php require_once('Config.php'); $dane = Config::getInstance(); ?>
działa mi prawidłowo, ale jeśli chce to wywołać w innym pliku z innego folderu
<?php require(DIR_MAIN.'common.php'); try { } catch (MyException $error){ } ?>
to już niestety nic nie wypisuję? plik common.php dołącza plik /libs/classes.php
<?php function __autoload($className){ $path = DIR_CLASS."$className.php"; $ok = true; require_once("$path"); } if($ok == false){ throw new MyException("Klasa: $className nie istnieje w ".DIR_LIBS.DIR_CLASS); } } ?>
czy to pojawia się ze względu jakiegoś błędu odnośnie ładowania klasy, która jest singletonem poprzez funkcję __autoload()?
pzdr