服务端:phprpc服务端

<?php
/* phprpc 服务端演示
* time:2014-06-23
*/
require_once 'phprpc_server.php';//引入服务端
class test {//生成一个类
public function get($data = 'Java'){
return 'Hello '.$data;
}
}
$handle = new phprpc_server();//实例化服务端
$handle->add('get','test');//添加test类中的get方法
$handle->start();//握手开始
?>

服务端:soap服务端

<?php
/* soap 服务端演示
* time:2014-06-23
*/
class test {//生成一个类
public function get($data = 'Java'){
return 'Hello '.$data;
}
}
$config = array(
'location'=>'http://127.0.0.1/soap_server.php',
'uri'=>'soap_server.php'
);
$handle = new SoapServer(null,$config);//实例化服务端
$handle->setClass('test');//添加整个test类
$handle->handle();//握手开始
?>

客户端:phprpc客户端

<?php
/* phprpc 客户端演示
* time:2014-06-23
*/
require_once 'phprpc_client.php';//引入客户端
$handle = new PHPRPC_CLIENT('http://127.0.0.1/server.php');//实例化客户端并传入服务端url
echo $handle->get('Php!!');//调用get函数
?>

客户端:soap客户端

<?php
/* soap 客户端演示
* time:2014-06-23
*/
$config = array(
'location'=>'http://127.0.0.1/soap_server.php',
'uri'=>'soap_server.php'
);
$handle = new SoapClient(null,$config);
ECHO $handle->get('Java!!');
?>

个人愚见:说白了,两者都是通过序列化数据后进行传输,且表现形势与操作代码几乎一致,其他貌似还有很多这种实现webserver功能的方法:;事实作为我来说,我只需要了解其中的一些原理,会用一种即可。

利用PHPRPC以及SOAP分别实现PHP的Webserver功能的更多相关文章

  1. C#设计模式总结 C#设计模式(22)——访问者模式(Vistor Pattern) C#设计模式总结 .NET Core launch.json 简介 利用Bootstrap Paginator插件和knockout.js完成分页功能 图片在线裁剪和图片上传总结 循序渐进学.Net Core Web Api开发系列【2】:利用Swagger调试WebApi

    C#设计模式总结 一. 设计原则 使用设计模式的根本原因是适应变化,提高代码复用率,使软件更具有可维护性和可扩展性.并且,在进行设计的时候,也需要遵循以下几个原则:单一职责原则.开放封闭原则.里氏代替 ...

  2. 利用onekeyup即可实现验证码的点击刷新功能

    显示验证码 首先在Home/Controller下创建一个公共控制器PublicController 1 <php2 namespace Home\Controller;3 4 use Thin ...

  3. 利用 html的锚点(元素a)功能实现ajax单页面应用的浏览器后退前进功能

    一.问题 随着AJax技术的普及,单页面web程序的应用越来越广泛. 所谓单页面应用程序,简单的说,就是应用只有一个主网页,第一次加载后,后续页面只会利用js和ajax到服务器获取数据进行页面的局部刷 ...

  4. 利用java的net包来实在数据采集的功能

    最近有好多朋友问我,数据抓取用java怎么做,就是每天把新浪的内地新闻频道的新闻前20条,抓到自己的网站或系统里,今天我统一在这里提供一个简单的例子,由于在这个过程中还需要解析html字符串,所以,我 ...

  5. Salesforce学习之路-developer篇(二)利用Jenkins和Bitbucket实现Salesforce的CI/CD功能

    上文提到,基于CRM的二次开发是必不可少的,但是在实际项目中CI/CD是不可忽略的一个重要部分,与传统的Java,Python项目不同,如果对Salesforce进行持续集成和持续部署呢? 结合找到的 ...

  6. 利用bootstrap3的分页样式和jq实现分页功能

    1源码 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8 ...

  7. 生成EXCEL文件是经常需要用到的功能,我们利用一些开源库可以很容易实现这个功能。

    方法一:利用excellibrary,http://code.google.com/p/excellibrary/ excellibrary是国人写的开源组件,很容易使用,可惜貌似还不支持.xlsx( ...

  8. Salesforce学习之路(四)利用Jenkins和Git实现Salesforce的CI/CD功能

    上文提到,基于CRM的二次开发是必不可少的,但是在实际项目中CI/CD是不可忽略的一个重要部分,与传统的Java,Python项目不同,如果对Salesforce进行持续集成和持续部署呢? 结合找到的 ...

  9. 工作任务:模拟淘宝登录和购物车功能:使用cookie记录登录名,下次登录时能够记得上次的登录名,使用cookie模拟购物车功能,使用session记住登录信息并验证是否登录,防止利用url打开网站,并实现退出登录功能

    登入界面<% Cookie[] cks =request.getCookies(); String str=null; for(Cookie ck:cks) { if(ck.getName(). ...

随机推荐

  1. jar包冲突解决方法

    import java.io.File;import java.io.IOException;import java.util.ArrayList;import java.util.Enumerati ...

  2. CSS skills: 1) Navigate item's animation

    <style> .nav { border-right:1px solid #268eb7; } .nav li{overflow:hidden;height:55px;border-le ...

  3. python(5)-os模块

    os.getcwd() 获取当前工作目录 os.chdir('dirname') 改变当前脚本的工作目录 os.curdir 返回当前目录名,即"." os.pardir 返回当前 ...

  4. [改善Java代码]静态变量一定要先声明后赋值

    建议32: 静态变量一定要先声明后赋值 这标题看着让人很纳闷,什么叫做变量一定要先声明后赋值?Java中的变量不都是先声明后使用的吗?难道还能先使用后声明?能不能暂且不说,我们先来看一个例子,代码如下 ...

  5. 关于Merge的整理--Merge的使用方法和注意事项的Demo

    上一篇文章中讲到了Merge的用法和注意事项,所以本人就想,做了一个Demo进行验证下. 一.Merge的使用 (1)activity中的onCreate方法中的setContentView(R.la ...

  6. sublime安装 less环境

    工具的选择: mac-codekit simpless->跨平台 winless-windows  less.js下载:http://pan.baidu.com/s/1o60yTZ0   安装L ...

  7. Linux 命令 - w: 显示登录的用户及其当前执行的任务

    命令格式 w - [husfV] [user] 命令参数 -h 不打印头部信息 -u 当列出当前进程和 CPU 时间时忽略用户名,这主要是用于执行su命令后的情况. -s 使用简短的格式化,不打印 L ...

  8. Nginx - Additional Modules, About Your Visitors

    The following set of modules provides extra functionality that will help you find out more informati ...

  9. MacBook Pro 的照相机在哪?

    用于拍照 用于录制视频

  10. Smarty模板引擎技术二

    Smarty模板引擎技术 内建函数 include_php内建函数 作用:载入一个php文件,将载入的文件的内容赋值给一个变量   注意:该内建函数只能在2.0中使用,如果使用的话,必须得实例化Sma ...