アイテムの配列があり、それらのアルファベット順のナビゲーションを生成しようとしています。
A|B|C|D|E|F|G|H など...
- アップル
- アプリコット
- にんじん
- キャメル
- 犬
したがって、アルファベットのすべての文字をリストしたいのですが、配列内のアイテムが一致するものだけをリンクします。
これまでのところ、私は持っています:
$productArr = array('Apple','Apricot','Carrot','Camel','Dog');
$previous = null;
foreach(range('A','Z') as $alpha) {
$arrayCount = count($productArr);
for ($i=0; $i < $arrayCount; $i++) {
$firstLetter = $productArr[$i];
if ($firstLetter[0] == $alpha && $firstLetter[0] != $previous){
echo '<li><a href="#'.$alpha.'">'.$alpha.'</a></li>';
$previous = $alpha;
}elseif ($firstLetter[0] != $alpha && $alpha != $previous){
echo '<li>'.$alpha.'</li>';
$previous = $alpha;
}
}
}
elseifをコメントアウトすると、elseifまで正常に動作し、リンクのリストが期待どおりに出力されます。アルファベットの残りの部分を印刷する方法を考え出す必要があります。
私がどこで間違っているのかについての助けをいただければ幸いです。
乾杯