package.php 900 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. <?php namespace Laravel;
  2. class Package_Facade extends Facade { public static $resolve = 'package'; }
  3. class Package {
  4. /**
  5. * All of the loaded packages.
  6. *
  7. * @var array
  8. */
  9. private $loaded = array();
  10. /**
  11. * Load a package or set of packages.
  12. *
  13. * The package name should correspond to a package directory for your application.
  14. *
  15. * @param string|array $packages
  16. * @param string $path
  17. * @return void
  18. */
  19. public function load($packages, $path)
  20. {
  21. foreach ((array) $packages as $package)
  22. {
  23. if ( ! $this->loaded($package) and file_exists($bootstrap = $path.$package.'/bootstrap'.EXT))
  24. {
  25. require $bootstrap;
  26. }
  27. $this->loaded[] = $package;
  28. }
  29. }
  30. /**
  31. * Determine if a given package has been loaded.
  32. *
  33. * @param string $package
  34. * @return bool
  35. */
  36. public function loaded($package)
  37. {
  38. return array_key_exists($package, $this->loaded);
  39. }
  40. }