2010-08-26 5 views
1

Comment est-ce que je preg_replace .php de fin de chaîne?preg_replace ".php"?

for ($x = 0; $x < count($sidebar_links); $x++) { 

    $sidebar[$x] = $x;   
} 

sidebar_links $:

array(3) { [0]=> string(9) "index.php" [1]=> string(9) "site2.php" [2]=> string(7) "site3.php" } 
+2

vous pouvez utiliser simple str_replace –

Répondre

4

vous pouvez utiliser de simples str_replace

li ke

str_replace('.php', '', $sidebar_links[$x]); 

ou basename

basename($sidebar_links[$x], ".php"); 
+0

basename est la solution la plus facile, un bon partage. –

3

preg_replace('\.php$', '', $sidebar_link)

Ou, pour éviter regex:

if (substr($sidebar_link, -4) == ".php") 
    $sidebar_link = substr($sidebar_link, 0, -4); 
0

I utilisé code ci-dessous pour remplacer l'extension de fichier. Au lieu de remplacer simplement le dernier index de tableau non défini.

private function changeFileExtension($imagePath, $ext=""){ 
     $arr = explode(".", $imagePath); 
     if(count($arr) > 0) 
     { 
      $arr[count($arr)-1] = $ext; 
      return implode(".", $arr); 
     } 
     else 
      return false; 
    }