Jump to content
php.lv forumi

Faila dzešana no servera pēc laika


reiniger

Recommended Posts

Sveiki.

 

Man ir tikai nepieciešams uzzināt labāko variantu.

 

Vienvārdu sakot no lapas tiek veidots Report un ar PHPEXCEL tiek saglabāts .xls fails uz serveri un tad uzreiz klientam ir iespēja uzspiest download un tad tas fails vairs uz servera nav nepieciešams.

 

Lieta ir tāda ka to failu vajag tikai uz to momentu, jo atskaite var mainities ik pa minūtei.

 

Mana doma ir saglabat failu nosaukumu ar laiku hh.mm.ss_asdf (piemēram 08.24.43_qwerty). Un tad ar cron palīdzību teiksim ik pa 10 min pārbauda, ja fails ir vecāks par 10 min tad to izdzēš.

 

Vai ir kāds cits labāks risinājums?

Link to comment
Share on other sites

domāju, ka tas ir gana labs un vienkāršs risinājums. Vienīgi unixā esošajam FINDam minimālā vērtība ir diena. Ja tas ir OK, tad:

/usr/bin/find /atskaites/ -type f -ctime +1d -exec /usr/bin/rm -f {} \;

Ja vajag minūtes, tad ar shellu vien man nepietika.

Man ir ±tā:

#!/usr/bin/perl
use File::stat;
use FileHandle;
my $filelist=`ls /atskaites/`;
my @fla=split(/\n/,$filelist);
for $i (@fla) {
my $fh = FileHandle->new("/atskaites/$i", "r");
my $timestamp = stat($fh)->mtime;
my $starpiba = time()-$timestamp;
if($starpiba > 600){
`rm -rf /atskaites/$i`;
}
}

Use at your own risk (~;

Link to comment
Share on other sites

A tu negribi veidot failu Report nospiešanas laikā un faktiski neseivot to uz servera?

Vai tad es varu ar PHPEXCEL izveidot failu bez saglabāšanas uz servera un zem download pogas atļaut to atvert?

 

Man bus Linux serveris.

Sava varianta es ar php to daritu:

$Time = explode('_','08.24.43_qwerty');
$Time = explode('.',$Time[0]);
echo $Time[0].':'.$Time[1].':'.$Time[2];

Iegustot laiku un tad parbaudu vai ir vecaks tads izdzēšu!

Edited by reiniger
Link to comment
Share on other sites

Vai tad es varu ar PHPEXCEL izveidot failu bez saglabāšanas uz servera un zem download pogas atļaut to atvert?

Tev nevajag vispār failu veidot.

Kad nospiež download pogu, tad to linko uz skriptu, kurš ieliek vajadzīgos headerus un outputā uzreiz padot dokumenta saturu.

Konkrēti neesmu lietojis šo bibliotēku, bet esmu 100% pārliecināts, ka ar viņu var outputot saturu uzreiz buferī.

Skaties dokumentācijā.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...