という名前のデータベース テーブルusers
には列 がありますtimemarks
。
フィールドは次のtimemark
ようになります.. 11:00:00, 13:45:00, 17:00:00, 18:25:00
(タイムマークはユーザーごとに異なります)
私のphpスクリプトは、指定されたタイムマークを持つユーザーをリストする必要があります.
クエリ: SELECT * FROM ('users')
(クエリ結果は に返されます$users
)
ループ:
- ユーザーを反復する
$timemarks_arr
を使用してタイムマーク文字列を分割して、各ユーザーの配列を作成しますstr_getcsv
- 指定されたタイムマーク値を持つユーザーをエコーする
foreach ($users as $user):
$timemarks_arr = str_getcsv($user->timemarks); //split time-marks by comma and create array
if (in_array("17:00:00", $timemarks_arr)) //users with specified time-mark
{
echo $entry->username . "<br />";
}
endforeach;
何らかの理由で 2 人のユーザーしかエコーしませんが、 time-mark にはさらに多くのユーザーがいます17:00:00
。誰かが理由を知っていますか?