我有一个可以用多种不同方式编写的字符串,它总是遵循相同的模式,但它的长度可以不同。
this/is/the/path/to/my/fileA.php
this/could/also/be/the/path/to/my/fileB.php
another/example/of/a/long/address/which/is/a/path/to/my/fileC.php
我想做的是剪断绳子,这样我就剩下
path/to/my/file.php
我有一些从该页面获得的代码并将其修改为以下
$max = strlen($full_path);
$n = 0;
for($j=0;$j<$max;$j++){
if($full_path[$j]=='/'){
$n++;
if($n>=3){
break 1;
}
}
}
$path = substr($full_path,$j+1,$max);
这基本上在“/”字符的第三个实例处剪切它,并给了我剩下的东西。当我在一个环境中工作时这很好,但是当我将它迁移到不同的服务器时,路径会更长,因此切割会给我一个太长的地址。我认为与其更改每个实例的硬编码整数值,不如将它从最后一个实例中的第 4 个剪切字符串会更好,因为我总是想保留最后 4 个“斜杠”信息
非常感谢
编辑 - 最终代码解决方案
$exploded_name = explode('/', $full_path);
$exploded_trimmed = array_slice($exploded_name, -4);
$imploded_name = implode('/', $exploded_trimmed);