Не заполняется массив :(((

Iton

Guest
Не заполняется массив :(((

В єтом примере кода происходит чтен6ие из файла и заполнение массива.
Массив должен иметь такую структуру (например):
array(...) {
[0]=>
array(4) {
["Name"]=>string(27) "Ноутбук ASUS A2500H A2H26CM"
["Price"]=>string(12) "8700 гривень"
["Color"]=>string(10) "Сріблястий"
["Guarantee"]=>string(10) "36 місяців"
}
[1]=>
array(4) {
["Name"]=>string(34) "Ноутбук FujitsuSiemens Amilo D8830"
["Price"]=>string(12) "9100 гривень"
["Color"]=>string(6) "Чорний"
["Guarantee"]=>string(10) "36 місяців"
}
[2]=>
array(4) {
["Name"]=>string(20) "Ноутбук LG LM50-GSKR"
["Price"]=>string(12) "2500 гривень"
["Color"]=>string(6) "Чорний"
["Guarantee"]=>string(9) "1 тиждень"
}
[...]=>
array(4) {
...
}
}

...
но при заполении в єтом фрагменте просиходит немножко нето :

...
$source=fopen("file","r") or die("Error Open File!");
//
$i=0;$q="";$loadst="";
//------------------------------------------------------------------------------
while (!feof($source))
{

for ($y=1;$y<5;$y++)
{
$loadst=fgets($source,50);
$q=explode(":",$loadst);
//ну почему ты неработаеш?мля
$sections=array($i=>array($q[0]=>$q[1]));
echo "[ $i ]--- $y -- $q[0] -- $q[1] <br>";
}

$i++;
if ($q[0]!=NULL)echo "<br> ------------------------<br>";
}

результат (вар_дамп массива):
array(1) { [3]=> array(1) { [""]=> NULL } }

как єто исправить?
 

SelenIT

IT-лунатик :)
PHP:
// сразу после открытия файла
$sections = array();
while (($str = fgetcsv($source, 100, ':'))!== false) {
    $sections[] = array(
        ["Name"]=>$str[0],
        ["Price"]=>$str[1],
        ["Color"]=>$str[2],
        ["Guarantee"]=>$str[3],
    );
}
var_dump($sections);
не то?
 
Сверху