php读取csv数据
csv文件类似于excel,可以存储和处理一些数据,csv可以把数据导入到数据库中,前提是结构一样,但是,遇到结构不一样的csv就要把它里面的数据读出来,处理一下,就可以入库了。本文介绍的就是用php读取csv的方法。
很多时候,数据需要进入不同的数据存储仓库,今天就遇到这个问题,客户发来14万条记录的csv文件(不了解csv的童鞋可以google一下),没有办法,只好自己把凌乱的csv读出来,然后保存进数据库,下面我把代码贴出来,分享一下。
<?php $file_name='_upload/csv/'.$_FILES['file_name']['name']; //上传路径 if($open_file=fopen($file_name,"r")){ $handle = fopen($file_name,"r"); $row=1; $i=0; while($open_fileline=fgetcsv($handle,255)){ $insert_array[$i]['firstname']=$open_fileline[0]; $insert_array[$i]['lastname']=$open_fileline[1]; $insert_array[$i]['gender']=$open_fileline[2]; $insert_array[$i]['dob']=$open_fileline[3]; $insert_array[$i]['country']=$open_fileline[4]; $insert_array[$i]['nric_id']=$open_fileline[5]; $insert_array[$i]['email']=$open_fileline[6]; $insert_array[$i]['password']=$open_fileline[7]; $insert_array[$i]['re_password']=$open_fileline[8]; $insert_array[$i]['mobile_phone']=$open_fileline[9]; $insert_array[$i]['Nationality']=$open_fileline[10]; $insert_array[$i]['address1']=$open_fileline[11]; $insert_array[$i]['zip_code']=$open_fileline[12]; $insert_array[$i]['Company']=$open_fileline[13]; $insert_array[$i]['Emergency_contact']=$open_fileline[14]; $insert_array[$i]['Emergency_number']=$open_fileline[15]; $insert_array[$i]['relationship']=$open_fileline[16]; $insert_array[$i]['Job']=$open_fileline[17]; $insert_array[$i]['TeeShirtOrder']=$open_fileline[18]; $insert_array[$i]['Bloodgroup']=$open_fileline[19]; $insert_array[$i]['MedConditions1']=$open_fileline[20]; $insert_array[$i]['MedTreat1']=$open_fileline[21]; $insert_array[$i]['Consent']=$open_fileline[22]; $insert_array[$i]['actual_price']=$open_fileline[27]; $insert_array[$i]['Swim_trial']=$open_fileline[28]; $insert_array[$i]['ChampionShip']=$open_fileline[29]; $insert_array[$i]['ChampionShip_number']=$open_fileline[30]; $insert_array[$i]['team_mode']=$open_fileline[31]; $insert_array[$i]['datetime_submission']=date("Y-m-d H:i:s"); //unset($insert_array['0']); //unset($category_array['0']); if($i>1){ //除去标题 print_r($insert_array[$i]); echo 'Row:'.$i.' import Success<br />'; } $i++; } //unset($insert_array['0']); fclose($handle); }else{ echo 'error'; } ?> |
полностью поддерживаю, такие же мысли были.
Потрясающе! Хочется перечитывать снова и снова… Такие авторы сегодня большая редкость.
Спасибо за пост. Позновательно.
А Вы не задумывались о том, чтобы параллельно завести еще один блог
Слушайте, давайте махнем в ближайшие выходные за город и там все это обсудим. Вы ведь из Москвы?
Решил помочь и разослал пост в социальные букмарки. Надеюсь поднимется популярность
Помнится, кто-то выкладывал фотки…
Занятно. Подпишусь-ка я на RSS пожалуй
+1 к предыдущему комменту
А представьте, если бы Ваш блог был бы повыше в рейтинге Яндекса, очень много бы людей прочли этот пост.
+1 к предыдущему комменту
Офигеть просто! Все, блин, всё знают, кроме меня
А представьте, если бы Ваш блог был бы повыше в рейтинге Яндекса, очень много бы людей прочли этот пост.
Хороший пост! Подчерпнул для себя много нового и интересного! Пойду ссылку другу дам в аське
Очень понравилось, даже не ожидала.
Вот это пост! Сильно. Спасибо.