Bao gồm đường dẫn tuyệt đối PHP

Đường dẫn bao gồm PHP là một tập hợp các vị trí được sử dụng để tìm tài nguyên được tham chiếu bởi các câu lệnh bao gồm/yêu cầu

Các phần tử được thêm vào Đường dẫn bao gồm của dự án ảnh hưởng đến những điều sau

  • Đang chạy/Gỡ lỗi/Lập hồ sơ- Các tệp được gọi với 'đường dẫn tương đối' sẽ được tìm kiếm trong thời gian chạy theo các tài nguyên và thứ tự được chỉ định trong đường dẫn bao gồm

  • Chuyển đến hỗ trợ nguồn/nội dung để biết các câu lệnh bao gồm- Các tệp được gọi với đường dẫn tương đối'' sẽ được tìm kiếm theo các tài nguyên và thứ tự được chỉ định trong đường dẫn bao gồm của dự án

  • Tổ chức Bao gồm - Nếu lệnh gọi 'yêu cầu'/'bao gồm' gọi một tệp tồn tại bên ngoài dự án đang hoạt động và vị trí của nó được chỉ định theo cách 'Tương đối' (xem bên dưới), bạn phải thêm vị trí của nó vào Đường dẫn Bao gồm của dự án trong

  • Hỗ trợ nội dung - Việc thêm dự án/thư viện vào Đường dẫn bao gồm của dự án sẽ làm cho các yếu tố được xác định trong các dự án/thư viện được bao gồm có sẵn dưới dạng tùy chọn Hỗ trợ nội dung cho dự án

