26
Phần 02: PHP File

Giao trinh PHP nang cao - Các hàm xử lý file trong PHP (CH003 Bài 2)

Embed Size (px)

DESCRIPTION

Giao trinh PHP nang cao - Các hàm xử lý file trong PHP (CH003 Bài 2) Để tìm hiểu kỹ hơn các bạn hãy truy cập: Website: www.zend.vn Facebook: facebook.com/zendvngroup

Citation preview

  • 1. Phn 02: PHP File

2. Vn 01: Kim tra s tn ti ca tp tin, th mc S dng hm file_exist($fileName) kim tra s tn ti ca tp tin, th mc $filename: tn (ng dn) tp tin, th mc cn kim tra Kt qu tr v true Tn ti Kt qu tr v false Khng tn ti 3. Vn 02: Xem mt s thng tin c bn ca tp tin, th mc filetype($fileName) tr v kiu ca $filename (tp tin hoc th mc) filesize($fileName) tr v dung lng ca $filename (n v bytes) is_readable($fileName) kim tra $fileName c c quyn c hay khng ? is_writeable($fileName) kim tra $fileName c c quyn ghi hay khng ? is_executable($fileName) kim tra $fileName c c quyn thc thi hay khng ? 4. Vn 03: Cc hm ly thng tin t ng dn basename($path) tr v kt qu l tn ca tp tin t ng dn $path dirname($path) tr v tn th mc ti ng dn $path pathinfo ($path, $options) tr v mt mng cc thng tin t ng dn $path o dirname o basename o extension 5. Vn 04: Thng k s dng, s t v s k t trong file file ($fileName) c tp tin $fileName thnh mt mng, mi dng trong tp tin $fileName tng ng vi mt phn t ca mng file_get_contents ($fileName) c tp tin $fileName thnh mt chui 6. Vn 05: Ghi ni dung vo tp tin vi file_put_contents S dng hm file_put_contents ($fileName, $data, $mod) ghi ni dung $data vo tp tin $fileName Qu trnh thc thi ca hm file_put_contents(): To ra tp tin nu tp tin cha tn ti M tp tin Ghi ni dung ng tp tin Nu $mod = FILE_APPEND ni dung c tp tin c gi, ni dung mi c ghi vo cui tp tin Nu ghi thnh cng, tr v tng s k t ghi ngc li tr v FALSE 7. Vn 06: i tn tp tin, th mc S dng hm rename ($oldName, $newName) i tn tp tin, th mc t gi tr $oldName thnh gi tr $newName (lu thay i c phn ng dn) Hm tr v kt qu TRUE nu rename thnh cng, tr v kt qu FALSE nu rename khng thnh cng 8. Vn 07: Sao chp tp tin S dng hm copy ($sourceFile, $destinationFile) copy ni dung t tp tin $sourceFile sang tp tin $destinationFile Hm tr v kt qu TRUE nu copy thnh cng, tr v kt qu FALSE nu copy khng thnh cng Lm sao copy mt th mc no ? 9. Vn 08: Khi qut v vn phn quyn tp tin, th mc (P1) Xt mi quan h gia ngi dng v mt tp tin, th mc. Chng ta c 3 nhm sau y: Owner/User: Ngi s hu, ch ti khon. Group: Cc ti khon cng hot ng trong mt nhm. Other/Guest: Ngoi 2 i tng trn. 10. Vn 08: Khi qut v vn phn quyn tp tin, th mc (P2) Xt v quyn thao tc gia ngi dng v mt tp tin. Chng ta c 3 loi quyn sau: Read: c th c ni dung trong tp tin Write: c th thay i ni dung ca tp tin Execute: c th m tp tin (khi chy chng trnh nu l mt tp tin ng dng) 11. Vn 08: Khi qut v vn phn quyn tp tin, th mc (P3) Xt v quyn thao tc gia ngi dng v mt th mc. Chng ta c 3 loi quyn sau: Read: C th duyt ni dung trong th mc (Xem trong th mc c g, phi i km vi quyn Execute). Write: C th thay i ni dung trong th mc ny (Thm, xa, sa, i tn th mc/tp tin bn trong th mc ny). Execute: C th m th mc (M th mc ra, nhng khng th thy g trong th mc ny nu khng i km vi quyn Read). 12. Vn 08: Khi qut v vn phn quyn tp tin, th mc (P4) Cp quyn truy cp cho tp tin, th mc: Quyn cho mt tp tin, th mc thng c biu din tng ng vi mt s nguyn c 3 ch s xyz o S th nht x - i din cho quyn hn ca Owner/User. o S th hai y - i din cho quyn hn ca Group. o S th ba z - i din cho quyn hn ca Other/Guest. 13. Vn 08: Khi qut v vn phn quyn tp tin, th mc (P5) Gi tr ca cc ch s xyz, quy nh nh sau: Read = 4 Write = 2 Execute = 1 Read + Write + Execute = 4 + 2 + 1 = 7 (Ton quyn) Read + Execute = 4 + 1 = 7 (Ch c th c v thc thu tp tin) 14. Vn 08: Khi qut v vn phn quyn tp tin, th mc (P6) Mt tp tin c cu hnh vi quyn 754, nh vy chng ta c cc thng tin sau: Ch s u tin 7 = 4 + 2 + 1 quyn: ton quyn Owner/User c ton quyn Ch s th hai 5 = 4 + 1 quyn: c v thc thi Group c quyn c v thc thi Ch s th ba 4 quyn: c Other/Guest ch c quyn c tp tin. 15. Vn 09: To Xa Cp quyn cho th mc S dng hm mkdir ($path, $mode) to ra th mc ng dn $path, vi quyn truy cp vo th mc l $mode S dng hm rmdir ($path) xa th mc ng dn $path S dng hm fileperms ($dirName) xem quyn truy cp i vi th mc $dirName S dng hm chmod ($dirName, $mod) cp quyn truy cp cho th mc $dirName 16. Vn 10: To Xa Cp quyn cho tp tin S dng hm file_put_contents ($path, null) to ra tp tin ng dn $path S dng hm unlink ($path) xa tp tin ng dn $path S dng hm fileperms ($fileName) xem quyn truy cp i vi tp tin $fileName S dng hm chmod ($fileName, $mod) cp quyn truy cp cho tp tin $fileName 17. Vn 11: Lit k danh sch tp tin v th mc S dng hm glob ($pattern) ly danh sch cc tp tin v th mc vi tn tha $pattern S dng tham s th hai GLOB_ONLYDIR kt qu tr v ch bao gm cc th mc. 18. Vn 12: Tm hiu hm parse_ini_file (1) Cu trc tp tin *.ini 19. Vn 12: Tm hiu hm parse_ini_file (2) S dng hm parse_ini_file ($fileName) c ni dung $fileName thnh mt mng. Lu nu mun c lun cc phn section cn truyn gi tr TRUE vo tham s th hai 20. Vn 13: Mt s nh ngha v h thng cy th mc (1) 21. Vn 13: Mt s nh ngha v h thng cy th mc (2) Root-directory: th mc cao nht trong cy th mc v trn n khng cn c mt th mc no khc. Root-directory c nh du vi k hiu / Working-directory (current directory): th mc m ngi s dng ang lm vic Parent-directory: th mc cha - th mc nm ngay pha trn mt th mc khc trong cy th mc Path (ng dn): mi tp tin hay th mc trong h thng linux c ch nh bi mt ng dn ( truy cp vo tp tin hay th mc ) 22. Vn 13: Phn bit ng dn tuyt i ng dn tng i ng dn tuyt i: o L nhng ng dn c tnh t root (/), i qua cc th mc khc cho n tp tin hoc th mc ch o Khi chng ta ang article.php, ng dn tuyt i n cc tp tin style.css s l /style/style.css vi.php s l /lib/language/vi.phpstyle.css o Thng c dng vi cc hm include, require nhng cc tp tin .php vo mt tp tin php no hoc dng khai bo th mc cha hnh nh trn host 23. Vn 13: Phn bit ng dn tuyt i ng dn tng i ng dn tng i: o L nhng ng dn c im xut pht l th mc hin ti (current diractory). o Khi chng ta ang article.php, ng dn tng i n cc tp tin style.css s l ../css/style.css vi.php s l /lib/language/vi.php o Thng c s dng load cc tp tin javascript, css v hnh nh ln v hin th trong trang web 24. Vn 14: Thao tc vi th mc getcwd() tr v th mc hin ti realpath() tr v ng dn tuyt i ca ng dn $path chdir() thay i th mc hin ti dir() m mt th mc ln v thao tc vi th mc (3 thao tc read, rewind, close ) opendir() m mt th mc ln v thao tc vi th mc closedir() ng th mc c m bi hm opendir() scandir() ly danh sch cc tp tin v th mc ca ng dn $path 25. Vn 15: Lit k cu trc tp tin th mc n cp 2 26. Bi tp: Mt s yu cu b sung Khi danh sch rng: hin th thng bo, n button Delete File (index.php) Thay i thng bo trong trng hp Add v Edit File (add.php, edit.php) Truyn ID ca file cha tn ti: hin th thng bo (edit.php, delete.php) Xa nhiu file: Hin th mt hp thoi xc nhn li yu cu xem ngi dng c chc chn mun xa cc file hay khng ? (multy-delete.php)