在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
借助于CodePlex上开源项目PHP for Microsoft AJAX Library的帮助,我们已经可以在PHP上使用ASP.NET AJAX的很多核心功能了。 下载安装 PHP for Microsoft AJAX Library目前仅仅处于Alpha阶段,想实际使用似乎还早了点,只能尝鲜了。 预先需求有PHP 5.2版本,且必须安装了php-json模块。 下载地址:http://www.codeplex.com/phpmsajax/Release/ProjectReleases.aspx?ReleaseId=1692 安装方法:
下面来看一个“经典”的场景:调用服务器端方法取得复杂类型。 编写Service文件 新建一个php文件,命名为EmployeeService.php。首先写上这一句,include必要的支持代码: require_once 'MSAjaxService.php'; 然后定义一个Employee类。四个属性一目了然,不用多说: class Employee
{ public $Id;
public $Name;
public $Email;
public $Salary;
function __construct($id, $name, $email, $salary) { $this->Id = $id;
$this->Name = $name;
$this->Email = $email;
$this->Salary= $salary;
} } 接下来是EmployeeService类,继承与MSAjaxService.php中的MSAjaxService基类。其中定义一个方法,用来返回一个Employee对象: class EmployeeService extends MSAjaxService
{ function GetEmployee() { return new Employee(12345, "Dflying Chen", "[email protected]", 1000); } } 然后新建一个EmployeeService的实例,并且调用基类的ProcessRequest()方法,处理该请求: $theService = new EmployeeService();
$theService->ProcessRequest(); 大功告成! 编写调用页面 新建一个页面,php或者html均可——程序比较简单。这回我们没了ScriptManager的帮助,引入ASP.NET AJAX客户端脚本文件以及上面的这个Service只能靠手工了。注意EmployeeService.php/js可以得到该Service的客户端代理,和ASP.NET平台上的语法一样: head>
title>ASP.NET AJAX On PHP Demo<!--</span-->title>
script type="text/javascript" src="MicrosoftAjaxLibrary/MicrosoftAjax.js"><!--</span-->script>
"text/javascript" src="EmployeeService.php/js"><!--</span-->script> <!--</span-->head>
程序的UI部分很简单,按钮用来触发异步调用, 用来显示调用结果:
body>
input id="btnGetEmployee" type="button"
value="Get an Employee" onclick="return btnGetEmployee_onclick()" /> div id="resultDiv">
<!--</span-->div>
<!--</span-->body>
在该按钮的click事件处理函数中,调用该Service,语法也和ASP.NET AJAX中一致,非常方便: function btnGetEmployee_onclick() { EmployeeService.GetEmployee(onSucceeded); } 在回调函数中,把得到的Employee对象显示到resultDiv中: function onSucceeded(result) { var sb = new Sys.StringBuilder("Server returns an Employee object: sb.append("Id: " + result.Id + " sb.append("Name: " + result.Name + " sb.append("Email: " + result.Email + " sb.append("Salary: " + result.Salary + " $get("resultDiv").innerHTML = sb.toString();
} 大功告成! 示例程序界面 第一次访问 点击Get an Employee按钮后 示例程序代码下载 在这里呢:ASPNETAJAXOnPHP.zip 好一阵子没用PHP了,生疏了不少。不过照猫画虎还是做出来了,这个项目我觉得非常有前途,各位朋友不妨参与一下。这一段比较忙,没写什么技术文章,这一篇也是草草而为,请朋友们见谅。 Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1569920 |
2022-08-30
2022-08-15
2022-08-17
2022-11-06
2022-08-17
请发表评论