Hướng dẫn how can access file from another folder in php? - Làm thế nào có thể truy cập tệp từ một thư mục khác trong php?

Chào mừng bạn đến với một hướng dẫn ngắn về cách bao gồm các tệp từ các thư mục khác trong PHP. Cần tải một tệp khác trong PHP, nhưng nó nằm trong một thư mục khác? Không có vấn đề, nó là một sửa chữa rất đơn giản.

Cách dễ nhất để bao gồm một tệp từ một thư mục khác là sử dụng đường dẫn tuyệt đối (chỉ định đường dẫn đầy đủ đến tệp). Ví dụ:

0

Điều đó bao gồm những điều cơ bản nhanh chóng, nhưng chúng ta hãy đi qua nhiều chi tiết hơn trong hướng dẫn này - đọc tiếp!

Tôi đã bao gồm một tệp zip với tất cả các mã nguồn ví dụ khi bắt đầu hướng dẫn này, vì vậy bạn không phải sao chép mọi thứ, hoặc nếu bạn chỉ muốn đi thẳng vào.

Slide nhanh

Hướng dẫn how can access file from another folder in php? - Làm thế nào có thể truy cập tệp từ một thư mục khác trong php?

MỤC LỤC

Tải xuống & ghi chú

Đầu tiên, đây là liên kết tải xuống đến mã nguồn ví dụ như đã hứa.

Ghi chú nhanh

Nếu bạn phát hiện ra một lỗi, hãy bình luận bên dưới. Tôi cũng cố gắng trả lời các câu hỏi ngắn, nhưng đó là một người so với toàn bộ thế giới, nếu bạn cần câu trả lời khẩn cấp, vui lòng kiểm tra danh sách các trang web của tôi để nhận trợ giúp lập trình.

Mã hóa ví dụ Tải xuống

Nhấn vào đây để tải xuống mã nguồn, tôi đã phát hành nó theo giấy phép MIT, vì vậy hãy thoải mái xây dựng trên đó hoặc sử dụng nó trong dự án của riêng bạn.

Được rồi, bây giờ chúng ta hãy tìm hiểu thêm về cách PHP hoạt động với các đường dẫn tệp.

1) Đường dẫn tệp tương đối vs tuyệt đối

D: \ http \ 1a-demo.php

D: \ http \ 1b-demo.php

Đầu tiên, giới thiệu nhanh về 2 Điều khoản:

  • Đường dẫn tương đối-Một đường dẫn tay ngắn của người Viking dựa trên thư mục làm việc hiện tại. A “short-hand” path that is based on the current working directory.
  • Đường dẫn tuyệt đối - đường dẫn đầy đủ đến tệp. The full path to the file.

Đúng, con đường tuyệt đối nên tự giải thích. Nhưng con đường tương đối là con đường gây nhầm lẫn cho hầu hết người mới bắt đầu.

2) Thư mục làm việc hiện tại là gì?

D: \ http \ 2-demo.php

Thư mục làm việc hiện tại của người Viking là gì? Chúng tôi có thể kiểm tra nhanh với

1 và nó chỉ đơn giản là thư mục có tập lệnh được đặt. Đối với ví dụ này:

  • 2 được đặt bên trong
    3.
  • Truy cập
    2 sẽ đặt thư mục làm việc hiện tại thành
    3.
  • Đường dẫn tương đối phụ thuộc vào thư mục làm việc hiện tại.
    • 6 sẽ quyết tâm đến
      7.
    • 8 sẽ quyết tâm đến
      9.

3) Thư mục làm việc hiện tại - Sự nhầm lẫn

D: \ http \ 3a-outside.php

D: \ http \ lib \ 3b-inside.php

Sẵn sàng cho phần khó hiểu về thư mục làm việc hiện tại?

  • Hãy lưu ý nơi các tập lệnh được đặt vào trong ____________ 20 và
    1.
  • Nếu chúng ta truy cập trực tiếp
    2, thư mục làm việc hiện tại sẽ được đặt thành
    3.
  • Nhưng khi chúng tôi truy cập trực tiếp ____24, thư mục làm việc hiện tại được đặt thành
    5 thay thế.

Có, thư mục làm việc hiện tại được cố định vào thư mục của tập lệnh đầu tiên đang được gọi. Đây là một cạm bẫy phổ biến giữa những người mới bắt đầu, không biết thư mục làm việc hiện tại hoạt động như thế nào.current working directory is fixed to the folder of the first script that is being called. This is a common pitfall among beginners, not knowing how the current working directory works.

