20 มิถุนายน 2550

ปัญหาเรื่อง Time Zone ใน PHP และ MySQL

Time Zone Problems, ใน PHP และ MySQL ทำให้เวลาที่ใช้งานคลาดเคลื่อน สำหรับ PHP สามารถแก้ได้ใน Code ด้วย
date_default_timezone_set("Asia/Bangkok"); ซึ่งจะตั้งให้เป็นเวลามาตรฐานประเทศไทย
ถ้าต้องการแก้ค่า default ให้แก้ใน php.ini ที่
[Date]
; Defines the default timezone used by the date functions
date.timezone = Asia/Bangkok


ส่วน MySQL ให้ใช้ SQL Command "SET time_zone = '+7:00'" ตั้งให้เป็นเวลามาตรฐานประเทศไทย
ถ้าต้องการแก้ค่า default ให้แก้ใน /etc/mysql/my.cnf (my.ini สำหรับ Windows) ที่
[mysqld]
default-time-zone=+07:00
หรือตามด้านล่าง (ใช้บน Windows ไม่ได้)
[mysqld]
default-time-zone=Asia/Bangkok

16 มิถุนายน 2550

Zip และ Unzip ด้วย PHP

บันทึกวิธีการ Zip/Unzip ด้วย PHP:
1. Download dUnzip2 จาก phpclasses.org มี 2 classes, dZip & dUnzip

2. Zip โดยใช้ dZip classs
require_once("dzip.inc.php");
$zip = new dZip("archive.zip");
$zip->addFile("myfile.doc", "myfile.doc"); // parameter แรกเป็น source file, parameter สองเป็น ชื่อ file ใน zip
$zip->addDir("subdir"); // สร้าง Folder ใน Zip
$zip->addFile("anotherfile.jpg", "subdir/newname.jpg"); // เพิ่ม file ใต้ Folder
$zip->save();
3. Unzip โดยใช้ dUnzip class
require_once("dzip.inc.php");
$zip = new dUnzip("archive.zip");
$zip->unzipAll("targetfolder"); // Unzip ทุก file ไปยัง folder ชื่อ targetfolder
$zip->unzip("source.doc", "destination.doc"); // unzip source.doc ใน zip file เป็น destination.doc