On 11/10/2011 09:45 AM, Bastien Koert 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.
Just a thought: Try removing the spaces altogether, not by replacing
them with underscores.
--
Dan
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php