Trong lệnh gọi 'bao gồm'/'yêu cầu', vị trí tệp có thể được xác định theo ba cách

  1. Đường dẫn tuyệt đối- Vị trí tệp chính xác được chỉ định (e. g. C. \Documents and Settings\MyProject\myfolder\a. php). Trong khi Tập lệnh PHP từ xa (Máy chủ PHP) hoặc Chạy/Gỡ lỗi/Lập cấu hình trang web PHP khi tùy chọn 'Sao chép cục bộ' được chọn trong danh mục 'Vị trí nguồn' trong tab Nâng cao, cơ chế Ánh xạ đường dẫn sẽ được kích hoạt

  2. Liên quan đến Thư mục làm việc hiện tại - Tên tệp có dấu ". /" hoặc một ". /" Chúng sẽ chỉ được tìm kiếm liên quan đến 'Thư mục làm việc hiện tại' của PHP. Bạn có thể tìm ra vị trí của Thư mục làm việc hiện tại của mình bằng cách chạy lệnh "echo getcwd()"

  3. Đường dẫn tương đối - Chỉ tên tệp hoặc đường dẫn một phần được chỉ định (e. g. /myfolder/a. php). Trong trường hợp này, Zend Studio sẽ tìm kiếm đường dẫn của tệp theo tài nguyên và thứ tự được định cấu hình trong Đường dẫn bao gồm của dự án.
    Nếu đường dẫn của tệp đang được tìm kiếm tồn tại ở nhiều vị trí, thì tệp được gọi sẽ là tệp đầu tiên mà Zend Studio gặp phải trong quá trình tìm kiếm.
    Theo mặc định, thứ tự mà Zend Studio tìm kiếm đường dẫn của tệp như sau.

    1. Các dự án trong Đường dẫn bao gồm của dự án "mục tiêu gỡ lỗi" (tệp đầu tiên được gỡ lỗi), theo thứ tự chúng được liệt kê. Nếu một dự án được chỉ định trong Đường dẫn bao gồm đề cập đến các dự án/thư viện khác trong Đường dẫn bao gồm của riêng nó, thì đường dẫn tệp sẽ được tìm kiếm ở đó trước khi quá trình tìm kiếm tiếp tục

      Chào mừng bạn đến với hướng dẫn nhanh về đường dẫn tuyệt đối và tương đối trong PHP. Vì vậy, bạn đã thiết lập đường dẫn tệp được xác minh, nhưng PHP vẫn phàn nàn về việc "thiếu" tệp và thư mục?

      • Đường dẫn tuyệt đối đề cập đến việc xác định đường dẫn tệp chính xác đầy đủ, ví dụ:
        1
      • Mặc dù đường dẫn tương đối dựa trên thư mục làm việc hiện tại, nơi đặt tập lệnh. Ví dụ: khi chúng tôi
        2 trong
        0, nó sẽ phân giải thành
        1

      Phần này trình bày những điều cơ bản, nhưng chúng ta hãy tìm hiểu thêm về cách đường dẫn tệp hoạt động trong PHP – Đọc tiếp

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

       

       

      TLDR – TRANG TRÌNH BÀY NHANH

      Bao gồm đường dẫn tuyệt đối PHP
      Tải xuống & Ghi chú

      Bao gồm đường dẫn tuyệt đối PHP
      Đường dẫn tệp PHP

      Bao gồm đường dẫn tuyệt đối PHP
      Bit bổ sung & liên kết

      Bao gồm đường dẫn tuyệt đối PHP
      Kết thúc

       

      TẢI XUỐNG & LƯU Ý

      Đầu tiên, đây là liên kết tải xuống mã 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 cả thế giới… Nếu bạn cần câu trả lời gấp, vui lòng xem danh sách các trang web của tôi để được trợ giúp về lập trình

       

      MÃ VÍ DỤ TẢI XUỐNG

      Nhấp vào đây để tải xuống tất cả mã nguồn ví dụ, 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 mã nguồn đó hoặc sử dụng nó trong dự án của riêng bạn

       

       

      ĐƯỜNG DẪN TỆP PHP

      Bao gồm đường dẫn tuyệt đối PHP

      Được rồi, bây giờ chúng ta hãy đi vào các ví dụ về cách hoạt động của đường dẫn tệp trong PHP

       

      1) ĐƯỜNG TUYỆT ĐỐI & TƯƠNG ĐỐI

      D. \http\1a-dummy. php

      ";

      D. \http\1b-abs-rel. php

      Như phần giới thiệu ở trên

      • Đường dẫn tệp tuyệt đối chỉ đơn giản là "đường dẫn tệp đầy đủ". Mặc dù hơi dài dòng, nhưng thật khó để làm hỏng cái này
      • Mặt khác, đường dẫn tệp tương đối dựa trên thư mục làm việc hiện tại

      Nhưng “thư mục làm việc hiện tại” là cái quái gì vậy?

       

      2) DANH MỤC CÔNG VIỆC HIỆN TẠI (CWD)

      D. \http\2-cwd. php

      ";

      Nói một cách đơn giản, thư mục làm việc hiện tại là thư mục chứa tập lệnh. Chúng ta có thể dễ dàng lấy thư mục làm việc hiện tại bằng hàm

      2

       

       

      3) BỐI CẢNH VỚI HƯỚNG LÀM VIỆC HIỆN TẠI

      D. \http\inside\3-script. php

      // (A) CWD IS BASED ON THE FIRST SCRIPT!
      // if this script is placed at "D:\http\inside\3-cwd.php"
      // cwd is "D:\http\inside"
      require "D:\\http\\2-cwd.php";

      Cho đến nay vẫn tốt với các đường dẫn tương đối? . Đoán xem

      2 hiển thị gì khi chúng ta chạy ví dụ này? . Hãy ghi nhớ, thư mục làm việc hiện tại được cố định với tập lệnh đầu tiên chạy .

       

      4) THAY ĐỔI THƯ MỤC LÀM VIỆC

      D. \http\inside\4-change-cwd. php

      0

      Thư mục làm việc hiện tại chắc chắn sẽ làm rối tung rất nhiều đường dẫn tương đối. Vì vậy, làm thế nào để chúng tôi khắc phục vấn đề này?

       

       

      5) HẰNG SỐ KỲ DIỆU

      D. \http\5-ma thuật. php

      2

      Ngay cả khi chúng ta có thể thay đổi thư mục làm việc, các đường dẫn tương đối vẫn lộn xộn trong các dự án lớn. Tôi sẽ khuyên bạn nên sử dụng hằng số ma thuật để thay thế

      • 7 là đường dẫn đầy đủ và tên tệp chứa tập lệnh hiện tại
      • 8 là thư mục chứa tập lệnh hiện tại

       

      6) HẰNG SỐ MA THUẬT VS THƯ MỤC LÀM VIỆC

      D. \http\bên trong\6-ma thuật. php

      5

      Để giảm bớt sự nhầm lẫn, hãy lưu ý rằng các hằng số ma thuật khác với thư mục làm việc hiện tại

      • Thư mục làm việc hiện tại dựa trên tập lệnh đầu tiên mà chúng tôi chạy.
      • Hằng số ma thuật dựa trên nơi tập lệnh được đặt .

      Có, các hằng số ma thuật là cách tốt hơn để thực hiện "tìm đường" và xây dựng các đường dẫn tuyệt đối

       

       

      7) THÊM CON ĐƯỜNG YOGA

      D. \http\7-thêm. php

      6

      Cuối cùng, đây là một khóa học cấp tốc về các biến và hàm khác nhau có thể giúp bạn tìm đường dẫn tệp

       

      MÁY CHỦ SIÊU TOÀN CẦU

      • 9 – Chứa thư mục HTTP gốc
      • ";
        0 – Đường dẫn tương đối đến tập lệnh
      • ";
        1 – Đường dẫn đầy đủ đến kịch bản

       

      THÔNG TIN ĐƯỜNG DẪN

      Hàm PHP

      ";
      2 sẽ cung cấp cho bạn phương hướng trên một đường dẫn nhất định

      • ";
        3 – Thư mục của đường dẫn đã cho
      • ";
        4  – Tên tệp có phần mở rộng
      • ";
        5 – Tên tệp, không có phần mở rộng
      • ";
        6 – Phần mở rộng tệp

       

      BASENAME

      Hàm

      ";
      7 sẽ cung cấp cho bạn thư mục hoặc tệp theo sau của một đường dẫn nhất định

       

      DIRNAME

      Hàm

      ";
      8 sẽ cung cấp cho bạn thư mục mẹ của một đường dẫn đã cho

       

      THỰC TẾ

      Hàm

      ";
      9 cung cấp cho bạn một đường dẫn tuyệt đối được chuẩn hóa… Khá hữu ích, nhưng vẫn dựa trên thư mục làm việc hiện tại

       

       

      BIT BỔ SUNG & LIÊN KẾT

      Đó là tất cả những gì dành cho hướng dẫn và đây là một phần nhỏ về một số tính năng bổ sung và liên kết có thể hữu ích cho bạn

       

      EXTRA) CHÉM LẠI HOẶC LẠI?

      Trong trường hợp bạn chưa nhận ra

      • Windows sử dụng
        // (A) CWD IS BASED ON THE FIRST SCRIPT!
        // if this script is placed at "D:\http\inside\3-cwd.php"
        // cwd is "D:\http\inside"
        require "D:\\http\\2-cwd.php";
        0
      • Linux và Mac sử dụng
        // (A) CWD IS BASED ON THE FIRST SCRIPT!
        // if this script is placed at "D:\http\inside\3-cwd.php"
        // cwd is "D:\http\inside"
        require "D:\\http\\2-cwd.php";
        1

      Tuy nhiên, đó không thực sự là một vấn đề lớn, chỉ cần sử dụng

      // (A) CWD IS BASED ON THE FIRST SCRIPT!
      // if this script is placed at "D:\http\inside\3-cwd.php"
      // cwd is "D:\http\inside"
      require "D:\\http\\2-cwd.php";
      2 trong PHP và nó sẽ tự động giải quyết thành “dấu gạch chéo chính xác”

      Làm cách nào để có được đường dẫn tuyệt đối của tệp trong PHP?

      Hàm realpath() trả về tên đường dẫn tuyệt đối. Hàm này loại bỏ tất cả các liên kết tượng trưng (như '/. /', '/. /' và thêm '/') và trả về tên đường dẫn tuyệt đối.

      Làm cách nào để bao gồm đường dẫn tệp trong PHP?

      Đặt đường dẫn bao gồm PHP .
      Phương pháp số 1. Sử dụng Bộ chọn PHP trong cPanel
      Phương pháp #2. Sử dụng một php tùy chỉnh. tập tin ini
      Phương pháp #3. Sử dụng hàm set_include_path()
      Phương pháp #4. Sử dụng. tập tin htaccess
      Thêm thông tin

      Làm cách nào để sử dụng __ TRỰC TIẾP __ trong PHP?

      Có thể sử dụng __DIR__ để lấy thư mục làm việc của 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.

      include_once nghĩa là gì trong PHP?

      Định nghĩa và cách sử dụng . Nếu không tìm thấy tệp, một cảnh báo sẽ được hiển thị và chương trình tiếp tục chạy. Nếu tệp đã được bao gồm trước đó, câu lệnh này sẽ không bao gồm nó nữa. used to embed PHP code from another file. If the file is not found, a warning is shown and the program continues to run. If the file was already included previously, this statement will not include it again.