ทำหมดนี้สามารถทำได้หมดแล้ว
ดังนี้
โค้ด: เลือกทั้งหมด
//อ่านรายชื่อไฟล์จาก server
function getDir($ftp_url,$uname,$passwd,$path)
{
$curl = curl_init();
$timeout = 0;
curl_setopt($curl, CURLOPT_URL,$ftp_url."/".$path."/");
curl_setopt($curl, CURLOPT_FTPLISTONLY, 1);
curl_setopt($curl, CURLOPT_USERPWD, $uname.":".$passwd);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($curl, CURLOPT_CONNECTTIMEOUT, $timeout);
$result = curl_exec ($curl);
if(!$result)
{
return curl_error($curl);
}else{
$list = explode(".pdf",$result);
$first = explode("..",$list[0]);
$list[0] = trim($first[1]);
curl_close ($curl);
return array_slice($list,0,(count($list)-1));
}
}
//ส่วนการทำงานหลัก
$filelist = getDir("ftp.*****.com","****","*****","public_html/pdf");
$curl = curl_init();
for($i=0;$i<count($filelist);$i++)
{
$file = trim($filelist[$i]).".pdf";
$fp = fopen("pdf/".$file, "wb");
curl_setopt ($curl, CURLOPT_URL, "http://www.*****.com/pdf/".$file);
curl_setopt ($curl, CURLOPT_CONNECTTIMEOUT,0);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_BINARYTRANSFER, 1);
curl_setopt($curl, CURLOPT_FILE, $fp);
curl_exec ($curl);
fclose($fp);
$temp = trim($filelist[$i]).date("dmyhis");
if(exec('pdftotext.exe '.'pdf/'.$file.' tmp/'.$temp.'.txt'))
{
echo "Program ผิดพลาด";
}else{
$f = fopen("tmp/".$temp.".txt","r");
if(!$f)
{
echo "Error read file!";
}else{
$count = 1;
$data = "";
while(!feof($f))
{
if($count==5){
$data = fgets($f);
}else{ fgets($f);}
$count++;
}
fclose($f);
$list = explode(":",$data);
echo "<p>";
//Name
$n = explode(")",$list[1]);
$ntmp = explode("(",$n[0]);
$gname = trim($ntmp[0]);
$name = trim($n[1]);
echo "NAME:".$gname." ".$name."<br />";
//HN
$n = explode(" ",$list[2]);
$hn = trim($n[1]);
echo "HN: ".$hn."<br />";
//Lab No.
$n = explode(" ",$list[3]);
$lab = trim($n[1]);
echo "Lab No.: ".$lab."<br />";
//Date
$n = explode(" ",$list[4]);
$date = trim($n[0]);
echo "Request Date: ".$date."<br />";
//AN/VN
$n = explode(" ",$list[5]);
$vn = trim($n[1]);
echo "AN/VN: ".$vn."<br />";
//แผนก
//$n = explode(" ",$list[6]);
$clin = trim($list[6]);
//$clin_en = trim($n[2]);
echo "Clin/W.: ".$clin."<br />";
echo "</p>";
$delfile = "tmp/".$temp.".txt";
unlink($delfile);
}
}
}
curl_close ($curl);
แต่ความเป็นจริงที่จะนำไปใช้ไฟล์อาจจะมีเป็นร้อยๆเป็นพันๆไฟล์ ไม่ทราบว่าพอจะมีทางทำให้มันเร็วขึ้นไหมครับ