php put_file_contents位置问题,重复文件

时间:2014-04-26 04:24:59

标签: php string concatenation

以下代码从服务器获取 jpg图像。如果长度大于1,我们假设已成功抓取该文件。然后它继续为用户创建一个文件夹,如果它不存在的话。 (这部分有效)

从那里

,它应该将文件保存在/media/downloads/username位置

而是转到/media/downloads/

我现在已经看了几次我的连接,但我没有看到问题出在哪里。我看到文件名是附加到前面的用户名,所以我想它只是一个连接错误。

一旦修复了这个问题,我就有了一个更大的问题 - 因为我正在使用rand,当我循环脚本时它只给我重复。如何防止重复图像?!

if (strlen($data) > 1) {
     $prePath = 'media/download/from_'.$sender.'_to_'.$recipient.'_id_'.$snapid.'.jpg';
     if (!file_exists('media/download/'.$username)) {
    mkdir('media/download/'.$username, 0777, true);
 }
 if (file_exists($prePath)){
    $finalPath = 'media/download/'.$username.'/from_'.$sender.'_to_'.$recipient.'_id_'.$snapid.rand(0,100).'.jpg';
 }  
 else {
    $finalPath = 'media/download/'.$username.'/from_'.$sender.'_to_'.$recipient.'_id_'.$snapid.rand(0,100).'.jpg';
    }

//echo "<img src='$data'></img>";
file_put_contents($finalPath, $data);
echo  "<a href=".$finalPath."> <img src='".$finalPath."' alt='Smiley face' height='100' width='100'> </a>";

}

0 个答案:

没有答案