PHP匹配类

<?
#####从页码源代码中获得资料的类########
#####用法:先用取目录函数one_dir()或two_dir, 然后在分别用url_items(),get_items(),res_items()函数,
#####最后用写入数据库函数mysql()函数#####
class match
    {
      var $array_preg;//preg的匹配数组
      var $array_ereg;//ereg的匹配数组
      var $array_add;//偏移量的数组
      var $array_sign;//标记数组;例如<table>(.*)</table>;如果$array_sign[0]=1代表取两者之间,如果为0代表两者都取;
      var $dir;
      function url_items($array_dir,$front)//取每个文件下的需要的资料(网址)集合(数组)
        {
          $k=0;
          for($j=0;$j<count($array_dir);$j++)
          {
          $url_file=file($array_dir[$j]);
          for($i=0;$i<count($url_file);$i++)
            {
              if(preg_match($this->array_preg[0],$url_file[$i]))
                {
                    eregi($this->array_ereg[0],$url_file[$i+$this->array_add[0]],$head);
                    $array_url[$k++]=$front.$head[$this->array_sign[0]];
                }
            }
          }
          return $array_url;
        }
      function  get_items($array_url)//取网址集合下的每个网址所对应的FILE文件
        {
            $k=0;
            for($i=0;$i<count($array_url);$i++)
                {
                    $array_file[$k++]=file($array_url[$i]);
                }
            return $array_file;
        }
      function res_items($array_file)//对每个FILE文件分析,取得想要的资料
        {
            $k=0;
            for($j=0;$j<count($array_file);$j++)
                {
                    for($i=0;$i<count($array_file[$j]);$i++)
                        {
                            if(preg_match($this->array_preg[1],$array_file[$j][$i]))
                                {
                                    eregi($this->array_ereg[1],$array_file[$j][$i+$this->array_add[1]],$head);
                                    $array_res[$k++]=trim($head[$this->array_sign[1]]);
                                }
                        }
                }
            return $array_res;
        }
      function mysql($server,$user,$pass,$db,$query,$array_res)//把取得的资料,存入数据库中
        {
            mysql_connect($server,$user,$pass);
            mysql_select_db($db);
            for($i=0;$i<count($array_res);$i++)
                {
                    $query1=$query."('$array_res[$i]')";
                    //echo $query1.'<br>';
                    mysql_query($query1);
                }
            mysql_close();
        }
      function dir_one($min,$max,$type)//取目录文件方法一
        {
            $k=0;
            for($i=$min;$i<$max;$i++)
                {
                    $array_dir[$k++]=$this->dir.$i.".".$type;
                }
            return $array_dir;
        }
      function dir_two()//取目录文件方法二
        {
            $k=0;
            $handle=opendir($this->dir);
            while($file=readdir($handle))
                {
                  if($file!="."&&$file!="..")
                    {
                        $array_dir[$k++]=$this->dir.$file;
                    }
                }
            closedir($handle);
            return $array_dir;
        }
    }
?>

 

你可能感兴趣的:(PHP,mysql,J#)