2013-03-06 111 views
35

Tôi đang cố gắng để có một thư mục bộ nhớ cache tạm thời của các loại ngay bên ngoài và ở cùng cấp với thư mục ứng dụng. Điều này là để lưu trữ hình ảnh trong một vài giây trước khi di chuyển chúng ra khỏi trang web.Codeigniter - tự động nhận đường dẫn tương đối/tuyệt đối bên ngoài thư mục ứng dụng

Tôi đang cố gắng tải hình ảnh hồ sơ Facebook của người dùng và lưu nó vào máy chủ của tôi. Tôi có một giải pháp lưu trữ hình ảnh yêu cầu tôi chụp ảnh và đổi tên nó rồi chuyển nó đến vị trí tương ứng để lưu trữ. Suy nghĩ của tôi đã sử dụng file_get_contents()file_put_contents() Tôi có thể lưu trữ tệp này một lúc trong khi xử lý tệp sao cho phù hợp và sau đó sao chép/di chuyển nó sang phương thức lưu trữ của tôi. Tuy nhiên tôi không muốn có thư mục tạm thời bên trong thư mục ứng dụng - tôi muốn có nó ở cùng mức với thư mục ứng dụng và hệ thống. Vấn đề của tôi là truy cập một đường dẫn tương đối hoặc đường dẫn tuyệt đối (ở cùng cấp độ của thư mục ứng dụng) mà không cần mã hóa nó.

Sử dụng (__dir__), (__file__) và một số thứ như realpath(APPPATH) chỉ cho tôi kết quả trong thư mục ứng dụng. Vì vậy, tôi hy vọng người khác biết cách để đạt được điều này

Trả lời

104

Trong tệp index.php trong thư mục gốc, các đường dẫn hữu ích nhất được xác định để bạn có thể sử dụng chúng trong phần còn lại của mã. Bạn đã thử FCPATH trong trường hợp này chưa?

FCPATH -> '/' 
BASEPATH -> '/system/' 
APPPATH -> '/application/' 

UPDATE: Như đã đề cập trong các ý kiến, các ví dụ đường dẫn ở trên là chỉ để đưa ra một cái nhìn tổng quan. Để tăng tính bảo mật cho dự án của bạn, BASEPATHAPPPATH sẽ không nằm trong số FCPATH và thay vào đó nằm ngoài thư mục công khai www/root.

+0

thậm chí không nghĩ đến việc xem lại index.php, trong khi đó tôi đã học về 'APPPATH' và hiếm khi có nhu cầu về bất cứ thứ gì khác. Nhưng điều này chỉ làm chính xác những gì tôi đang tìm kiếm. Cảm ơn bạn – chris

+0

Bạn được chào đón. Tôi tìm thấy nó một chút lạ mà bạn biết làm thế nào để sử dụng 'APPPATH', nhưng không' FCPATH' :) –

+1

Tôi tìm thấy nó một chút lạ bản thân mình haha, concidering có một thời gian tôi thu thập lên và xuống CI để tìm những thứ tương tự. Nhưng nó luôn luôn là những điều đơn giản mà né tránh tôi, nhiều hơn như vậy khi Im sâu trong các chiến hào cố gắng tìm một cái gì đó khác từ một khía cạnh này hay cách khác, sau đó quay lại và làm cho nó khó khăn hơn nó cần. Trớ trêu thay trước khi bạn trả lời, tôi thậm chí còn nghĩ đến việc đi vào index.php và định nghĩa bản thân mình như một nỗ lực cuối cùng, sau đó bạn trả lời và nhắc tôi rằng :-) – chris

Các vấn đề liên quan