Php - 在代码中找到多个字符串(来自cURL)

时间:2013-04-29 13:03:03

标签: php curl

我想从通过网址加载的表中提取“名称”和“ID”。该表始终包含不同的值。 一个表可以是这个表:https://www.lectio.dk/lectio/262/FindSkema.aspx?type=stamklasse 我想把它指向的链接中的每个名字和id。 例如:姓名:1m / id:4514546468(来自链接的身份:https://www.lectio.dk/lectio/262/SkemaNy.aspx?type=stamklasse&klasseid=4514546468

我如何过滤所有东西,但我需要的东西?我用cURL获取源代码,并希望过滤掉代码,以便我得到我需要的东西。

我这是一个总是固定值的列表,但由于表总是有不同的值,我不能使用相同的代码:

    <?php

        $ch = curl_init("http://www.lectio.dk/lectio/login_list.aspx");
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
        curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
        curl_setopt($ch, CURLOPT_AUTOREFERER, TRUE);

          $output = curl_exec($ch); // do it!

          curl_close($ch); // close handle
          $expld = explode("<a", $output);
          $list = array();
          $remove = array("/", "d");
          $removefrom = array("/", "'", ">", "<");
          foreach($expld as $key){
              $gymnr = substr($key, 15, 3);
              $gymnr = str_replace($remove, "", $gymnr);
              $gymname = substr($key, 54);
              $gymname = str_replace($removefrom, "", $gymname);
              $gymname = substr($gymname, 0, -40);
              $prelist = array($gymname, $gymnr);
              $gymlist[] = $prelist;
          };
          unset($gymlist[0]);

          foreach($gymlist as $school){

              echo "<li data-id='".$school[1]."'>".$school[0]."</li>";

          }
    ?>  

我认为我可以使用正则表达式对此进行过滤,但我对此知之甚少,我需要示例或解决方案。

0 个答案:

没有答案