Если вы не хотите использовать регулярные выражения, это одно из решений.
<?php
$movie[0]='Amber';
$movie[1]='babar';
$movie[2]='Aviator';
$movie[3]='Caty boy';
function startsWith($haystack, $needle)
{
return !strncmp($haystack, $needle, strlen($needle));
}
foreach (range('a', 'z') as $i){
echo '<h1>'.strtoupper($i).'</h1>';
foreach($movie as $key){
if(startsWith(strtolower($key),$i)){
echo '<li>'.$key.'</li>';
}
}
}
?>
Выход для выше будет:
A
Amber
Aviator
B
Babar
C
Caty boy
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
занесения вашего массива $ фильмов из базы данных, конечно, с ORDER BY SQL запроса. Тогда $ массив фильм может быть в этом формате
Title - (Year)
Он не будет делать разницы, что вы положили после названия - год или любой другой детали. Условие заключается в том, что ваша строка должна начинаться с заголовка. Так что даже если вы пропустите формат, Ex:
$movie[0]='Titanic';
$movie[1]='Hulk (2009)';
еще функция должна сортировать его в порядке, вы описали в вашей постановке задачи. Надеюсь, поможет.
что вы пробовали/что ваш уровень PHP (не имеют понятия, новичок, средний и т. Д.)? – rlatief
http://www.php.net/manual/en/book.pdo.php – Jon
MySQLi может быть проще изначально. Затем PDO. – Achrome