/** * Verifica se a palavra informada existe no filtro * * No parâmetro $extra, informe um array com as chaves * 'badwords' e/ou 'ignored'. Como valor das chaves, informe-os * em um array, como: * * $extra = [ * 'badwords' => ['palavraUm', 'palavraDois', ...], * 'ignored' => ['palavraTres', 'palavraQuatro', ...], * ]; * * 'badwords' são palavras que deseja acrescentar ao filtro * 'ignored' são palavras que serão ignoradas pelo filtro * * @param string $string Palavra a ser verificada * @param array $extra Array com informações adicionais * @return boolean */ public static function verify($string, array $extra = null) { require_once __DIR__ . '/Config/Filter.php'; $string = static::doubleChars($string); $getFilter = Config::get('filter'); if (!is_null($extra)) { if (array_key_exists('badwords', $extra)) { $getFilter = array_merge($extra['badwords'], $getFilter); } if (array_key_exists('ignored', $extra)) { for ($i = 0; $i < count($extra['ignored']); $i++) { $extra['ignored'][$i] = static::doubleChars($extra['ignored'][$i]); } for ($i = 0; $i < count($getFilter); $i++) { foreach ($extra['ignored'] as $ignored) { if (is_int(strripos($ignored, $getFilter[$i]))) { $arr[] = $i; } } } if (isset($arr)) { foreach ($arr as $a) { unset($getFilter[$a]); } } } } foreach ($getFilter as $filter) { if (is_int(strripos($string, $filter))) { return true; } } return false; }
public function testGetValueOnArray() { Config::set('arrayTwo', ['firstKey' => ['secondKey' => 'Valor da segunda chave']]); $value = Config::get('arrayTwo.firstKey.secondKey'); $this->assertEquals($value, 'Valor da segunda chave'); }