Php 删除字符串的前3个字符
我有这段代码,它显示了上一页中的所有目录Php 删除字符串的前3个字符,php,split,Php,Split,我有这段代码,它显示了上一页中的所有目录 $dirs = array_filter(glob('../*'), 'is_dir'); foreach ($dirs as $nav) { echo "<li><a href='$nav'>".$nav."</a></li>"; } $dirs=array_filter(glob(“../*”),“is_dir”); 外汇($dirs作为$nav){ 回声“”; } 输出如下: echo
$dirs = array_filter(glob('../*'), 'is_dir');
foreach ($dirs as $nav) {
echo "<li><a href='$nav'>".$nav."</a></li>";
}
$dirs=array_filter(glob(“../*”),“is_dir”);
外汇($dirs作为$nav){
回声“”;
}
输出如下:
echo substr($string, 3);
- ../Gėlės
- ../dddd
- ../图像
。/
谢谢。当然,你可以用,但我会选择答案
$dirs = array_filter(glob('../*'), 'is_dir');
foreach ($dirs as $nav) {
$nav = str_replace("../", "", $nav);
echo "<li><a href='$nav'>$nav</a></li>";
}
$dirs=array_filter(glob(“../*”),“is_dir”);
外汇($dirs作为$nav){
$nav=str_替换(“../”、“,$nav”);
回声“”;
}
您可能会得到各种古怪的字符串操作答案,因此下面是合适的工具:
basename-返回路径的尾部名称组件
这正是你正在做的:
basename($nav)
另外,如果您只需要目录,请在
GLOB()
调用中使用GLOB\u ONLYDIR
标志作为第二个参数。您可以从如下开头减去3个字符:
echo substr($string, 3);
我就知道!哈哈!他们来了!AbraCadavere被投票通过了,我还有5分钟的时间等着我接受它。谢谢大家的帮助:)我可以问一下为什么basename是正确的答案,而不是substr吗。basename—返回路径的尾随名称组件,该组件正是您正在执行的操作。2.如果下次您需要删除
路径/tmp/
,而不是。/
,或者您不知道该路径将是什么basename()
仍然没有修改。谢谢,非常好的帮助:)根据php手册应该是basename($nav)。php\u EOL
,尽管回答不错@PedroLobito:不,只有当你想要一个行尾,它不会显示在呈现的HTML中,但是会使HTML源代码读起来很奇怪。