Ejemplo n.º 1
0
 /**
  * clean
  *
  * @param string $text
  *
  * @return  mixed
  */
 public function clean($text)
 {
     if (!$this->type) {
         return $text;
     }
     return static::$filter->clean($text, $this->type);
 }
Ejemplo n.º 2
0
 /**
  * Method to test getHandler().
  *
  * @return void
  *
  * @covers Windwalker\Filter\InputFilter::getHandler
  * @TODO   Implement testGetHandler().
  */
 public function testGetAndSetHandler()
 {
     // Iron Man
     $closure = function ($source) {
         return 'Iron Man';
     };
     $this->instance->setHandler('armor', $closure);
     $return = $this->instance->clean('Tony Stark', 'ARMOR');
     $this->assertEquals('Iron Man', $return);
     $handler = $this->instance->getHandler('armor');
     $this->assertInstanceOf('Closure', $handler);
     // Thor
     $this->instance->setHandler('hammer', new StubThorCleaner());
     $return = $this->instance->clean('Thor', 'hammer');
     $this->assertEquals('God', $return);
     $handler = $this->instance->getHandler('hammer');
     $this->assertInstanceOf('Windwalker\\Filter\\Cleaner\\CleanerInterface', $handler);
 }
Ejemplo n.º 3
0
 /**
  * getByPath
  *
  * @param   string  $paths
  * @param   mixed   $default
  * @param   string  $filter
  *
  * @return  array|null
  */
 public function getByPath($paths, $default = null, $filter = InputFilter::CMD)
 {
     if (empty($paths)) {
         return null;
     }
     $args = is_array($paths) ? $paths : explode('.', $paths);
     $dataTmp = $this->data;
     foreach ($args as $arg) {
         if (is_object($dataTmp) && !empty($dataTmp->{$arg})) {
             $dataTmp = $dataTmp->{$arg};
         } elseif (is_array($dataTmp) && !empty($dataTmp[$arg])) {
             $dataTmp = $dataTmp[$arg];
         } else {
             return $default;
         }
     }
     return $this->filter->clean($dataTmp, $filter);
 }