您的位置:

php5应用实例(php技术分享ppt)

本文目录一览:

php5中魔术方法函数有哪几个,请举例说明各自的用法

__construct() :实例化对象时被调用;

__destuct():当删除一个对象或者对象操作终止是被执行;

__call():调用对象不存在方法时被调用;

__get():调用对象不存在的属性时被调用;

__set():设置对象不存在的属性时被调用;_

_toString():打印一个对象时被调用,比如echo $obj,print($obj);

__clone():克隆对象时被调用,比如$t = new Test();$tt = clone $t;

__sleep():serialize之前被调用,若对象比较大,想做一些删除在序列化,可以考虑使用该方法;

__wakeup():unserialize之前被调用,做些对象的初始化;

__isset():检测对象是否存在属性的时候被调用,如 isset($c-name);

__unset():unset一个对象属性时被调用,如:unset($c-name);

__set_state():调用var_export时被调用,用__set_state的返回值作为 var_export的返回值;,

__autoload():实例化一个对象时,如果对应的类不存在,在该方法被调用。

希望你能采纳,谢谢。

谁给个php操作mysql类并有详细使用说明或例子

下面这个,是针对php5的一个简单数据库封装类,适合学习,其他的如删除、更新等操作,你可以自己加上:

?php

class Mysql{ //首先定义一个类,首写字母大写

public $host;//服务器名,访问修饰符PUBLIC证明$host是一个公共的属情在类的内部外部都可访问,可以被继承

public $user;//用户名,是公共的属性

private $pass;//密码,问修饰符private证明$pass是私有的.只能在类的内部使用且不能被继承.

public $dbname;//数据库名,也是公共的属性.

//__construct声名这是一个造函数,定义一些初始的信息.有三个参数

public function __construct($host,$user,$pass,$dbname){

$this-host = $host;

$this-user = $user;

$this-pass = $pass;

$this-dbname = $dbname;

$link = @mysql_connect($this-host,$this-user,$this-pass)

or die("error");

@mysql_select_db($this-dbname,$link)

or die("error2");

}

//定义数据库的查寻和显示函数

function myQuery($sql){

$result = mysql_query($sql);

if(!$result){

echo "error3";

exit;

}

$num = mysql_num_rows($result);

if($num){

echo "NO".$num;

}

while($row = mysql_fetch_assoc($result)){

echo 'trtd bgcolor="#fffddd"pre'.htmlspecialchars(stripslashes($row['body']))."pre/td/tr";

}

}

}

$rutt = new Mysql('localhost','root','ssss','calvin');//实例化一个类...记住这里的参数是和构造函数的参数一样的...

$rutt-myQuery('select * from calvin_body');//运行数据库查寻并显示的函数..

?

thinkphp5框架扩展redis类方法示例

本文实例讲述了thinkphp5框架扩展redis类方法。分享给大家供大家参考,具体如下:

笔者在开发时发现,thinkphp5的自带redis类方法,只有简单的读取缓存、写入缓存的基本方法,远不能满足我们业务的需求。redis本身支持五种数据类型,string(字符串)、hash(哈希)、list(列表)、set(集合)、zset(有序集合)。redis的东西就不必再介绍了,接下来还是让我一起扩展thinkphp5的redis方法吧!

首先我们先找到缓存驱动类里的,handler()方法,这个方法是返回Redis类的实例化对象的。

这就是实例化对象,包括了options配置项、handler资源句柄、tag标签。实际上这里的handler是new

Redis()的对象实例。只要在外部拿到handler资源句柄,则可以对redis的操作进行扩展了。

在cache类里新增一个getHandler方法。

然后我们就可以在控制器调用了

打印的就是这个redis对象了

这里需要注意的是:

一个是调thinkphp5的redis的方法,就是这样用。

一个是如果你要调用原生的redis方法

基本的用法都讲完了。

接下来就愉快的开始扩展redis方法吧。

先找到这个类

这个类里并没有list的相关操作方法,那我们就来扩展list的相关方法。

这里的话,我就举一个例子了。

在控制器里去调用

这样就写入成功了。

更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend

FrameWork框架入门教程》及《PHP模板技术总结》。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

您可能感兴趣的文章:针对thinkPHP5框架存储过程bug重写的存储过程扩展类完整实例ThinkPHP行为扩展Behavior应用实例详解ThinkPHP应用模式扩展详解ThinkPHP框架设计及扩展详解ThinkPHP的Widget扩展实例老生常谈ThinkPHP中的行为扩展和插件(推荐)TP5(thinkPHP5)框架mongodb扩展安装及特殊操作示例thinkPHP下的widget扩展用法实例分析thinkPHP3.2.2框架行为扩展及demo示例ThinkPHP5.0框架验证码功能实现方法【基于第三方扩展包】thinkphp5框架实现的自定义扩展类操作示例

