Appending an Array

PHP programming forum. Ask questions or help people concerning PHP code. Don't understand a function? Need help implementing a class? Don't understand a class? Here is where to ask. Remember to do your homework!

Moderator: General Moderators

Post Reply
misslilbit02
Forum Newbie
Posts: 9
Joined: Mon Sep 18, 2006 3:57 pm

Appending an Array

Post by misslilbit02 »

Hi,

I want to grab data from a .csv file and add all the data to the array. I have the part where I'm grabbing the data from the .csv file but the array issue I haven't totally figured out.

Currently, I'm not adding all the data just the last row of data to the array and need help trying to add all the data to the array. Can someone please help me accomplish this. This is what I have:

Code: Select all

 
<?php
global $info;
ini_set("auto_detect_line_endings", 1);
$current_row = 1;
$handle = fopen("adduser.csv", "r");
$info="";
while ( ($data = fgetcsv($handle, 10000, ",") ) !== FALSE )
{
    $number_of_fields = count($data);
    if ($current_row == 1)
    {
    //Header line
        for ($c=0; $c < $number_of_fields; $c++)
        {
            $header_array[$c] = $data[$c];
        }
    }
    else
    {
    //Data line
        for ($c=0; $c < $number_of_fields; $c++)
        {
            $data_array[$header_array[$c]] = $data[$c];
        }
        print_r($data_array);
        $info = $data_array;
    }
    $current_row++;
}
//buildBatchXML($data_array);
 
echo "<br><br>This is new data:<br><br>";
    foreach($info as $key => $value)
    {
        echo "$key - $value<br>";
    }
    
fclose($handle);
 
?>
monkey56657
Forum Newbie
Posts: 2
Joined: Sun Feb 17, 2008 2:46 pm

Re: Appending an Array

Post by monkey56657 »

Since you are counting the current_row then you can use that in the processing.

Im not entirely sure what you are doing with the header bit lodged in the middle here...

$data_array[$header_array[$c]] = $data[$c];

But assuming you know whats going on there cant you just do...

$data_array[$current_row][$c] = $data[$c];

Yeah if you can explain whats going on with your header in the middle it would help...
Post Reply