如果你不想使用正則表達式,這是解決方案之一。
<?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)
這不會有什麼區別後,放在標題 - 年或任何其他細節之後。條件是你的字符串應該以標題開頭。所以即使你錯過了格式,例如:
$movie[0]='Titanic';
$movie[1]='Hulk (2009)';
仍然該函數應該按照你在問題描述中描述的方式對它進行排序。希望能幫助到你。
你有什麼嘗試/什麼是你的PHP級別(有沒有線索,初學者,中級等)? – rlatief 2013-02-17 06:15:11
http://www.php.net/manual/en/book.pdo.php – Jon 2013-02-17 06:15:14
MySQLi最初可能會更簡單。然後是PDO。 – Achrome 2013-02-17 06:19:11