问题描述
路径:
Home/gallery/Images/Mountains
此路径中的最后一个文件夹名称为 Mountains (山),倒数第二个文件夹名称为图片。
Last folder: Mountains
Second last folder: Images
是否可以使用 substr 或其他任何方式。有人可以给我答案吗?谢谢
解决方法
只需2个小步骤:
- 由“ /”分隔
- 获取数组的最后2个项目
$path = "Home/Gallery/Images/Mountains";
$parts = explode("/",$path);
$folders = array_slice($parts,-2);
然后,您将在$folders
数组中拥有两个文件夹
我强烈建议您在此处阅读有关array_slice的更多信息:https://www.php.net/manual/en/function.array-slice.php
,您可以在'/'上拆分字符串,然后使用array_pop将每个项目弹出到结果数组之外:
$str = "Home/Gallery/Images/Mountains";
$bits = explode("/",$str);
// Gives:
Array
(
[0] => Home
[1] => Gallery
[2] => Images
[3] => Mountains
)
$last = array_pop($bits);
echo 'last: ' .$last; // Mountains
$next = array_pop($bits);
echo 'next: ' .$next; // Images
,
$path = 'Home/Gallery/Images/Mountains';
$lastFolder = basename($path);
$secondToLastFolder = basename(dirname($path));