您的位置:

php客户端使用qop(php客户端ip)

本文目录一览:

如何配置使用CAS的PHP客户端

整个配置过程我划分成四步骤:

1、准备CAS的PHP库和相关库文件

1)到CAS的网站下载文件phpcas-0.60-rc7.zip

2) 由于其用到了PEAR的DB库,需要到PEAR网站去下载。

下载文件PEAR-1.7.1.tgz和DB-1.7.13.tgz 也可在google上搜索。

当然不一定是我说的版本,但我给的是我试验成功的版本。

3) 用于使用到了SSL所以需要下载openssl。当然我是在windows环境下试验的,下载的是

其的windows版本。

4)安装openssl。

2、配置PHP环境

1)将phpcas-0.60-rc7.zip解压,我们选在了PHP环境的include目录。在其下建立cas将文件解压进去。

2)同理将PEAR-1.7.1.tgz和DB-1.7.13.tgz解压,也分别建立pear和db两个目录。

3)修改php环境的ini文件,一般是php.ini文件。将我们前两步骤建立的目录加入到include_path中。根据安装环境修改对应的unix或windows项。

4)由于phpcas用到了CURL(用于连接ssl)和DOMXML(用于处理CAS服务器返回的消息)两个组件,因此需要保证php解释环境需要有这两个扩展。需要做的就是修改ini文件将extentions节下的屏蔽符号去掉,然后就是检查PHP环境的extentions目录下是否有对应的.dll或.o文件。一般标准安装都会有。

3、测试CAS的php客户端

1)前面做完后,应该比较激动了,很想看看php程序到底能不能访问CAS呢。

2)在phpcas-0.60-rc7.zip中的docs/examples中有几个测试程序。当然我们先前解压的目录下也有。

3)我们只是看一下通了没有,因此拷贝example_simple.php文件到apache的htdocs下。具体根据你的web服务器配置。总之目的就是能通过浏览器访问example_simple.php。在用之前需要修改

example_simple.php文件,主要是要修改里面关于CAS服务器配置信息,修改代码中的phpCAS::client(...)这一句。整个方法意义如下:

phpCAS::client(CAS_VERSION_2_0,'服务地址',端口号,'cas的访问地址');

将自己的服务地址和端口号和cas的相对服务地址的url填如就可以了,例如:phpCAS::client(CAS_VERSION_2_0,'localhost',8443,'cas');表示可以通过localhost:8443/cas访问到CAS服务。

4)在浏览器里试验一下吧,没有意外的话会看到CAS的登录界面。这就表示配通了。

4、根据项目需要修改对应的PHP代码,加入对CAS的调用,将用户登录交给CAS我们只需处理对应的用户,在PHP程序中的权限问题了。对于旧有就有的PHP代码只需要用访问CAS服务换掉验证用户身份部分就可以了。

调用CAS关键性代码:

include_once('CAS.php');

//可以不用,用于调试,可以通过服务端的cas.log看到验证过程。

phpCAS::setDebug();

// 初始化phpcas

p hpCAS::client(CAS_VERSION_2_0,'服务地址',端口号,'cas的访问地址');

例如:phpCAS::client(CAS_VERSION_2_0,'localhost',8443,'cas');

// 不使用SSL服务校验

phpCAS::setNoCasServerValidation();

// 访问CAS的验证

phpCAS::forceAuthentication();

这时候就验证完毕了

获得用户名可以通过phpCAS::getUser()

//登出

if (isset($_REQUEST['logout'])) {

phpCAS::logout();

}

当然CAS除了它默认的登录界面和校验逻辑,还是允许自行定义的。

如何自定义登录界面,后续在谈。

转载仅供参考,版权属于原作者。祝你愉快,满意请采纳哦

普及一下知识php如何做桌面客户端

WinBinder 是一种开源的 PHP 动态扩展(.dll) ,也算是脚本编程语言,为php 在window 下的开发提供用户界面UI ,它负责调用window 的API 接口。其运行 PHP 程序员轻松地使用 PHP 创建 Windows 应用程序。当然,这个只能在 Windows 下运行。本身是一个软件,php 程序员可以通过这个软件开发界面。官方网站说得很不错,无须编译php. 只要保存文件扩展为.phpw ,然后用 php.exe 打开就可以运行。具体开发感受如何,要试验一下才知道。初步感觉不会比php-gtk 差。

可以在此处下载到 WinBinder 的包 , 下那个 .zip 包,一般不需要用 .exe 的。下完之后解压缩,将 winbinder_xxx\PHP\PHP4\ext 目录下的(如果用的是 PHP5 则复制 PHP5 目录下的) php_winbinder.dll 复制到 PHP 扩展目录下,一般在 C:\php\extensions ,然后修改 php.ini 文件,加上:

extension=php_winbinder.dll

然后到打开命令行(cmd ),进入到 winbinder_xxx\Code\Samples 目录下,运行:

C:phpcliphp.exe manytests_main.phpw

这样就可以看到 Windows 窗口了,测试用的例子很多,可以都试试。我试了一下中文,还是支持得不错的,想想也是,WinBinder 是通过扩展的方式,加载到 PHP 中,其调用的都是 Windows 的 APIs 。实际上可以将 WinBinder 分为两层,一层是底层,叫 API 层,作为 PHP 扩展直接连接 Windows 的 API ,并为第二层(高层,叫 PHP 层)提供统一的调用接口。

