在做一些数据统计的时候,为了更好的向客户展示一些信息,我们会将整理好的数据通过Php的GD函数库来输出饼状图,或是线性图,条形图等等,总之就是让客户能更好的比较这些数据。以前我的做法也是这样,但是GD函数用着还是有些不爽,自己也没怎么去深深的研究它。为此当生成这些图,尤其是饼状图的时候总是会借助搜索引擎来帮忙实现。
现在好了,一个Flash源文件来帮我搞定,我只需要将整理好的数据传递到模板Html文件中,剩下的工作Flash会帮我来完成。
好了,展示一下效果图:

讲解 (>>>请先下载此Flash饼状图源码<<<)
使用此Flash文件,你需要PHP来处理的只是整理数据的一个过程,如本例中的:
PHP代码
- <?php
- $array = array (
- 0 => array (
- ‘name’ => ‘数据一’,
- ‘value’ => 28,
- ‘color’ => ‘#ff0000′,
- ),
- 1 => array (
- ‘name’ => ‘数据二’,
- ‘value’ => 30,
- ‘color’ => ‘#0000ff’,
- ),
- 2 => array (
- ‘name’ => ‘数据三’,
- ‘value’ => 45,
- ‘color’ => ‘#008800′,
- ),
- );
- $flashVar = null;
- foreach($array as $a) {
- $flashVar .= “<set name=’” . $a['name'] . “‘ value=‘” . $a['value'] . “‘ color=‘” . $a['color'] . “‘ />”;
- }
- ?>
假设我们处理好的数据为$array。然后整理为$flashVar数据,当然你也可以直接生成$flashVar数据。然后传递到模板html文件中
如本例中的HTML代码
XML/HTML代码
- <html>
- <head>
- <title>生成饼关图-phplamp博客站</title>
- <meta http-equiv=“Content-Type” content=“text/html; charset=utf-8″ />
- </head>
- <body>
- <object classid=“clsid:D27CDB6E-AE6D-11cf-96B8-444553540000″ codebase=“http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0″
- width=“500″ height=“230″ align=“” viewastext>
- <param name=“allowScriptAccess” value=“sameDomain”>
- <param name=“FlashVars” value=”dataXML=<graph shownames=‘1′ showvalues=‘0′ decimalPrecision=‘0′ pieRadius=‘150′ numberPrefix=” formatNumber=‘1′ formatNumberScale=‘0′ baseFont=‘宋体’ baseFontSize=‘12′ outCnvBaseFontSze=‘宋体’ outCnvBaseFontSize=‘11′>
- <?php echo $flashVar;?>
- </graph>“>
- <param name=“movie” value=“round.swf?chartWidth=500&ChartHeight=230″>
- <param name=“quality” value=“high”>
- <param name=“wmode” value=“transparent”>
- <embed src=“round.swf” flashVars=“&dataXML=<graph shownames=’1′ showvalues=’0′ decimalPrecision=’0′ pieRadius=’150′ numberPrefix=” formatNumber=’1′ formatNumberScale=’0′ baseFont=’宋体’ baseFontSize=’12′ outCnvBaseFontSze=’宋体’ outCnvBaseFontSize=’11′><?php echo $flashVar;?></graph>” quality=“high” width=“500″ height=“330″ name=“Column3D” type=“application/x-shockwave-flash” pluginspage=” http://www.macromedia.com/go/getflashplayer” wmode=“transparent”/>
- </object>
- </body>
- </html>
红色部分为要输出的$flashVar参数!
我太菜了
看不懂
其实比较简单,认真看一下你就明白了!
看不懂,不知道怎么使用
真TMD方便 呵呵
用啦。挺方便的,谢谢!
在IE7显示不出来。。什么原因?
注意网页编码!
看不懂啊