2016-07-05 11 views
0

私は$ time = '12:00:00 'のためにstrtotime() をうまく使っています。 しかし 時間のフォーマット方法12:00:00または12:00:am〜12:00 am?

$time = '12:00:am'; 
echo date('h:i A ', strtotime($time)); 

それは午後4:00を返すが、私は、出力は、この機能はあなたを助けることができる午前12:00

+2

''12:00:am''は* *有効な日付形式 –

+1

ないフォーマット「12:00:午前」秒数が期待されている2番目のコロンの後のように、有効ではありません。 –

+0

しかし、私は両方のフォーマットで多くのデータを持っていますが、何ができますか? @ John Conde @ Paul Stelian – user3176663

答えて

1

で欲しいです。あなたのフォーマット「12:00:00 or 12:00 am:am」のような時間がかかり、それはこのようなあなたのニーズとして出力されます。「12:00 AM」。

function convert_time($the_time){ 
    $time_arr = explode(":",$the_time); 
    if($time_arr[2] != "am" || $time_arr[2] != "pm"){ 
     if($time_arr[0] >= "0" && $time_arr[0] <= 12){ 
      if($time_arr[0] == 12 && $time_arr[1] > 00){ 
       $time_arr[2] = "pm"; 
      } else { 
       $time_arr[2] = "am"; 
      } 
     } else { 
      $time_arr[2] = "pm"; 
     } 
     $new_time = $time_arr[0].":".$time_arr[1]." ".strtoupper($time_arr[2]); 
     return $new_time; 
    } 
    $new_time = $time_arr[0].":".$time_arr[1]." ".strtoupper($time_arr[2]); 
    return $new_time; 
} 

$time = '12:00:am'; 
echo convert_time($time); 
+0

この機能は何をしますか? – Martin

+0

この関数は、ユーザーが必要とする2つの形式のように時間がかかり、必要に応じて変換します。私は何か見落としてますか? –

+0

あなたは答えを編集して書くべきです。 – Martin

関連する問題