4) Thư mục của tập lệnh hiện tại

D: \ http \ 4a-outside.php

D: \ http \ lib \ 4b-inside.php

Nếu bạn muốn lấy thư mục của tập lệnh hiện tại, hãy sử dụng hằng số ma thuật

6 thay thế.folder of the current script itself, use the
6 magic constant instead.

5) Con đường tuyệt đối bán tự động

5a-path.php

lib/5b-config.php

Cách đáng tin cậy nhất để đối phó với các đường dẫn tệp sau đó là gì? Những gì tôi thường làm:

  • Cấu trúc dự án đúng cách, giữ các tệp cấu hình và thư viện trong thư mục
    7 được bảo vệ.
  • Tạo
    8 để chứa cài đặt cơ sở dữ liệu, khóa bí mật và đường dẫn tệp.
  • Trong
    8,
    0 sẽ luôn giải quyết cho thư mục
    7 mà nó đang ngồi.
  • Sau đó,
    2 sẽ giải quyết cho cha mẹ của thư mục
    7, thư mục cơ sở của dự án.

Đó là tất cả,

4 và
5 hiện là một đường dẫn tệp tuyệt đối và không bao giờ có thể sai.

Bổ sung) bao gồm và yêu cầu là trường hợp nhạy cảm

Cuối cùng, một từ nhỏ của lời nhắc - Windows không nhạy cảm với trường hợp, nhưng Mac và Linux là. Hãy cẩn thận với tên tệp và thư mục.

Tài liệu tham khảo & liên kết

  • Hướng dẫn sử dụng PHP chính thức - Yêu cầu
  • Hướng dẫn sử dụng PHP chính thức - bao gồm
  • require_once
  • include_once
  • Đường dẫn tuyệt đối & tương đối trong PHP - mã Boxx

Bảng gian lận infographic

Hướng dẫn how can access file from another folder in php? - Làm thế nào có thể truy cập tệp từ một thư mục khác trong php?
Bao gồm đường dẫn tệp trong PHP (bấm để phóng to)

KẾT THÚC

Cảm ơn bạn đã đọc, và chúng tôi đã đi đến cuối hướng dẫn này. Tôi hy vọng rằng nó đã giúp bạn hiểu rõ hơn và nếu bạn muốn chia sẻ bất cứ điều gì với hướng dẫn này, xin vui lòng bình luận bên dưới. Chúc may mắn và mã hóa hạnh phúc!

__ dir __ trong PHP là gì?

__Dir__ có thể được sử dụng để có được thư mục làm việc mã hiện tại. Nó đã được giới thiệu trong PHP bắt đầu từ phiên bản 5.3. Nó tương tự như sử dụng dirname (__ file__). Thông thường, nó được sử dụng để bao gồm các tệp khác có trong một tệp được bao gồm.used to obtain the current code working directory. It has been introduced in PHP beginning from version 5.3. It is similar to using dirname(__FILE__). Usually, it is used to include other files that is present in an included file.

Làm thế nào chúng ta có thể kết nối hai tệp trong PHP?

Có thể chèn nội dung của một tệp PHP vào tệp PHP khác (trước khi máy chủ thực thi nó), với câu lệnh bao gồm hoặc yêu cầu.Các câu lệnh bao gồm và yêu cầu là giống hệt nhau, ngoại trừ khi thất bại: yêu cầu sẽ tạo ra một lỗi nghiêm trọng (e_compile_error) và dừng tập lệnh.with the include or require statement. The include and require statements are identical, except upon failure: require will produce a fatal error (E_COMPILE_ERROR) and stop the script.

Làm cách nào để lấy tệp thư mục trong PHP?

Hàm scandir () trả về một mảng các tệp và thư mục của thư mục được chỉ định.scandir() function returns an array of files and directories of the specified directory.

Làm cách nào để đưa một tệp trong thư mục cha trong PHP?

PHP bao gồm tập tin trong thư mục cha..
// Nếu máy chủ của bạn không giải quyết được tệp từ thư mục cha mẹ bằng cách sử dụng ..
Bao gồm '../somefilein_parent.php'.
// Hãy thử điều này (sử dụng thư mục mẹ liên quan đến tập lệnh):.
Bao gồm __dir__."/..