/** * Build / complete the configuration of a column * * @param type $name The name of the column * @param Conf $column The column configuration * * @return void */ protected function buildColumnConf($name, Conf $column) { $column->name = $name; foreach (self::$fields as $fieldName => $defaults) { if ($column->has($fieldName)) { continue; } foreach ($defaults['fields'] as $field) { if ($column->has($field)) { $column->set($column->get($field), $fieldName); break; } } if ($column->has($fieldName)) { continue; } $column->set($defaults['default'], $fieldName); } }
/** * Parcours $conTwo pour alimenter $conf * * @param Conf $conf Configuration alimentée * @param Conf $confTwo Configuration parcourue * * @return void */ protected static function each(Conf $conf, Conf $confTwo) { foreach ($confTwo->each() as $key => $data) { if ($conf->has($key) === false) { $conf->set($data, $key); continue; } if (gettype($conf->get($key)) !== 'object') { $conf->set($data, $key); continue; } if (is_a($conf->get($key), Conf::class) === true) { if (is_a($data, Conf::class) === true) { self::each($conf->get($key), $data); continue; } continue; } $conf->set($data, $key); } }
/** * Contrôle supression d'un élément * * @return void */ public function testHas() { $this->if($conf = new TestClass())->boolean($conf->has('fuu'))->isFalse()->and($conf->set(1, 'section1', 'name1'))->and($conf->set(2, 'section1', 'name2'))->and($conf->set('toto', 'stringSection'))->boolean($conf->has('section1', 'name1'))->isTrue()->boolean($conf->has('section1'))->isTrue()->boolean($conf->has('section1', 'name1', 'subName1'))->isFalse(); }