/
Support.php
43 lines (42 loc) · 1.27 KB
/
Support.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<?php
namespace Phpna\Support;
// use Illuminate\Contracts\Foundation\Application;
// use Phpna\Builder\Components\Constracts\Repository;
use Illuminate\Foundation\AliasLoader;
class Support
{
public $app;
public $phpna;
public function __construct($app)
{
$this->app = $app;
$this->phpna = $this->app['phpna'];
}
public function registerProviders()
{
$providers = [];
foreach ($this->phpna->getServices() as $package) {
if(key_exists('providers',$package) && is_array($package['providers'])){
$providers = array_collapse([$providers,$package['providers']]);
}
}
foreach ($providers as $provider) {
$this->app->register($provider);
}
}
public function aliasFacades()
{
$facades = [];
foreach ($this->phpna->getServices() as $package) {
if(key_exists('facades',$package) && is_array($package['facades'])){
$facades = array_collapse([$facades,$package['facades']]);
}
}
foreach ($facades as $facade) {
$loader = AliasLoader::getInstance();
foreach ($facades as $name => $serve) {
$loader->alias($name, $serve);
}
}
}
}