2012-01-23 13 views
-8

私はCSVからMysqlにインポートしていますが、すべての作品は唯一の問題です。通常の日付をmysqlの日付に変換する必要があります。誰でも助けることができます。配列の値を変更する

$row = 1; 
if (($handle = fopen($_FILES['Filedata']['tmp_name'], "r")) !== FALSE) { 
    while (($data = fgetcsv($handle, 10000, ";")) !== FALSE) { 
     if($row != 1) { 
      $sql = sprintf('INSERT INTO %s ('.$fields.') VALUES ("%s")', 
       'flight_tbl', 
       implode('", "', array_map('mysql_escape_string', $data)) 
      );   
      mysql_query("SET names latin5");    
      mysql_query($sql); 
     } 
     $row++; 
+4

"通常の日付形式"を記述できますか? –

+2

常にうんざりしています。関連する*コードと*データを投稿する* –

答えて

1

これはどういう意味ですか?

$data[$your_date_field_index] = date('Y-m-d H:i:s', strtotime($data[$your_date_field_index])); 
+0

ええ、ありがとう! $ data [3] = date( 'Y-m-d'、strtotime($ data [3])); – user505790

1

は、あなたが「正常な日付」を定義していないので、これは動作が保証されていませんが、あなたの日付を文字列に保持されている場合答えはほぼ確実になります。

$mySqlDate = date('Y-m-d H:i:s', strtotime($normalDate)); 

そして、それならばと整数のUnixタイムスタンプです。

$mySqlDate = date('Y-m-d H:i:s', $normalDate); 
+0

$ data [3] = date( 'Y-m-d'、strtotime($ data [3])); – user505790