Trang Nhất
|
Forums
|
Site Map
|
Góp Ý
|
Liên Hệ
Thứ Sáu, 05.12.2008, 01:29am (GMT+7)
 
Việt Nam sẽ sớm đưa IPv6 vào sử dụng ; Một “đại gia” về thông tin trở lại thị trường báo điện tử ; 10 công cụ biên tập ảnh online khi không có Photoshop ; Việt Nam đứng thứ 5 về tỷ lệ tăng PC ma ; Những công nghệ tiêu biểu nhất 2008
[Nâng Cao]
 
Tổng Hợp  
  Tin Tức CNTT
  Quảng Bá Website
  Quảng Cáo Trực Tuyến
  Làm Chủ Website
  Thương Mại Điện Tử
  Bảo Mật
  Database
  Hacker
  Lập Trình
  Đồ Họa
  Website Của Tôi
  Chơi Blog
  Download
  Ebook
  Forums
  Danh Bạ Web
   Tiêu Điểm
AJAX - tuong lai cho ?ng d?ng Web
 
Lập Trình
 
Chuyển nội dung file sang XML
Thứ Hai, 04.06.2007, 02:51pm (GMT+7)


Cần phải tạo 2 file "
class_file2xml.php" & "usage.php".

File: class_file2xml.php

  1. <?  
  2. class file2xml  
  3. {  
  4.    var $folder_read;  
  5.    var $folder_write;  
  6.    var $xml_write;  
  7.    var $ext_read = array();  
  8.    var $file_in =  array();  
  9.    var $time_limit;  
  10.    var $size_limit;  
  11.    function listfile()  
  12.    {  
  13.    $file_in = array();  
  14.   
  15.     if ($handle = @opendir($this->folder_read))  
  16.     {  
  17.     while (false !== ($file = readdir($handle)))  
  18.     {  
  19.         if ($file != "." && $file != "..")  
  20.         {  
  21.              if (is_file($this->folder_read."/".$file))  
  22.              {  
  23.                $mfile = explode(".",$file);  
  24.                $f_size = filesize($this->folder_read."/".$file);  
  25.                $ext = $mfile[count($mfile)-1];  
  26.                if (count($mfile)==1 and in_array("NULL",$this->ext_read) and ($f_size <= $this->size_limit))  
  27.                {  
  28.                  $file_in[] .= $file;  
  29.                }  
  30.                elseif (in_array(strtolower($ext),$this->ext_read) and ($f_size <= $this->size_limit))  
  31.                {  
  32.                  $file_in[] .= $file;  
  33.                }  
  34.              }  
  35.         }  
  36.     }  
  37.     closedir($handle);  
  38.     $this->file_in  = $file_in;  
  39.     $this->dumpxml();  
  40.     }  
  41.     else die("Can not read this folder: "$this->folder_read );  
  42.    }  
  43.    function dumpxml()  
  44.    {  
  45.           if (count($this->file_in)>0)  
  46.           {  
  47.           // SET time excute  
  48.            ini_set("max_execution_time",$this->time_limit);  
  49.           // date  
  50.           $date = date("H:j d-m-Y");  
  51.           //repare file forwrite  
  52.           $handle_w = fopen($this->folder_save."/".$this->xml_write, "w+");  
  53.           fclose($handle_w);  
  54.           echo "================================<br>";  
  55.           echo "<b>File2XML v1.0</b><br>";  
  56.           echo " Author: <b>quantriWEB</b><br>";  
  57.           echo " Website: <b>www.quantriweb.com</b><br>";  
  58.           echo " Creating file: <b>".$this->xml_write."</b><br>";  
  59.           echo " Save at: <b>".$this->folder_save."</b><br>";  
  60.           echo " Date: <b>".$date."</b><br>";  
  61.           echo "================================<br>";  
  62.           // Create XML struc  
  63.           $dom = new DOMDocument('1.0''iso-8859-1');  
  64.           $element = $dom->appendChild(new DOMElement('information'));  
  65.           $element_auth      = new DOMElement('author''FILE to XML coded by LM - huynhhaihuynh@gmail');  
  66.           $element_version   = new DOMElement('version''File2XML v1.0');  
  67.           $element_date      = new DOMElement('date_created'$date);  
  68.           $element_file      = new DOMElement('file_convert'count($this->file_in));  
  69.           $element_conv =  $element->appendChild(new DOMElement('main'));  
  70.           $is=0;  
  71.           $total = array();  
  72.           foreach ($this->file_in as $fl)  
  73.           {  
  74.           $is++;  
  75.           $fl_full = $this->folder_read.$fl;  
  76.           $handle = fopen($fl_full , "r");  
  77.           while (!feof($handle))  
  78.           {  
  79.               $buffer = fgets($handle, 4096);  
  80.   
  81.               $total[$is].=$buffer;  
  82.           }  
  83.           fclose($handle);  
  84.          $element_conv_file_details =   $element_conv->appendChild(new DOMElement('file'));  
  85.          $element_conv_file_name    =    new DOMElement('file_name'$fl);  
  86.          $element_conv_file_size    =    new DOMElement('file_size', @filesize($fl_full)." bytes");  
  87.          $element_conv_file_data    =    new DOMElement('file_data'base64_encode($total[$is]));  
  88.          $element_conv_file_details->appendChild($element_conv_file_name);  
  89.          $element_conv_file_details->appendChild( $element_conv_file_size);  
  90.          $element_conv_file_details->appendChild( $element_conv_file_data);  
  91.          echo "Writing file: $fl<br>";  
  92.           }  
  93.           $element->appendChild($element_auth);  
  94.           $element->appendChild($element_version);  
  95.           $element->appendChild($element_date);  
  96.           $element->appendChild($element_file);  
  97.           $element->appendChild($element_conv);  
  98.           $con_save =  $dom->save($this->folder_save."/".$this->xml_write);  
  99.           echo "================================<br>";  
  100.           echo "DONE! Your files are writen successful:  ".filesize($this->folder_save."/".$this->xml_write)." bytes";  
  101.     // End  
  102.     }  
  103.     else die("No list file found");  
  104.    }  
  105. }  
  106.   
  107. ?>  

