如何使用php在服务器源中查找文件名

时间:2017-07-28 05:56:40

标签: php html pdf web-scraping

我有一个链接。当点击该链接时,将下载pdf文件。我正在尝试将该文件保存到文件夹中。使用静态名称保存,但我想保存其实际名称,这可能吗?如果有人知道请帮助我。

示例网址: - http://www.intercoat.de/index.php?option=com_jdownloads&Itemid=206&task=finish&cid=341&catid=178&lang=en

我在下面附上我的代码。我有一系列链接,如上面的示例链接 所以我从数组中取出它

foreach($li as $lm)
  {        
    $i++;          
    $file_info = new finfo(FILEINFO_MIME_TYPE);
    $mime_type = $file_info->buffer(file_get_contents($lm));

    if($mime_type=='application/pdf')
    {
      echo $lm.$i.'<br>';
      $filecontent = file_get_contents($lm);
      file_put_contents('./uploads/myfile'.$i.'.pdf', $filecontent);
    }   

  }  

现在所有文件都没有以其确切名称保存,它保存为myfile1,myfile2 ..etc 不能使用基本名称,因为文件名不在url中。网址只是文件的来源。谁知道请帮忙

1 个答案:

答案 0 :(得分:0)

试试这个

foreach($li as $lm)
{
    $i++;

    $file_info = new finfo(FILEINFO_MIME_TYPE);
    $mime_type = $file_info->buffer(file_get_contents($lm));

    if($mime_type=='application/pdf')
    {

        echo $lm.$i.'<br>';
        $filecontent = file_get_contents($lm);
        $actual_name = basename($lm); 
        file_put_contents('./uploads/'.$actual_name', $filecontent);

     }
}