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ướng dẫn php __dir__ up one level - php __dir__ tăng một cấp

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 <5.3:

$upOne = realpath(dirname(__FILE__) . '/..');

Trong Php 5.3 đến 5.6 Sử dụng:

$upOne = realpath(__DIR__ . '/..');

Trong 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.

http://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

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

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

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

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 <5.3:

str_replace(basename(dirname(__FILE__)) . '/' . basename(__FILE__), '', realpath(__FILE__)) . '/required.php';

Đã trả lời ngày 3 tháng 3 năm 2015 lúc 20:37Mar 3, 2015 at 20:37

Calin Rusucalin RusuCalin Rusu

1771 Huy hiệu bạc5 Huy hiệu đồng1 silver badge5 bronze badges

Đối với ai, làm quen với môi trường lưu trữ chia sẻ và vẫn có cơ hội có PHP hiện tại dưới 7.0, người không có

$upOne = realpath(dirname(__FILE__) . '/..');
7 có thể sử dụng sau đây.

$path=dirname(__FILE__).'/'.'../Folder-B/image1.jpg';
0

Đã trả lời ngày 29 tháng 10 năm 2018 lúc 7:21Oct 29, 2018 at 7:21

Deniz Porsukdeniz PorsukDeniz Porsuk

5441 Huy hiệu vàng6 Huy hiệu bạc20 Huy hiệu đồng1 gold badge6 silver badges20 bronze badges

Tôi sử dụng điều này, nếu có một đường dẫn tuyệt đối (đây là một ví dụ):

$path=dirname(__FILE__).'/'.'../Folder-B/image1.jpg';
1

Nếu có một hình ảnh để hiển thị, điều này là đủ:

$path=dirname(__FILE__).'/'.'../Folder-B/image1.jpg';
2

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

Làm cách nào để chuyển lên một thư mục trong PHP?

Để sử dụng điều này, trước tiên, chúng tôi chuyển tệp hoặc đường dẫn thư mục dưới dạng chuỗi, sau đó chỉ định số cấp chúng tôi muốn chuyển lên từ thư mục đó. Bằng cách sử dụng 'Hằng số ma thuật' '__dir__' và chỉ định mức 2, chúng tôi đang yêu cầu dirname () trả lại 2 cấp độ từ cha mẹ của '__dir__'.pass the file or directory path as a string, and then specify how many levels we would like to move up from that directory. By using the 'Magic Constant' '__DIR__' and specifying a level of 2, we are asking dirname() to return 2 levels up from the parent of '__DIR__'.

__ 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.

Dirname là gì (__ dir __?

__Dir__: Thư mục của tệp.Nếu được sử dụng bên trong một bao gồm, thư mục của tệp đi kèm được trả về.Điều này tương đương với dirname (__ File__).Tên thư mục này không có dấu gạch chéo trừ khi đó là thư mục gốc.The directory of the file. If used inside an include, the directory of the included file is returned. This is equivalent to dirname(__FILE__) . This directory name does not have a trailing slash unless it is the root directory.

Làm cách nào để quay lại thư mục trước trong PHP?

Tất nhiên, điều này có thể bị xích: ../../index.php // Đây sẽ là hai thư mục lên ...
// .. Chọn thư mục cha từ hiện tại.Tất nhiên, điều này có thể được xích:.
// Đây sẽ là hai thư mục ..