首頁 >後端開發 >php教程 >如何才能把查询出来的结果以数组的形式输出

如何才能把查询出来的结果以数组的形式输出

WBOY
WBOY原創
2016-06-23 14:10:021298瀏覽

以下是我想要达到的结果...

$graph->xaxis->SetTickLabels(array('润安大厦','百花大厦','金梦大厦','恒丰大厦','华谊大厦','蓝鲸大厦','GG','DD','FF','HH','KK','FF','RR','TT',));


我希望用
$query_1 = "select * from tbl_area";	$sql_1 = mysql_query($query_1);	$row_1 = mysql_fetch_array($sql_1);

这样的方式把查询出来的结果按照上面'润安大厦','百花大厦','金梦大厦','恒丰大厦','华谊大厦','蓝鲸大厦','GG','DD','FF','HH','KK','FF','RR','TT',这样的方式打印出来要怎么才能做到,我试过用
while (	$row = mysql_fetch_array($sql)){echo "'".$row[areaname]."'".",";}
循环出来,可结果是套在里面的时候报错....


回复讨论(解决方案)

while($row = mysql_fetch_array($sql)) {
   $tmp[] = $row[areaname];
}
$graph->xaxis->SetTickLabels( $tmp);

while($row = mysql_fetch_array($sql)) {
   $tmp[] = $row[areaname];
}
$graph->xaxis->SetTickLabels( $tmp);
你说的方法成功了,可我这个是要做报表的,数据库中的编码是GB2312的之前看书说报表中值支持UTF-8的编码格式,我现在打印出来的是乱码了,我用这样的方式想把编码改变了,可结果是不成功的,麻烦你看看像这样的编码要怎么装换....

while($row_1 = mysql_fetch_array($sql_1)){		$tmp[] = $row_1[areaname];		$array = iconv("GB2312","UTF-8","$tmp");		}


iconv只能针对字符串,不适用于数组
$tmp[] = iconv("GB2312","UTF-8", $row_1[areaname]);

在查询前执行
mysql_query('set names utf8');

这样你查询的结果就是 utf-8 的了,不需要自己转码,mysql 会替你做

当然你也可以
$tmp[] = iconv("GB2312","UTF-8", $row['areaname']);

当然你也可以
$tmp[] = iconv("GB2312","UTF-8", $row['areaname']);
编码改了怎么还是乱码....这到底又是哪错了呢...

echo base64_encode($row['areaname']);
贴出结果

会不会是文件保存的格式不是UTF-8呢,建议打开看一下

echo base64_encode($row['areaname']);
贴出结果
结果为:【ILDZu6i088/DRkZGuuO34bTzz8M=u6rS6rTzz8M=wLa+qLTzz8M=vfDDzrTzz8M=yPOwsrTzz8M=wKXJvbfWuavLvg==zvewsrfWuavLvg==z8PDxbfWuavLvg==xM++qdK7sr8=xM++qbb+sr8=ZGZzZmRm】
关键是我现在纳闷的是报表里面像X轴,Y轴还有标题也都是从数据库中读出的,他们就不是乱码,而就底下这个出现乱码...

乱码了,用记事本打开另存为 编码看看是不是utf-8

嗯,确定是 gbk 的

可能是在哪里又赚了码,也可能是所用的字体是西文的

页面的编码格式是什么?

页面的编码格式是什么?
页面的编码格式是GB2312  关键是同样的页面,数据库中同样的编码格式,怎么一个不乱码一个乱码呢.....

乱码了,用记事本打开另存为 编码看看是不是utf-8
用记事本打开另存为的编码是GB2312的没什么问题的

数据表的编码是否也是gb2312,每个表的编码是否一致?

数据表的编码是否也是gb2312,每个表的编码是否一致?
都是统一的GB2312的

这就奇怪了,数据库的数据不是乱码吧?

这就奇怪了,数据库的数据不是乱码吧?
问题解决了一般汉字出现乱码的话要是GB2312的就需要加这个 $graph->xaxis->SetFont(FF_SIMSUN,FS_BOLD);SetFont方法的第一个参数为FF_SIMSUN即可正常显示
要是UTF-8的 还需加一句$title = iconv("UTF-8", "gb2312", $title)

看完又长见识了


这就奇怪了,数据库的数据不是乱码吧?
问题解决了一般汉字出现乱码的话要是GB2312的就需要加这个 $graph->xaxis->SetFont(FF_SIMSUN,FS_BOLD);SetFont方法的第一个参数为FF_SIMSUN即可正常显示
要是UTF-8的 还需加一句$title = iconv("UTF-8", "gb2312", $title)

哦,这样,还真没碰到过,长学问了

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn