Show
Ignore:
Timestamp:
06/29/08 02:46:29 (5 years ago)
Author:
sasezaki
Message:

lang/php/Scraper: オートフィルタ機能いちおう追加

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • lang/php/Scraper/library/Diggin/Scraper.php

    r14732 r14814  
    227227     * @param string (xpath etc) 
    228228     * @params mixed args1, args2, args3,,, 
    229      * @param string $autofilter 
    230229     * @return Diggin_Scraper Provides a fluent interface 
    231230     */ 
    232     public function process($expression, $args, $autofilter = false) 
     231    public function process($expression, $args) 
    233232    { 
    234233        $namestypes = array_slice(func_get_args(), 1); 
    235         $lastarg = array_slice(func_get_args(), -1); 
    236          
    237         if (substr($lastarg[0], 0, 1) === "*" || substr($lastarg[0], 0, 1) === "!") { 
    238             $autofilter = substr($lastarg[0], 1); 
    239             array_pop($namestypes); 
    240         } 
    241234         
    242235        require_once 'Diggin/Scraper/Process.php'; 
     
    245238                if (strpos($nametype, '=>') !== false) list($name, $types) = explode('=>', $nametype); 
    246239                if (!isset($types)) { 
    247                     self::$_processes[] = new Diggin_Scraper_Process($expression, trim($nametype), null, false, $autofilter); 
     240                    self::$_processes[] = new Diggin_Scraper_Process($expression, trim($nametype)); 
    248241                } else { 
    249242                    $types = trim($types, " '\""); 
     
    251244                    if (count($types) === 1) { 
    252245                        self::$_processes[] =  
    253                         new Diggin_Scraper_Process($expression, trim($name), $types, false, $autofilter); 
     246                        new Diggin_Scraper_Process($expression, trim($name), $types); 
    254247                    } else { 
    255248                        foreach ($types as $count => $type) { 
     
    258251                        self::$_processes[] =  
    259252                        new Diggin_Scraper_Process($expression, trim($name), 
    260                                                    trim($types[0], " []'\""), $filters, $autofilter); 
     253                                                   trim($types[0], " []'\""), $filters); 
    261254                    } 
    262255                } 
    263256            } elseif (is_array($nametype)) { 
    264                 self::$_processes[] = new Diggin_Scraper_Process($expression, $nametype[0], $nametype[1], $nametype[2], $autofilter); 
     257                self::$_processes[] = new Diggin_Scraper_Process($expression, $nametype[0], $nametype[1], $nametype[2]); 
    265258            } elseif ($nametype instanceof scraper) { 
    266259                foreach ($nametype->processes as $process) { 
     
    304297            $values = self::$_strategy->getValue($context, $process); 
    305298 
    306             if ($process->filter) { 
     299            if ($process->filters) { 
    307300                require_once 'Diggin/Scraper/Filter.php'; 
    308                 $values = Diggin_Scraper_Filter::run($values, $process->filter); 
     301                $values = Diggin_Scraper_Filter::run($values, $process->filters); 
    309302            } 
    310303