値が指定された形式と必ずしも一致しない場合でも、Zend_Date::isDate が true を返すという問題があります。
例えば:
$time = "12:34:56"; // Time doesn't have AM/PM attached
if( Zend_Date::isDate($time, 'hh:mm:ss a') )
echo "this is true";
else
echo "this is false";
これは、形式に「ローカライズされた時刻」(私の場合は「AM」/「PM」) が必要であることを示す「a」がリストされていても、常に当てはまります。'12:12:34:56:56' のように完全に形式が間違っていても、true が返されます。ただし、':34:56' の時間は false を返します。これはバグですか、それとも、指定した形式が一致する必要があると考える際に何かが欠けていますか?
ありがとう!