2017-02-14 25 views
0

にファイル拡張子なしでファイル名を取得しますファイル拡張子は私のPHPコードでは、私はここで何をしようとしている私のPHPコード

は、ここで私は、ファイル名に、それは「このシャツは、」ファイル名であり、私は私がそれを書き留め代わりに自動的に設定されるようにしたいと言う

$Pages = array(
    'clothes' => 'Clothes', 
    'shirt' => 'shirt', 
    'this-shirt' => 'This Shirt' 
); 

を取得したい私のコードの一部です毎回私はページを作成します。フルコードもここにあります

<?php 
$Pages = array(
    'clothes' => 'Clothes', 
    'shirt' => 'shirt', 
    'this-shirt' => 'This Shirt' 
); 

$path = $_SERVER["PHP_SELF"]; 
$parts = explode('/', $path); 
if (count($parts) < 2) { 
    echo("home"); 
} else { 
    echo ("<a href=\"http://domain.com\">Home</a> &raquo; "); 
    for ($i = 2; $i < count($parts); $i++) { 
     if (!strstr($parts[$i], ".")) { 
      echo("<a href=\""); 
      for ($j = 0; $j <= $i; $j++) { 
       echo $parts[$j] . "/"; 
      }; 
      echo("\">" . str_replace('-', ' ', $Pages[$parts[$i]]) . "</a> &raquo; "); 
     } else { 
      $str = $parts[$i]; 
      $pos = strrpos($str, "."); 
      $parts[$i] = substr($str, 0, $pos); 
      echo str_replace('-', ' ', $Pages[$parts[$i]]); 
     } 
    } 
} 

あなたはアイデアを得ることを望みます。おかげ

+0

'$ファイル= 'この-shirt.pdfを'; $ファイル名=(カウント((爆発、$ファイル))=== 1 $ファイル」。 '?:破(、array_slice((爆発、$ファイル)を、0、(カウント( '(爆発'。 ''。' '、$ file)) - 1))));) echo $ filename; ' – MonkeyZeus

+0

@MonkeyZeusあなたは答えにあなたのコードを載せてください。このようにはっきりしないので –

+0

どの変数に 'this-shirt' **と**の拡張子が含まれていますか? – MonkeyZeus

答えて

1

これはそれを行う必要があります。

// get this-shirt.php from the URL 
$file = basename($_SERVER["PHP_SELF"]); 

// pure magic 
$filename = (count(explode('.', $file)) === 1 ? $file : implode('.', array_slice(explode('.', $file), 0, (count(explode('.', $file))-1)))); 

$Pages = array(
    'clothes' => 'Clothes', 
    'shirt' => 'shirt', 
    $filename => 'This Shirt' // use $filename to declare the array's key 
); 
+0

は働いた。まさに私が望んでいたように –

+0

親愛なるあなたはこれで私をhhelpできどうもありがとうhttp://stackoverflow.com/questions/42262290/need-help-in-my-php-code-getting-wrong-directory-on-breadcrumb –

関連する問題