你以为php只能做桌面应用?错移动应用也照样拿下。PHP for Android让你用你最熟悉的php开发android软件。

总之,php的插件工具虽然可以实现开发桌面客户端,但是并不建议,因为不方便而且开发效率极低。

如何使用PHP操作cookie

PHP setcookie() 函数向客户端发送一个 HTTP cookie。cookie 是由服务器发送到浏览器的变量。cookie 通常是服务器嵌入到用户计算机中的小文本文件。每当计算机通过浏览器请求一个页面,就会发送这个 cookie。cookie 的名称指定为相同名称的变量。例如,如果被发送的 cookie 名为 "name",会自动创建名为 $user 的变量,包含 cookie 的值。

必须在任何其他输出发送前对 cookie 进行赋值。如果成功,则该函数返回 true,否则返回 false。

setcookie(name, value, expire, path, domain, secure)

name 必需。规定 cookie 的名称。

value 必需。规定 cookie 的值。

expire 可选。规定 cookie 的有效期。

path 可选。规定 cookie 的服务器路径。

domain 可选。规定 cookie 的域名。

secure 可选。规定是否通过安全的 HTTPS 连接来传输 cookie。

可以通过 $HTTP_COOKIE_VARS["user"] 或 $_COOKIE["user"] 来访问名为 "user" 的 cookie 的值。在发送 cookie 时,cookie 的值会自动进行 URL 编码。接收时会进行 URL 解码。如果不需要这样,可以使用 setrawcookie() 代替。

程序1:

设置并发送 cookie:

1 ?php

2 $value = "my cookie value";

3 // 发送一个简单的 cookie

4 setcookie("TestCookie",$value);

5 ?

01 html

02 body

03 ...

04 ...

05 ?php

06 $value = "my cookie value";

07 // 发送一个 24 小时候过期的 cookie

08 setcookie("TestCookie",$value, time()+3600*24);

09 ?

10 html

11 body

程序2:

检索 cookie 值的不同方法:

01 html

02 body

03 ?php

04 // 输出个别的 cookie

05 echo $_COOKIE["TestCookie"];

06 echo "br /";

07 echo $HTTP_COOKIE_VARS["TestCookie"];

08 echo "br /";

09 // 输出所有 cookie

10 print_r($_COOKIE);

11 ?

12 /body

13 /html

程序输出:

1 my cookie value

2 my cookie value

3 Array ([TestCookie] = my cookie value)

程序3:

通过把失效日期设置为过去的日期/时间,删除一个 cookie:

1 ?php

2 // 把失效日期设置为一小时前

3 setcookie ("TestCookie", "", time() - 3600);

4 ?

程序4:

创建一个数组 cookie:

01 ?php

02 setcookie("cookie[three]","cookiethree");

03 setcookie("cookie[two]","cookietwo");

04 setcookie("cookie[one]","cookieone");

05 // 输出 cookie (在重载页面后)

06 if (isset($_COOKIE["cookie"]))

07 {

08 foreach ($_COOKIE["cookie"] as $name = $value)

09 {

10 echo "$name : $value br /";

11 }

12 }

13 ?

程序输出:

1 three : cookiethree

2 two : cookietwo

3 one : cookieone

程序5:

view sourceprint?

1 /**

2 * 01.cookie设置

3 * */

4 function ssetcookie($var, $value, $life=0) {

5 global $_SGLOBAL, $_SC, $_SERVER;

6 setcookie($_SC['cookiepre'].$var, $value, $life?($_SGLOBAL['timestamp']+$life):0, $_SC['cookiepath'],$_SC['cookiedomain'], $_SERVER['SERVER_PORT']==443?1:0);

7 }

PHP中如何使用Cookie

比如设置一个名为 MyCookier的Cookie,PHP会自动从WEB服务器接收的HTTP头里把它分析出来,并形成一个与普通变量一样的变量,名为$ myCookie,这个变量的值就是Cookie的值。数组同样适用。另外一个办法是引用PHP的全局变量$HTTP_COOKIE_VARS数组。 分别举例如下:(假设这些都在以前的页面里设置过了,并且仍然有效) echo $MyCookie; echo $CookieArray[0]; echo $_COOKIE["MyCookie"]; echo $HTTP_COOKIE_VARS["MyCookie"]; 要删除一个已经存在的Cookie,有两个办法: 1、SetCookie(“Cookie”, “”); 2、SetCookie(“Cookie”, “value” , time()-1 / time() ); 使用Cookie的限制 1、必须在HTML文件的内容输出之前设置; 2、不同的浏览器对Cookie的处理不一致,且有时会出现错误的结果。 3、限制是在客户端的。

想问下你有关php与客户端如何交互的问题

客户端指的是桌面软件或者手机软件 交互方式为

1、http request http请求形式 遵循http协议 模式为 一问一答,请求一次,php应答一次,特点是,不请求不应答,无请求无法主动应答,有请求必应答。

2、SOCKET,socket是一个双通道无阻塞的持久链接协议,多用于需要实时数据通信的软件,比如网络游戏,股票系统等数据通信频繁。

因为每个http请求都包含冗长的请求header头,所以如果数据交互频繁,又使用http协议的话,会导致发送很多无意义的header,所以使用socket,socket只发送一次头,即可保持长久链接。

php对socket支持不理想,如果使用socket建议使用java或者c