File: usage.php
  1. <?  
  2. require_once("class_file2xml.php");  
  3. $k = new file2xml;  
  4. $k->folder_read = "./";    // Folder ctontains file need encode  
  5.   
  6. $k->folder_save = "./";     // Folder save XMLoutput file  
  7.   
  8. $k->xml_write   = "dump_file.xml";  // File name XML  
  9.   
  10. $k->time_limit  = "600";  // Time execution  
  11. $k->size_limit = "500000000"// LIMIT bytes for per file  
  12. $k->ext_read    = array("ico");  // Null is file without extension  
  13. /* 
  14.  array("doc","mpg","txt","php","gif"); 
  15.  EG: file no exteions key in array is NULL 
  16.  array("NULL","mpg","txt","php","gif"); 
  17. */  
  18. echo $k->listfile();  
  19. ?>  
Theo PHP Vietnam

    In trang        Gửi bạn bè        Đầu Trang


Các Tin Khác:
Category đa cấp - đệ qui function (04.06.2007)
Bước tiến vượt bậc của PHP 5 (29.05.2007)
Tạo menu chuyên nghiệp cho website (29.05.2007)
10 công cụ miễn phí tốt nhất cho .NET (29.05.2007)
Nhạc nền ngẫu nhiên (26.05.2007)
Thiết kế trang Web có tăng cường tính năng Java (26.05.2007)
Đặt Bộ đếm trên trang Web (26.05.2007)
Active X - Công cụ tuyệt vời để tạo website đa phương tiện (22.05.2007)
Thuộc tính của .NET (20.05.2007)
Vấn đề an ninh - bảo mật trong Nukeviet Portal (20.05.2007)
Góp ý về việc lập trình giao diện trong VB (20.05.2007)
 
  Đẹp + Tech



[Lên Đầu Trang]