Ejemplo n.º 1
0
        return;
    });
    RequirePHP::_('circ2', array('circ1'), function ($circ1) {
        return;
    });
    RequirePHP::_(array('circ1'), function ($circ1) {
        echo '<p>This shouldn\'t have run!!</p>';
    });
} catch (RequireTooDeepException $e) {
    RequirePHP::undef('circ1');
    echo '<p>Circular dependencies don\'t crash the script!! Yay!! See the message: ' . $e->getMessage() . '</p>';
}
// Let's test alias and module removal.
RequirePHP::_('removemodule', array(), function () {
    echo '<p>Uh oh. Module removal failed. :(</p>';
});
RequirePHP::alias('removealias', 'removemodule');
RequirePHP::undefAlias('removealias');
RequirePHP::_(array('removealias'), function () {
    echo '<p>Uh oh. Alias removal failed. :(</p>';
});
$failed = false;
RequirePHP::undef('removemodule');
RequirePHP::_(array('removemodule'), function () {
    global $failed;
    $failed = true;
    return;
});
if (!$failed) {
    echo '<p>Looks like alias and module removal passed! :)</p>';
}
Ejemplo n.º 2
0
namespace SciActive;

// An example of how you could use RequirePHP as a service locator.
require "src/RequirePHP.php";
// Define service.
RequirePHP::_('service', array(), function () {
    class service
    {
        private $value = 0;
        public function increment()
        {
            $this->value++;
        }
        public function printOut()
        {
            echo $this->value;
        }
    }
    return new service();
});
// Locate the service.
RequirePHP::_(array('service'), function (service $service) {
    $service->increment();
});
// Locate the service again.
RequirePHP::_(array('service'), function (service $service) {
    $service->increment();
    echo 'You should see "2".<br>';
    $service->printOut();
});