On 11/10/2011 05:45 PM, Bastien Kurt wrote:
Morning all,

I've been having some fun with converting a text data file import into
a json object for storage.

I have a text file that is pipe delimited coming in via an upload. The
first row is the headers and the second row is the data.

Using this code:

$data = file("inline_Nov_8_2011.txt");

if(count($data)==2){
        
        $keys   = explode("|", $data[0]);
        $fields = explode("|", $data[1]);     

        $combine = array_combine($keys, $fields);
        
        $json = json_encode($combine);
}

After the combine, I get an array that looks like this

Array
(
     ['Legal Last Name '] =>  Andros
     ['Legal Middle Initial '] =>
     ['Legal First Name '] =>  Marisa
     ['Maiden/Other Name '] =>
     ['Social Insurance No. '] =>  123456789
     ['Date of Birth '] =>  2/1/1988
     ['Gender '] =>  Female
)

But the json encoded value looks like this (there are way more
elements but this should be enough to represent what I need to do).

{null:"Andros",null:"",null:"Marisa",null:"",null:"123456789",null:"2\/1\/1988",null:"Female"}

I have been googling for info about allowed values for the json keys,
but can't seem to find a clear doc on what is allowed and what isn't.
I have tried unquoted keys, replaced the spaced with underscores but
nothing I do seems to help.

When I echo out the json encoded data, the keys are all nulls.

Can someone point me in the correct direction? It may be that I need
to manually create the key names as an array first, which I was hoping
to avoid since the file format coming from the client is still in some
flux.

Give the incoming input example, please as well as the desired output.

--
Best regards,
DiRaven

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to