Hướng dẫn dùng chmod man trong PHP

Hàm chmod() sẽ thay đổi quyền đối với các đối tượng người dùng của file được truyền vào.

Hướng dẫn dùng chmod man trong PHP

Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

Cú pháp

Cú phápchmod( $filename, $mode);

Trong đó:

  • $filename là đường dẫn đến file.
  • $mode là quyền mới đối với các đối tượng người dùng.

Kết quả trả về

Hàm sẽ trả về True nếu thành công và trả về False nếu thất bại.

Bài viết này được đăng tại [free tuts .net]

Ví dụ

Một số ví dụ về hàm chmod():

Code

// chủ file được quyền đọc và viết, mọi người khác không có quyền.
chmod("/somedir/somefile", 0600);

// chủ file được quyền đọc và viết, mọi người khác có quyền đọc.
chmod("/somedir/somefile", 0644);

// chủ file có mọi quyền, mọi người có quyền đọc và thực thi.
chmod("/somedir/somefile", 0755);

// chủ file có mọi quyền, mọi người cùng nhóm với chủ file có quyền đọc
và thực thi, người khác không có quyền
chmod("/somedir/somefile", 0750);

Tham khảo: php.net

  • Định Nghĩa.
  • Cú pháp.
    • Cú pháp:
    • Trong đó.
    • Giá trị trả về.
  • Chú ý.
  • Hàm liên quan
  • Thông tin thêm.

Định Nghĩa.

Hàm chmod() sẽ thay đổi quyền đối với các đối tượng người dùng của file được truyền vào.
Hàm tương thích trên PHP4, PHP5, PHP7.

Cú pháp.

Cú pháp:

chmod ( string $filename , int $mode ) : bool

Trong đó.

  • $filename là đường dẫn đến file.
  • $mode là quyền mới đối với các đối tượng người dùng.
    – Lưu ý rằng mode không tự động được coi là một octal value, vì vậy để đảm bảo hoạt động dự kiến, bạn cần phải có chế độ tiền tố với số không (0). Các chuỗi như “g + w” sẽ không hoạt động đúng.

    – Tham số chế độ bao gồm ba thành phần số octal chỉ định các hạn chế truy cập cho chủ sở hữu, nhóm người dùng mà chủ sở hữu đang ở và cho mọi người khác theo thứ tự này. Một thành phần có thể được tính bằng cách thêm các quyền cần thiết cho cơ sở người dùng file đó. Số 1 có nghĩa là bạn cấp quyền thực thi, số 2 có nghĩa là bạn tạo tệp có thể ghi, số 4 có nghĩa là bạn làm cho tệp có thể đọc được. Thêm các số này để xác định các quyền cần thiết. Bạn cũng có thể đọc thêm về các chế độ trên các hệ thống Unix với ‘man 1 chmod’ và ‘man 2 chmod’.

Giá trị trả về.

  • Trả về TRUE khi thành công hoặc FALSE khi thất bại.

Chú ý.

  • Người dùng hiện tại là người dùng mà PHP chạy. Nó có thể không giống với người dùng bạn sử dụng để truy cập shell hoặc FTP thông thường. Chế độ chỉ có thể được thay đổi bởi người dùng sở hữu tệp trên hầu hết các hệ thống.
  • Chức năng này sẽ không hoạt động trên các tệp từ xa vì tệp cần kiểm tra phải được truy cập thông qua hệ thống tệp của máy chủ.
  • Khi chế độ an toàn được bật, PHP sẽ kiểm tra xem các tệp hoặc thư mục bạn sắp vận hành có cùng UID (chủ sở hữu) như tập lệnh đang được thực thi hay không. Ngoài ra, bạn không thể đặt SUID, SGID và bit dính.

Hàm liên quan

  • chown() – Thay đổi chủ sở hữu tập tin
  • chgrp() – Thay đổi nhóm người dùng với tập tin
  • fileperms() – Nhận quyền truy cập của tệp.
  • stat() – Cung cấp thông tin về một tập tin

Thông tin thêm.

  • Khi sử dụng dấu ngoặc kép xung quanh tham số thứ hai vd chmod (tập tin, “0644”);
    PHP sẽ không quan tâm tới điều đó nhưng sẽ thực hiện chuyển đổi ngầm thành int trước khi chạy chmod. Thật không may, chuyển đổi ngầm định không tính đến chuỗi bát phân để bạn kết thúc với phiên bản số nguyên 644, là 1204 octal.
  • Một cách để thay đổi mode recursive  trong $ pathname thành $ filemode.

Các bạn có thể xem chi tiết hơn trên php.net.

Hi vọng với bài viết này, bạn đã hiểu rõ ứng dụng của hàm chmod() trong PHP. Nếu bạn thấy bài viết hay và có ý nghĩa hãy like và chia sẻ bài viết này để mọi người cùng nhau học tập nhé.
Cảm ơn các bạn đã ghé thăm codetutam.com