Renaming array keys
Posted on
16th Feb 2014 07:03 pm by
admin
The issue: renaming array keys inside a foreach loop.
I'm trying to build a pie chart image with the Google Chart API using information from a database. (I'm going to change the type of data I talk about because it is extremely sensitive. Just wanted to share that so you didn't think my example was completely weird or stupid even.)
After running my SELECT statement, I have a 2-column dataset with multiple rows. I am currently grabbing the data in this way:
<?php
$total = 0;
while ($r = mysql_fetch_array($result))
{
$info[$r['month']] = $r['days'];
$total += $r['days'];
}
?>
$info is an array with each key being the name of the month and the value being how many days are in that month. $total is the sum of each days.
To supply the dataset inside the image src, I provide a comma separated list. To supply the labels for each dataset, I provide a list separated by pipes.
The problem that I am having is that I would like each label to be the month as well as a percentage number of the total in parenthesis next to the month name.
I am building the URL perfectly fine using JUST the month name like this:
<?php
echo '<p>';
echo '<img src="http://chart.apis.google.com/chart?cht=p&chd=t:';
echo implode(',',array_values($info));
echo '&chs=250x100&chl=';
echo implode('|',array_keys($info));
echo '" alt="" />';
echo '</p>';
?>(I broke up each line for readability.)
How I am trying to include the percentage in the label is be redefining the key BEFORE I add in the array keys to the URL. Trying by this method:
<?php
foreach ($info as $key => $value)
{
$key = $key . (number_format($value/$total,0)) . '%';
}
?>
Expected outcome:
The labels on the image would read something to the tune of -- June (8.2%)
Actual outcome:
Nothing. Well, not nothing. Just the month is coming out. The key names are not being edited.
Thanks for reading this far. I appreciate the help
No comments posted yet
Your Answer:
Login to answer
96
41
Other forums
need help in update query
hi
i have a dynamic form. i need help in how can i use update query when values from dynamic for
Problems with array
This code is the last lines in an upload script that uploads 4 images at the same time and writes th
Captcha problem users just refresh and it will let them auto submit again
Users will just re submit and not have to enter the new captcha.. ? Lol but if i refresh the page, t
TabControl Inside ListView Not Editing
Hello everybodyI have a ListView on my page. Inside the ListView I put a TabControl, cuz I want to p
Problems with returning true or false in eval()'d code
Hi guys,
Would appreciate some help with a problem when running eval() on a function that sho
send message to the java application
Oracle 10g with Windows platform.
I have a java application that periodically pings the d
progress bar...need expert opinion of experienced webmaster
Hey guys, quick question:
I want to display a progress bar when I upload files, but I am not
How to make a input/output field with multiple lines
Hello.
I put a input/output field on the screen but I could not change height of it. I need to
New Search Engine
Hey everyone,
I have a ZIP Code Radius search engine already functional. it displays all of t
How to insert random unique values in 2 columns ?
I have table with 2 columns
Create Table code_for_code (
first_code varchar2(10) uni