今天在网上查了些资料,写了个有关ZendAMf例子,希望用的着的同志们借鉴一下,有些东西本来很简单的,但是如果不亲自做一遍的话呢,真到要你上手做的时候还是有一定困难的,先看php端的配置:
第一步,先从官方下载最新的zendAmf的包:www.framework.zend.com
第二步,新建一个php工程,然后把下载下来的包里面的library解压后放入php工程的根目录下
第三部,在工程的根目录下新建一个amf文件夹,在该文件夹下建立如下几个文件:
(1)index.php
(2)Myservice.php
public function Myservice()
{
}
public function say($str)
{
return "Hello $str";
}
public function getData()
{
$arr = array();
for($i = 1; $i < 11; ++$i)
{
$item = new Pop();
$item->pop_id = $i;
$item->pop_name = "Dante$i";
$item->str = "Chinese";
$arr[] = $item;
}
return $arr;
}
public function saveData(Pop $item)
{
$arr = array();
$item->pop_id += 10;
$item->pop_name .= '_test';
$item->str .= '_Chinese';
$arr[] = $item;
return $arr;
}
}
?>
(3)Pop.php
public function Pop()
{
}
}
?>
第四步:在浏览器下输入amf文件夹下的index.php路径,比如我的是:http://localhost/zend-amf/amf/index.php,如果出现Zend Amf Endpoint,证明php端配置成功。注意,index.php,一定要配置正确,不然很难出现正确结果的,大家可以直接粘贴网页上的源代码。
现在来看Flex端的配置
第一步,新建一个普通的flex web工程
第二部,在src文件夹下,新建一个目录取名models,然后在其中建立Pop.as:
[Bindable]
[RemoteClass(alias="models.Pop")]
public class Pop {
public var pop_id:int;
public var pop_name:String
public var str:String;
public function Pop() {
}
}
}
第三步,在src文件夹下建立services-config.xml:
第四步,把如下代赋值 进你的主程序,比如我的纸ZendAmf.mxml:
第五步,右键单击工程,选择属性,找到FlexComplier,然后在Addtional complier arguments下面添加如下内容:
-locale en_US -services "services-config.xml"
最后,编译运行,所有前台flex数据均来自于php后端,祝体验愉快,如有问题,欢迎留言讨论,或者加本人qq:545196225,注明flex学习。