PHP调用.NET的WebService 简单实例

创建一个C#的web

service,这个就不多说了,我用vs2008的wizard创建了一个最简单的,让它运行在:

其中有个web

method像这样的:

复制代码

代码如下:

[WebMethod]

public

string

HelloWorld()

{

return

"Hello

World";

}

ok,一切就绪。在某php文件中如下写法:

php5本身就支持SOAP调用Web

Service:

?php

//get

localization

strings

from

C#

webservice

$client

=

new

SoapClient('');

echo

"Call

web

service

method

from

C#

WebService:\n";

$result

=

$client-GetLocalizationResource();

if(!is_soap_fault($result))

{

echo

"return:\n",

$result-GetLocalizationResourceResult;

}

else

{

echo

"soap

call

fault";

}

?

这样就OK了,会继续介绍SOAP

以上所述就是本文的全部内容了,希望大家能够喜欢。

请您花一点时间将文章分享给您的朋友或者留下评论。我们将会由衷感谢您的支持!

PHP利用pdo_odbc实现连接数据库示例【基于ThinkPHP5.1搭建的项目】

本文实例讲述了PHP利用pdo_odbc实现连接数据库。分享给大家供大家参考,具体如下:

目的:从sql

server数据库里面把某个视图文件调用出来,以键值对的方式显示在页面上。

利用pdo

odbc来实现PHP连接数据库:

在PHP配置文件里面开启pdo_odbc.dll服务。重启Apache服务器。

在ThinkPHP5.1的项目中在模块里添加config添加规定好的样式数据库:

代码如下:

?php

return

[

//

数据库类型

'type'

=

'sqlsrv',

//

服务器地址

'hostname'

=

'localhost',

//

数据库名

'database'

=

'mysql',

//

用户名

'username'

=

'sa',

//

密码

'password'

=

'123456',

//

端口

'hostport'

=

'',

//

连接dsn

'dsn'

=

'odbc:Driver={SQL

Server};Server=localhost;Database=mysql',

//

数据库连接参数

'params'

=

[],

//

数据库编码默认采用utf8

'charset'

=

'utf8',

//

数据库表前缀

'prefix'

=

'',

//

数据库调试模式

'debug'

=

true,

//

数据库部署方式:0

集中式(单一服务器),1

分布式(主从服务器)

'deploy'

=

0,

//

数据库读写是否分离

主从式有效

'rw_separate'

=

false,

//

读写分离后

主服务器数量

'master_num'

=

1,

//

指定从服务器序号

'slave_no'

=

'',

//

是否严格检查字段是否存在

'fields_strict'

=

true,

//

数据集返回类型

'resultset_type'

=

'array',

//

自动写入时间戳字段

'auto_timestamp'

=

false,

//

时间字段取出后的默认时间格式

'datetime_format'

=

'Y-m-d

H:i:s',

//

是否需要进行SQL性能分析

'sql_explain'

=

false,

//

Builder类

'builder'

=

'',

//

Query类

'query'

=

'\\think\\db\\Query',

//

是否需要断线重连

'break_reconnect'

=

false,

//

断线标识字符串

'break_match_str'

=

[],

];

?

在控制器controller里面建一个控制文件Test.php

代码如下:

?php

namespace

app\index\controller;

use

think\Db;

use

think\Controller;

class

Test

extends

Controller

{

public

function

zz(){

$data=Db::view('View_2')-select();

echo

json_encode($data);

}

}

?

最后调用入口文件即可访问。

我的效果:

[{"111":"123","1112":"LLP","232":"1","ROW_NUMBER":"1"},{"111":"123","1112":"BB","232":"2","ROW_NUMBER":"2"}]

更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend

FrameWork框架入门教程》及《PHP模板技术总结》。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

您可能感兴趣的文章:ThinkPHP实现多数据库连接的解决方法tp5(thinkPHP5)框架实现多数据库查询的方法ThinkPHP3.1新特性之多数据库操作更加完善tp5(thinkPHP5)框架连接数据库的方法示例PHP7使用ODBC连接SQL

Server2008

R2数据库示例【基于thinkPHP5.1框架】thinkPHP5实现的查询数据库并返回json数据实例tp5(thinkPHP5)操作mongoDB数据库的方法tp5(thinkPHP5)框架数据库Db增删改查常见操作总结thinkPHP5框架实现多数据库连接,跨数据连接查询操作示例