使用php剥离目录路径的部分

时间:2013-08-25 04:28:02

标签: php regex path

我希望删除以下网址的一部分,但没有正则表达式的经验,或者甚至是我会使用的。

我有这个网址:

/var/www/wordpress/wp-content/themes/Aisis-Framework/CoreTheme/AdminPanel/Template/Form/Update.php

我想剥离一切形式:

CoreTheme/AdminPanel/Template/Form/Update.php

是否有一种简单的方法可以做到这一点,并且这样做是为了使“CoreTheme”之前的内容量可以是x个字符长,其中x是任意数字。

它也应该与CoreTheme这个词不匹配,因为它可能是任何名称,它也应该在Aisis-Framework上不匹配,因为它也可以是任何名称......

如何安全地假设CoreTheme之后的任何东西都是静态的。使用字符串替换:

将上面的字符串转换为
CoreTheme_AdminPanel_Template_Form_Update.php

正如我在这段代码中所做的那样:

$class_name = str_replace('/', '_', $path . $name);

在我的解决方案中,路径是CoreTheme/AdminPanel/Template/Form/Update.php,$ name是Update

1 个答案:

答案 0 :(得分:0)

如果“/ var / www / wordpress / wp-content / themes / Aisis-Framework /”是常数我会这样做:

str_replace("/var/www/wordpress/wp-content/themes/Aisis-Framework/","",$path);

否则你需要一些常量来获得一个模式,比如深度目录的数量或匹配的特定模式。