Hướng dẫn php __dir__ up one level - php __dir__ tăng một cấp

94

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.

Tôi có cấu trúc thư mục như sau:

mydomain.example
  ->Folder-A
  ->Folder-B

Tôi có một chuỗi từ cơ sở dữ liệu là

$path=dirname[__FILE__].'/'.'../Folder-B/image1.jpg';
3, chỉ vào một hình ảnh trong
$path=dirname[__FILE__].'/'.'../Folder-B/image1.jpg';
4.

Bên trong một tập lệnh trong

$path=dirname[__FILE__].'/'.'../Folder-B/image1.jpg';
5, tôi đang sử dụng
$path=dirname[__FILE__].'/'.'../Folder-B/image1.jpg';
6 để tìm nạp tên tệp và tôi nhận được
$path=dirname[__FILE__].'/'.'../Folder-B/image1.jpg';
7. Bên trong tập lệnh này, tôi cần có một chuỗi có nội dung
$path=dirname[__FILE__].'/'.'../Folder-B/image1.jpg';
8. Tôi đã thử

$path=dirname[__FILE__].'/'.'../Folder-B/image1.jpg';

Điều này hiển thị là

$path=dirname[__FILE__].'/'.'../Folder-B/image1.jpg';
9

Đây là cho nút chia sẻ Facebook và điều này không lấy đúng hình ảnh. Có ai biết làm thế nào để có được đường dẫn chính xác không?

Tôi hy vọng sẽ nhận được một url:

$upOne = realpath[dirname[__FILE__] . '/..'];
0

hỏi ngày 19 tháng 6 năm 2012 lúc 5:18Jun 19, 2012 at 5:18

1

Đối với sử dụng PHP = 7.0 Sử dụng:

$upOne = dirname[__DIR__, 1];

Đã trả lời ngày 19 tháng 6 năm 2012 lúc 5:22Jun 19, 2012 at 5:22

PetahpetahPetah

44.7K27 Huy hiệu vàng155 Huy hiệu bạc211 Huy hiệu đồng27 gold badges155 silver badges211 bronze badges

6

Nếu bạn tình cờ có Php 7.0+, bạn có thể sử dụng các cấp độ.

$upOne = realpath[dirname[__FILE__] . '/..'];
1 với tham số thứ hai, bạn có thể xác định lượng cấp độ bạn muốn quay lại.

//php.net/manual/en/function.dirname.php

Đã trả lời ngày 22 tháng 12 năm 2016 lúc 9:52Dec 22, 2016 at 9:52

Thử cái này

dirname[dirname[ __ FILE__]]

Chỉnh sửa: Đã xóa "./" Vì nó không đúng cú pháp. Không có nó, nó hoạt động hoàn hảo.

Đã trả lời ngày 19 tháng 6 năm 2012 lúc 5:27Jun 19, 2012 at 5:27

AbhishekabhishekAbhishek

6893 Huy hiệu bạc14 Huy hiệu Đồng3 silver badges14 bronze badges

Bạn có thể sử dụng chức năng dirname của PHP.

$upOne = realpath[dirname[__FILE__] . '/..'];
2. Điều đó sẽ cung cấp cho bạn tên của thư mục mẹ của
$upOne = realpath[dirname[__FILE__] . '/..'];
3, lưu trữ thư mục hiện tại.

Đã trả lời ngày 19 tháng 6 năm 2012 lúc 5:23Jun 19, 2012 at 5:23

ShaneshaneShane

1.96616 huy hiệu bạc32 huy hiệu đồng16 silver badges32 bronze badges

5

dirname[__DIR__,level];
dirname[__DIR__,1];

Cấp độ là bạn sẽ quay lại thư mục bao nhiêu lần

Đã trả lời ngày 17 tháng 1 năm 2019 lúc 11:01Jan 17, 2019 at 11:01

Dılo Sürücüdılo Sürücüdılo sürücü

3.2081 Huy hiệu vàng18 Huy hiệu bạc26 Huy hiệu đồng1 gold badge18 silver badges26 bronze badges

Bạn có thể sử dụng

$upOne = realpath[dirname[__FILE__] . '/..'];
4 để loại bỏ phần unnessesary:

// One level up
echo str_replace[realpath[dirname[__FILE__] . '/..'], '', realpath[dirname[__FILE__]]];

// Two levels etc.
echo str_replace[realpath[dirname[__FILE__] . '/../..'], '', realpath[dirname[__FILE__]]];

Trên Windows cũng thay thế

$upOne = realpath[dirname[__FILE__] . '/..'];
5 bằng
$upOne = realpath[dirname[__FILE__] . '/..'];
6 nếu cần điều đó trong URL.

Đã trả lời ngày 1 tháng 7 năm 2013 lúc 10:19Jul 1, 2013 at 10:19

Một cấp độ lên, tôi đã sử dụng:

str_replace[basename[__DIR__] . '/' . basename[__FILE__], '', realpath[__FILE__]] . '/required.php';

hoặc cho PHP

Bài Viết Liên Quan

Chủ Đề