미리보기를 위해 파일을 읽으려면이 코드가 있어야하지만 단점은 클라우드에서 먼저 파일을 다운로드하고 읽어야한다는 것입니다. 그러나 특정 파일을보고 난 후에 삭제하려는 공간이 낭비됩니다. 이 작업을 수행하는 자동 방법이 있습니까? 아니면 닫기 버튼에 통합해야합니까?stream_get_contents();를 사용한 후 zip 파일을 자동으로 삭제하는 방법; PHP에서 파일을 볼 수 있습니까?
// Get the container we want to use
$container = $conn->get_container('mailtemplate');
//$filename = 'template1.zip';
// upload file to Rackspace
$object = $container->get_object($filename);
//var_dump($object);
//echo '<pre>' . print_r($object,true) . '</pre>';
$localfile = $dir.$filename;
//echo $localfile;
$object->save_to_filename($localfile);
if($_GET['preview'] == "true")
{
$dir = "../mailtemplates/";
$file1 = $_GET['tfilename'];
$file = $dir.$file1;
$file2 = "index.html";
$info = pathinfo($file);
$file_name = basename($file,'.'.$info['extension']);
$path = $file_name.'/'.$file2;
$zip = new ZipArchive();
$zip->open($file);
$fp = $zip->getStream($path);
if(!$fp)
{
exit("faileds\n");
$zip->close();
unlink($dir.$filename);
}
else
{
$stuff = stream_get_contents($fp);
echo $stuff;
$zip->close();
if($stuff != null)
{
unlink($dir.$filename);
}
}
}
else
{
unlink($dir.$filename);
}
"your"코드를 이해하지 못하는 것 같습니다. 이미 여러 개의 unlink() 호출이 있습니다. – KingCrunch
왜냐하면 내가 왜 작동하지 않을지 모르겠다. 나는 주변에 몇 개의 부품을 놓고 내가 어떤 부품이 작동하지 않는지, ulink와 분리 된 코드가 작동 하는지를 결정할 수있을 것이라고 기대했기 때문이다. – magicianiam
그래서'$ file'과'$ file1'은 모두 같은 파일명을 가지고 있지만 경로 정보를 가지고 있고'$ file_name'이 있습니다. 다시 같은 이름의 확장자를 가진 bgut입니까? 보다 유익한 변수 이름을 고를 수 있습니다. 변수'$ file2'를 하드 코딩 한 다음 한 번만 사용하십시오.'$ IndexFilename'과 같이 호출하거나 변수를 제거하십시오. – Basic