Skip to main content
Known Participant
April 3, 2011
Question

PHP/MySQL Making the value of one column the key for another

  • April 3, 2011
  • 1 reply
  • 602 views

I have a table 'languages' with columns field, english, french, german.
I have variable $language = 'french'

I want the value of 'field' to become the key for the value of 'french'
For example, if field = city and french = ville, I want to end up with $city having the value ville.

I have tried many ways, including the following, but nothing works.

$sql=mysql_query("SELECT field, $language FROM languages");
while($set=mysql_fetch_assoc($sql)){
foreach ($set as $value){
$now = array($set['field'] => $set[$language]);
}
extract($now);
echo $city;

This topic has been closed for replies.

1 reply

Known Participant
April 3, 2011

Someone at the DevNetwork forum gave the answer for this.

In case anyone is interested, the solution is to use variable variables, and the code is revised like so:

$sql=mysql_query("SELECT field, $language FROM languages");
while($set=mysql_fetch_assoc($sql)){
${$set['field']} = $set[$language];
}