2010-03-12 4 views

ответ

21

dirname(). Вы можете использовать его столько раз, сколько вы хотите

  • получить родителя/ребенка - имя-каталога («родитель/ребенок/ответ»)
  • получить родитель - (имя-каталога Dirname («родитель/ребенок/ответить '))
2
preg_replace("/\/\w+$/i","",__DIR__); 
    # Note you may also need to add .DIRECTORY_SEPARATOR at the end. 
1

Вот функция для удаления последней п части URL:

/** 
* remove the last `$level` of directories from a path 
* example 'aaa/bbb/ccc' remove 2 levels will return aaa/ 
* 
* @param $path 
* @param $level 
* 
* @return mixed 
*/ 
public function removeLastDir($path, $level) 
{ 
    if (is_int($level) && $level > 0) { 
     $path = preg_replace('#\/[^/]*$#', '', $path); 

     return $this->removeLastDir($path, (int)$level - 1); 
    } 

    return $path; 
} 
+0

Действительно? Регулярные выражения и рекурсия? Почему бы не цикл 'for' с' dirname'? К простому? – lxg