设为首页 - 加入收藏 ASP站长网(Aspzz.Cn)- 科技、建站、经验、云计算、5G、大数据,站长网!
热搜: 创业者 手机 数据
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP和mxml 实现FLASH 曲线图

发布时间:2022-02-10 14:21 所属栏目:121 来源:互联网
导读:MXML是一个可以让你在Adobe Flex中布局用户界面组件的一种XML语言,你也可以使用MXML声明来定义程序中的非可视化组件,安装好FLEX Development 后,你就可以轻松的结合PHP完成一个FLASH曲线图. 先从PHP入手: FLEX 和PHP的交互最常用的就是和XML的交互,就是用PHP
  MXML是一个可以让你在Adobe Flex中布局用户界面组件的一种XML语言,你也可以使用MXML声明来定义程序中的非可视化组件,安装好FLEX Development 后,你就可以轻松的结合PHP完成一个FLASH曲线图.
 
  先从PHP入手:
 
  FLEX 和PHP的交互最常用的就是和XML的交互,就是用PHP生成XML,然后用FLEX去读取并且显示,我们以XML的形式先写一个帐目详单的数据,代码如下:
 
  header("Content-Type: text/xml");
  $arr = array(
       array('day'=>'01','sum'=>'153.1'),
        array('day'=>'02','sum'=>'882.86'),
        array('day'=>'03','sum'=>'456.9'),
        array('day'=>'04','sum'=>'717.7'),
         array('day'=>'05','sum'=>'255.1'),
         array('day'=>'06','sum'=>'533.1')
  );
  $xml_return  .= "<bills>";
  foreach ( $arr as $use){
         $xml_return .="<bill><sum>{$use['sum']}</sum><name>{$use['day']}</name></bill> ";
  }//开源代码Cuoxin.com
  $xml_return.= "</bills>";
  echo $xml_return;
  显示6个月的消费记录,$arr也可以是从数据库读出来的数据,这里只是作为一个例子,所以直接给一个数组赋值.
 
  - <bills>
  - <bill>
  <sum>153.1</sum>
  <name>01</name>
  </bill>
  
  - <bill>
  <sum>882.86</sum>
  <name>02</name>
  </bill>
  
  - <bill>
  <sum>456.9</sum>
  <name>03</name>
  </bill>
  
  - <bill>
  <sum>717.7</sum>
  <name>04</name>
  </bill>
  
  - <bill>
  <sum>255.1</sum>
  <name>05</name>
  </bill>
  
  - <bill>
  <sum>533.1</sum>
  <name>06</name>
  </bill>
  
  </bills>
  Php部分就完成了,接下来是写MXML,实例代码如下:
 
  <?xml version="1.0" encoding="utf-8"?>
  <?xml version="1.0" encoding="utf-8"?>
  <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"  creationComplete="getaccount()">
     <mx:HTTPService id="listRequest" url="" useProxy="false" method="POST">
     <mx:request xmlns=""> </mx:request>
     </mx:HTTPService>
      
     <mx:Script><![CDATA[
      import mx.rpc.events.ResultEvent;//引用ResultEvent类
      public function getaccount():void{
    listRequest.url='http://localhost/arr.php';
       listRequest.send();
  }
    ]]></mx:Script>
     <mx:LineChart showDataTips="true" clipContent="false" x="126" y="10" id="tongjitu"  dataProvider="{listRequest.lastResult.bills.bill}" width="678">
     <mx:horizontalAxis>       
      <mx:CategoryAxis dataProvider="{listRequest.lastResult.bills.bill}"  categoryField="name" title="(日)" />
     </mx:horizontalAxis>   
        <mx:series>
           <mx:LineSeries displayName="每日消费" yField="sum" xField="name"/>
      </mx:series>
     </mx:LineChart>
  </mx:Application>
  逐一解释一下:
 
  Application //MXML应用程序开头
  creationComplete="getaccount()" //代表页面加载完成后 执行 getaccount函数
  〈mx:HTTPService id="listRequest" url="" useProxy="false" method="POST"〉
     〈mx:request xmlns=""〉 〈/mx:request〉
     〈/mx:HTTPService〉
  //则是一个HTTP的请求,发送POST到一个PHP文件 去获取数据
  mx:Script //MXML里面的脚本 都用 <mx:Script>包含进去
  下面分析下getaccount函数:
 
  public function getaccount():void{
         listRequest.url='http://localhost/arr.php';
          listRequest.send();
      }
  //列出了 HTTPService 请求地址是  http://localhost/arr.php
  //你同样也可以写成相对路径 比如 listRequest.url='./arr.php';
  
  mx:LineChart  //是一个 曲线 组件,我们可以直接拿来使用
  
  dataProvider :数据源:listRequest.lastResult.bills.bill
  bills.bill 是XML里面的标签
  
  mx:LineSeries displayName="每日消费" yField="sum" xField="name"   
  //则定义了 横纵坐标的值。     
  //Sum  name  就是XML里面的数据的标签
 

(编辑:ASP站长网)

    网友评论
    推荐文章
      热点阅读