Thursday, 28 April 2011

Giới thiệu về PHP Filesystem

Để lại áy láy quá post tiếp:
    Filesystem đơn giản là tất cả những gì mà ta nhìn thấy trong folder của host nơi lưu trữ code -hết-.
   



Nếu cho bạn một thư mục trong window( unix) có một thằng "tailieu.doc"  nằm trong đó bảo bạn nghich đi bạn sẽ làm gì (-99% chằng biết làm gì- xóa nó đi chứ còn làm gì  ). Nhưng trong hosting hay server thì mỗi file hay thư mục chúng ta có được đều phải cân nhắc cho mục đích sử dụng (lằng nhằng).

Điều quan trọng là xử lý nó ra sao đơn giản như :
   + path : đường dẫn tới file đó trong ubuntu hoặc windows còn về splash thì khói nói nha :) (suốt ngày nhìn nói làm gì) .
   + cách ghi, đọc, lấy tên file, tạo file, xóa file, tên đường dẫn, quyền truy cập...v..v và ...v..v

Mở php.ini xem những thằng sau:

allow_url_fopen "1" Allows fopen()-type functions to work with URLs (available since PHP 4.0.4) PHP_INI_SYSTEM
user_agent NULL Defines the user agent for PHP to send (available since PHP 4.3) PHP_INI_ALL
default_socket_timeout "60" Sets the default timeout, in seconds, for socket based streams (available since PHP 4.3) PHP_INI_ALL
from "" Defines the anonymous FTP password (your email address) PHP_INI_ALL
auto_detect_line_endings "0" When set to "1", PHP will examine the data read by fgets() and file() to see if it is using Unix, MS-Dos or Mac line-ending characters (available since PHP 4.3) PHP_INI

  Xem hoa mắt chưa, chẳng sao cứ cài php version mới nhất thì cũng khỏi lo vì những thằng này được config hết rồi để như trên để dễ thực hành trong localhost.
  Sau đây chỉ là mấy hàm hay dùng :

1. basename(): 
+ Cú pháp: basename(path,"extend");
+ví dụ:
<?php
$path = "/ww/index.php";
echo basename($path) ."<br/>";// la duong dan luu file index.php
echo basename($path,".php");// lay ra ten file index bỏ .php

?>
2.chmod():
+ Cú pháp: chmod(file,mode);
          - Mode: thiết lập tham số phân để phân quyền
                    Định dang: "0AAA"
                                    +) Số đầu tiên luôn là 0.
                                    +) Số A thứ 2 xác định "Owner" - chủ sở hữu của file/thư mục,.
                                    +) Số A thứ 3 xác định "Group" - Nhóm mà Owner là thành viên,
                                    +) Số A thứ 4 xác định "Public / Others/ Everybody": những người còn lại.
 Lưu ý: Khái niệm CHMOD không tồn tại trên hệ thống Windows, mà chỉ có trên các hệ thống Unix/Linux
        CHMOD 755 (rwx r-x r-x) 
        CHMOD 644 (rw- r-- r--)
  • "Read" (Đọc): viết tắt là "r", và được biểu diễn bằng số 4
  • "Write" (Ghi / Chỉnh sửa): viết tắt là "w", và được biểu diễn bằng số 2
  • "Execute" (Thực thi): viết tắt là "x", và được biểu diễn bằng số 1
   
+ ví dụ :
<?php
// Read and write for owner, nothing for everybody else
chmod("tailieu.doc",0600);
// Read and write for owner, read for everybody else
chmod("tailieu.doc",0644);
// Everything for owner, read and execute for everybody else
chmod("tailieu.doc",0755);
// Everything for owner, read for owner's group
chmod("tailieu.doc",0740);
?>

3. Xử lý file word ,exel, pdf trong php (cái này hiếm) chờ tớ chiến nó xong đã
...............................
Còn bảng này tham khảo thêm
basename() Hiển thị đường dẫn của file 3
chgrp() Xác định group cho file, thư mục 3
chmod() Xác định quyền cho file, thư mục 3
chown() Thay đổi quyền cho file, thư mục 3
copy() Copies a file 3
delete() See unlink() or unset() (mà thôi đang học tiếng anh, ko dịch nữa)  
dirname() Returns the directory name component of a path 3
fclose() Closes an open file 3
feof() Tests for end-of-file on an open file 3
fflush() Flushes buffered output to an open file 4
fgetc() Returns a character from an open file 3
fgetcsv() Parses a line from an open file, checking for CSV fields(ít dùng) 3
fgets() Returns a line from an open file 3
fgetss() Returns a line, with HTML and PHP tags removed, from an open file 3
file() Reads a file into an array 3
file_exists() Checks whether or not a file or directory exists 3
file_get_contents() Reads a file into a string 4
file_put_contents Writes a string to a file 5
filesize() Returns the file size 3
filetype() Returns the file type 3
fopen() Opens a file or URL 3
fputs() Alias of fwrite() 3
fread() Reads from an open file 3
fscanf() Parses input from an open file according to a specified format 4
fseek() Seeks in an open file 3
fstat() Returns information about an open file 4
ftell() Returns the current position in an open file 3


fwrite() Writes to an open file 3
glob() Returns an array of filenames / directories matching a specified pattern 4
is_dir() Checks whether a file is a directory 3
is_executable() Checks whether a file is executable 3
is_file() Checks whether a file is a regular file 3
is_link() Checks whether a file is a link 3
is_readable() Checks whether a file is readable 3
is_uploaded_file() Checks whether a file was uploaded via HTTP POST 3
is_writable() Checks whether a file is writeable 4
is_writeable() Alias of is_writable() 3
link() Creates a hard link 3
linkinfo() Returns information about a hard link 3
lstat() Returns information about a file or symbolic link 3
mkdir() Creates a directory 3
move_uploaded_file() Moves an uploaded file to a new location 4
parse_ini_file() Parses a configuration file 4
pathinfo() Returns information about a file path 4
pclose() Closes a pipe opened by popen() 3
popen() Opens a pipe 3
readfile() Reads a file and writes it to the output buffer 3
readlink() Returns the target of a symbolic link 3
realpath() Returns the absolute pathname 4
rename() Renames a file or directory 3
rewind() Rewinds a file pointer 3
rmdir() Removes an empty directory 3
set_file_buffer() Sets the buffer size of an open file 3
stat() Returns information about a file 3
symlink() Creates a symbolic link 3
tempnam() Creates a unique temporary file 3
tmpfile() Creates a unique temporary file 3
touch() Sets access and modification time of a file 3
umask() Changes file permissions for files 3
unlink() Deletes a file 3

No comments:

Post a Comment