get() публичный Метод

retreive data
public get ( string $key, mixed $default = null ) : mixed
$key string data field key
$default mixed default data
Результат mixed
Пример #1
0
 /**
  * getChanged
  *
  * @param ComposerFileWriter $writer
  *
  * @return array
  */
 protected function getChangedPlugins(ComposerFileWriter $writer)
 {
     $changed = [];
     $changed['installed'] = $writer->get('xpressengine-plugin.operation.changed.installed', []);
     $changed['updated'] = $writer->get('xpressengine-plugin.operation.changed.updated', []);
     $changed['uninstalled'] = $writer->get('xpressengine-plugin.operation.changed.uninstalled', []);
     return $changed;
 }
Пример #2
0
 /**
  * plugin composer 파일에 등록된 플러그인 제어정보를 require에 적용한다.
  *
  * @param ComposerFileWriter $writer composer file writer
  *
  * @return void
  */
 private static function applyRequire(ComposerFileWriter $writer)
 {
     $installs = $writer->get('xpressengine-plugin.operation.install', []);
     foreach ($installs as $name => $version) {
         $writer->addRequire($name, $version);
     }
     $updates = $writer->get('xpressengine-plugin.operation.update', []);
     foreach ($updates as $name => $version) {
         $writer->addRequire($name, $version);
     }
     $uninstalls = $writer->get('xpressengine-plugin.operation.uninstall', []);
     foreach ($uninstalls as $name) {
         $writer->removeRequire($name);
     }
 }
Пример #3
0
 /**
  * 현재 진행중인 플러그인 설치 작업 내역을 반환한다.
  *
  * @param ComposerFileWriter $writer composer file writer
  *
  * @return array|null
  */
 public function getOperation(ComposerFileWriter $writer)
 {
     $status = $writer->get('xpressengine-plugin.operation.status');
     if ($status === null) {
         return null;
     }
     $runnings = [];
     $runningMode = 'install';
     $runnings = $writer->get("xpressengine-plugin.operation.install", []);
     if (empty($runnings)) {
         $runningMode = 'update';
         $runnings = $writer->get("xpressengine-plugin.operation.update", []);
     }
     if (empty($runnings)) {
         $runningMode = 'uninstall';
         $runnings = $writer->get("xpressengine-plugin.operation.uninstall", []);
     }
     // operation이 없을 경우, return void
     if (empty($runnings)) {
         return null;
     }
     // operation이 있다.
     // expired 조사
     $deadline = $writer->get('xpressengine-plugin.operation.expiration_time');
     $expired = false;
     if ($deadline !== null && $deadline !== 0) {
         $deadline = Carbon::parse($deadline);
         if ($deadline->isPast()) {
             $expired = true;
         }
     }
     $runningsInfo = [];
     if (!empty($runnings)) {
         if ($runningMode === 'uninstall') {
             $package = current($runnings);
         } else {
             $package = key($runnings);
         }
         list(, $id) = explode('/', $package);
         $runningsInfo[$package] = $this->provider->find($id);
         $runningsInfo[$package]->pluginId = $id;
     }
     $changed = $writer->get('xpressengine-plugin.operation.changed', []);
     foreach ($changed as $type) {
         foreach ($type as $package => $version) {
             list(, $id) = explode('/', $package);
             if (!isset($runningsInfo[$package])) {
                 $runningsInfo[$package] = $this->provider->find($id);
             }
         }
     }
     if ($status === ComposerFileWriter::STATUS_RUNNING && $expired === true) {
         $status = 'expired';
     }
     return compact('runnings', 'status', 'runningMode', 'expired', 'changed', 'runningsInfo');
 }