My MySQL queries are returning arrays with duplicate entries: numbered keys and labeled keys with the same data inside. This may be standard, but it seems like a waste, and something that could cause problems if I’m printing values. I mean, not a huge problem, obviously. But I’m just curious if I can stop that. It seems unnecessary. For example:
Array(
[0] => "Ted",
[first_name] => "Ted",
[1] => "Schmidlap",
[last_name] => "Schmidlap"
)
And so on.
I’m pretty new to a lot of this, so this may be a simple question, but Googling doesn’t seem to have any answers for me. Anyone know the reason this happens? I’m using PHP’s PDO now, but I was doing it straight through the MySQL functions before and the same thing was happening, so I assume it’s a byproduct of MySQL interaction.
I can iterate through and unset the numeric ones, because I don’t need them, but they’re not really in the way right now, so that’s just an extra step. Still, is there a way to simply not have them fetched in the first place?
That depends on the function you are using.
Some functions return both types, others return only one of them.
If you are using
PDOStatement->fetch, notice the optional $fetch_style argument it takes.