Главная > PHP > php: преобразуем данные в нужный формат

php: преобразуем данные в нужный формат

Вот нужно например из файла http://static.wipmania.com/static/countries.txt получить 2 массива: массив кодов стран и масиив кодов стран с названиями. Как сделать быстро:
Итак файл в формате:

AC	Ascension Island
AD	Andorra
AE	United Arab Emirates
AF	Afghanistan
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 
ZA	South Africa
ZM	Zambia
ZW	Zimbabwe

а нужно:

$arr1=array('AC','AD','AE','AF','AG','AI','AL','AM','AN','AO','AQ','AR','AS','AT','AU','AW','AX','AZ','BA','BB','BD','BE','BF','BG','BH','BI','BJ','BL','BM','BN','BO','BR','BS','BT','BV','BW','BY','BZ','CA','CC','CD','CF','CG','CH','CI','CK','CL','CM','CN','CO','CR','CU','CV','CX','CY','CZ','DE','DJ','DK','DM','DO','DZ','EC','EE','EG','EH','ER','ES','ET','FI','FJ','FK','FM','FO','FR','GA','GB','GD','GE','GF','GG','GH','GI','GL','GM','GN','GP','GQ','GR','GS','GT','GU','GW','GY','HK','HM','HN','HR','HT','HU','ID','IE','IL','IM','IN','IO','IQ','IR','IS','IT','JE','JM','JO','JP','KE','KG','KH','KI','KM','KN','KP','KR','KW','KY','KZ','LA','LB','LC','LI','LK','LR','LS','LT','LU','LV','LY','MA','MC','MD','ME','MF','MG','MH','MK','ML','MM','MN','MO','MP','MQ','MR','MS','MT','MU','MV','MW','MX','MY','MZ','NA','NC','NE','NF','NG','NI','NL','NO','NP','NR','NU','NZ','OM','PA','PE','PF','PG','PH','PK','PL','PM','PN','PR','PS','PT','PW','PY','QA','RE','RO','RS','RU','RW','SA','SB','SC','SD','SE','SG','SH','SI','SJ','SK','SL','SM','SN','SO','SR','ST','SV','SY','SZ','TC','TD','TF','TG','TH','TJ','TK','TL','TM','TN','TO','TR','TT','TV','TW','TZ','UA','UG','UM','US','UY','UZ','VA','VC','VE','VG','VI','VN','VU','WF','WS','YE','YT','ZA','ZM','ZW');

и

$arr2=array('AC'=>'Ascension Island',
	'AD'=>'Andorra',
	'AE'=>'United Arab Emirates',
	'AF'=>'Afghanistan',
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 
	'ZA'=>'South Africa',
	'ZM'=>'Zambia',
	'ZW'=>'Zimbabwe');

И так решение:

<?php
$ish = "AC	Ascension Island
AD	Andorra
AE	United Arab Emirates
AF	Afghanistan
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 
ZA	South Africa
ZM	Zambia
ZW	Zimbabwe
";
$arr1=preg_replace("/\t.+\n/", "\n",$ish);
$arr1=preg_replace("/\n/","','",$arr1);
echo "<pre>";
	echo '$arr1=array(\'';
	echo substr($arr1,0,-2);
	echo ');';
echo "</pre>";
echo "<br/><br/>";
$arr2=preg_replace("/\t/","'=>'",$ish);
$arr2=preg_replace("/\n/","',\n\t'",$arr2);
echo "<pre>";
	echo '$arr2=array(\'';
	echo substr($arr2,0,-4);
	echo ');';
echo "</pre>";
?>

ну а дальше копи-паст в исходник :)

Categories: PHP Tags:
  1. Пока что нет комментариев.
Похожие публикации