php 面向对象详解_面向对象的概念

 更新时间:2016年11月25日 15:14  点击:2011
我们主要讲一下php面向对象的一些用法与实例教程例子等哦,开始我们只讲一下面向对象的概念与php的简单例子教程哦。

 

第七章(1)面向对象详解_面向对象的概念
什么是类:组成一个对象的过程称为类.
什么是对象:类组成的东西叫对象.
类与对象之间的关系:对象由类组合而来,先有类才有对象.
什么是成员属性:定义成员静态描述. 如:人的姓名,性别,身高,体重......
什么是成员方法:定义成员动态描述.能实现一些什么功能 如:人能吃饭,走路,开车,说话......
如何去抽象一个类:
class 类名 如:人类
{
 成员属性:姓名,身高,体重...
 成员方法:走路,说话,吃饭,开车...
}
例题:
class关键字 Person类名首字母要大写
{
 成员属性
 var关键字 $name;姓名
 var $age;年龄
 var $sex;性别...
 成员方法
 function关键字 say()
  {echo "我在说话";}
 function run()
  {echo "我在走路";}
 function eat()
  {echo "我在吃饭";...}
}
产生实例化对象:
$P1=new关键字 Person类名;
$P2=new Person;

第七章(3)面向对象详解_对象实例化及使用
如何实例化对象
实例说明:
class Ren
{
 var $xingming;
 var $nianling;
 var $xingbie;
 var $shouji;
 function shuohua()
 {echo "我在说话<br>";}
 function zoulu()
 {echo "我在走路<br>";}
 function chifan()
 {echo "我在吃饭<br>";}
}
class shouji
{
 var $pinpai;
 var $yanse;
 var $chiceng;
 function dadianhua()
 {}
 function jiedianhua()
 {}
 function faxinxi($ren,$xinxi)
 {$ren->shouji->shouxinxi($xinxi);}
 function shouxinxi($xinxi)
 {echo "接信息".$xinxi."<br>";}
}
//实例化.人:
$r1=new Ren();    $r2=new Ren();    $r3=new Ren();
//实例化.人的姓名:
$r1->xingming="张三";    $r2->xingming="李四";    $r3->xingming="王五";
//实例化.手机:
$s1=new shouji();    $s2=new shouji();    $s3=new shouji();
//实例化.人用手机:
$r1->shouji=$s1;    $r2->shouji=$s2;    $r3->shouji=$s3;
//实例化.人发信息:
$r1->shouji->faxinxi($r2,"hello");
输出:接信息 hello

来看看php 面向对象详解_构造方法与析构方法吧,我们经常有关于构造方法与析构函数的实例教程喽。

第七章(4)面向对象详解_构造方法与析构方法
特殊的引用$this的使用
实例说明:
class Ren
{
 var $xingming;
 var $nianling;
 var $xingbie;
 function shuohua()
 {echo "我的姓名是:".$this->xingming.",我的年龄是:".$this->nianling.",我的性别是:".$this->xingbie."<br>";}
 function zoulu()
 {echo "我在走路<br>";}
 function chifan()
 {echo "我在吃饭<br>";}
}
$r1=new Ren();    $r2=new Ren();    $r3=new Ren();
$r1->xingming="张三";    $r2->xingming="李四";    $r3->xingming="王五";
$r1->nianling=90;    $r2->nianling=23;    $r3->nianling=41;
$r1->xingbie="男";    $r2->xingbie="女";    $r3->xingbie="男";
//人1.2.3各自说出自己的姓名.年龄.性别:
$r1->shuohua();    $r2->shuohua();    $r3->shuohua();
输出结果:
我的姓名是:张三,我的年龄是:90,我的性别是:男
我的姓名是:李四,我的年龄是:23,我的性别是:女
我的姓名是:王五,我的年龄是:41,我的性别是:男
$this的作用:代表对象的一个属性,相当于第一人称"我"的概念.
构造方法的特点:名称与类相同,对象一产生的时候自动调用,去初始化成员属性.
实例说明:(此实例是在php4里面的声明方法)
class Ren
{
 var $xingming;
 var $nianling;
 var $xingbie;
 function Ren($xingming,$nianling,$xingbie)
 {
  $this->xingming=$xingming;
  $this->nianling=$nianling;
  $this->xingbie=$xingbie;
 }
 function shuohua()
 {echo "我的姓名是:".$this->xingming.",我的年龄是:".$this->nianling.",我的性别是:".$this->xingbie."<br>";}
 function zoulu()
 {echo "我在走路<br>";}
 function chifan()
 {echo "我在吃饭<br>";}
}
$r1=new Ren("张三",90,"男");
$r2=new Ren("李四",23,"女");
$r3=new Ren("王五",41,"男");
$r1->shuohua();    $r2->shuohua();    $r3->shuohua();
此例如上例输出结果完全相同.
在php5版本中的构造方法是function__construct(),不用写类名,作用相同.
析构方法__destruct()在程序结束前释放要释放的东西的方法.
实例说明:
class Ren
{
 var $xingming;
 var $nianling;
 var $xingbie;
 function __construct($xingming,$nianling,$xingbie)
 {
  $this->xingming=$xingming;
  $this->nianling=$nianling;
  $this->xingbie=$xingbie;
 }
 function shuohua()
 {echo "我的姓名是:".$this->xingming.",我的年龄是:".$this->nianling.",我的性别是:".$this->xingbie."<br>";}
 function zoulu()
 {echo "我在走路<br>";}
 function chifan()
 {echo "我在吃饭<br>";}
 function __destruct()
 {echo $this->xingming."再见<br>";}
}
$r1=new Ren("张三",90,"男");
$r2=new Ren("李四",23,"女");
$r3=new Ren("王五",41,"男");
$r1->shuohua();    $r2->shuohua();    $r3->shuohua();
输出结果:
我的姓名是:张三,我的年龄是:90,我的性别是:男
我的姓名是:李四,我的年龄是:23,我的性别是:女
我的姓名是:王五,我的年龄是:41,我的性别是:男
王五再见    李四再见    张三再见

下面是一些常用的php数组函数,我们会测试各位php 数组 array的用法哦。

下面是一些常用的php数组函数,我们会测试各位php 数组 array的用法哦

第六章(3)数组的相关处理函数
current(数组名称) 输出数组中一个字符串的值,从第一个起.
key(数组名称) 输出数组中一个下标,从第一个起.
next(数组名称) 控制数组指针向后移动.
prev(数组名称) 控制数组指针向前移动.
end(数组名称) 控制数组指针移向最后一位.
reset(数组名称) 控制数组指针移向第一位.
array_change_key_case(1.目标数组 2.CASE_UPPER大写 或 CASE_LOWER小写) 将数组下标全部改为大写或小写.
array_chunk(1.目标数组 2.分解个数 3.输出布尔型的真或假) 将一个数组分解成多个小数组.
array_count_values(数组名称) 用来计算数组中各值出现的次数.
array_fill(1.下标从几开始 2.输出多少个 3.他们的值是什么) 用来做初始化数组.
array_filter(1.目标数组 2.使用者定义的函数) 过滤函数,自定义以什么标准为真,以什么标准为假,此函数可以自动过滤掉假的字符串.
array_flip(目标数组) 将下标变值,值变下标.
array_sum(目标数组) 计算目标数组中所有元素值的总和.
array_unique(目标数组) 去除目标数组中重复的值.
array_values(目标数组) 将目标数组中所有下标都去掉,重新从"0"开始计算此函数中值的下标.
array_keys(目标数组) 输出目标数组中的所有下标.
in_array(1.要找的东西 2.目标数组 3.是否严格按照数据类型查找,是就输true) 查找目标数组中有无查找的数据.
array_search(1.要找的东西 2.目标数组 3.是否严格查找) 查找目标数组中有无查找的数据,有则输出此数据的下标.
array_key_exists(1.要找的下标 2.目标数组) 查找目标数组中有无查找的下标,有则输出true,无则输出false.
extract(目标数组) 将数组转换成变量.
compact(要转换成数组的变量下标) 将多个变量转换成数组.
数组与栈 (先进后出)
array_push(1.目标数组 2.压入栈的值) 压入栈函数.
array_pop(目标数组) 弹出栈函数.
数组与队 (先进先出)
array_unshift(1.目标数组 2.压入对的值) 压入对函数.
array_shift(1目标数组) 弹出对函数.
忽略键名的数组排序:
sort(目标数组) 从小到大的排序.
rsort(目标数组) 从大到小的排序.
保留键名的数组排序:
asort(目标数组) 保留原下标,值从小到大的排序.
arsort(目标数组) 保留原下标,值从大到小的排序.
自然排序法排序:
natsort(目标数组) 保留原下标,值从大到小的排序,不区分大小写.
natcasesort(目标数组) 保留原下标,值从小到大的排序,不区分大小写.
array_merge(1.目标数组 2.目标数组......) 合并多个数组.
array_diff(1.被比数组 2.比数组 3.比数组......) 求数组的差积.
array_intersect(1.被比数组 2.比数组 3.比数组......) 求数组的交积.
  

php字符串声明方法以及使用方法,与简单的说明


     第五章(1)字符串的声明方法
字符串的定义:
双引号"" 1.可以在双引号里面执行变量 2.可以使用转义字符
单引号'' 1.不能在单引号里面执行变量 2.只能使用部分转义字符
反引号`` 1.在反引号里使用的是服务器的命令
定界符<<< 1.和双引号一样,但可以在里面使用任何多的双引号
     第五章(2)字符串处理函数的应用
写函数需要知道的几方面信息:
1.函数的功能介绍
2.需要几个参数,每个参数的类型,那些参数是必须的,那些参数是可选的
3.函数的返回值,返回值的类型
echo 可以输出任意类型的参数,也可以输出多个.
print 只能输出一个参数,但有返回值1 0.
die 输出并退出程序.
printf 可以按照任意格式输出.
sprintf 先保存,再输出.
var_dump 检测字符串的类型和调试程序.
ltrim 去掉字符串左空格.
rtrim 去掉字符串右空格.
trim 去掉字符串左右空格.
strrev 将字符串前后颠倒.
strtolower 将字符串转换成小写的函数.
stroupper 将字符串转换成大写的函数.
strlen 求字符串长度.
ucfirst 将字符串中第一个字符改成大写.
explode(1.以什么分割 2.要分割的东西 3.要分割成几部分就填几) 使用一个字符串分割另一个字符串.
implode(1.以什么联合 2.要联合的东西) 用一组较小的字符串创建成一个大字符串. 别名 join.
substr(1.要取的东西 2.要以什么取就填什么)返回字符串中某字符串开始至结束的字符串. 别名 atrchr.
strpos(1.在哪个里面找 2.要找的东西 3.从第几个后面开始找就填几) 寻找字符串中某字符最先出现的位置.
strrpos(1.在哪个里面找 2.要找的东西) 寻找字符串中某字符最后出现的位置.
strrchr(1.要取的东西 2.要以什么取就填什么) 返回字符串中某字符最后出现至结束的字符串.
str_pad(1.要填充的字符串 2.填充到多少位 3.填充什么 4.向哪边填充 STR_PAD_LEET左边 STR_PAD_RIGNT右边 STR_PAD_BOTH两边) 字符串的填补函数.
字符串的比较:
按字节进行比较
strcmp 区分大小写.  strcasecmp 不区分大小写.
strnatcmp 按自然排序法进行字符串比较.
字符串的模糊比较
soundex 按发音码比较.
similar_twxt 按匹配的个数进行比较.
str_replace(1.要替换的东西 2.替换成的东西 3.是哪个里面的东西要替换) 替换.
strtr(1.哪个里面的东西 2.要翻译的东西 3.翻译成的东西) 字符串的翻译函数.
在PHP里面用函数处理HTML的函数:
stripslashes 去掉反斜线字符.
addslashes 使用反斜线引用字符串.
htmlentities 使html标签无作用,直接输出. 别名 htmlspecialchars.
strip_tags 删除和过滤html标签.
     第六章(1)PHP数组的声明与应用
什么是数组:数组是一个可以储存一组或一系列数组的变量.
数组的特点:1.可以储存任何类型的数据.
    2.长度可以变长.
数组的声明:1.$数组变量名[索引值] = 资料内容.
    2.$数组变量名 = array(资料美容,资料内容......).
多维数组的声明:array(array(array(array(),array())),array()).
PHP数组分两类:
1.索引数组:数组的索引值是整数,以0开始.
2.关联数组:数组的以字符串作为索引值.

我们来讲一下关于php 函数的用法吧,这些函数都以function开始哦,与其它的差不多,现在我们来看看php函数应用吧。

函数是一段完成指定任务的已命名代码
function 函数名(参数1,参数2,参数3......)
{
 函数体
 return 返回值
}
例如:
function jsq($cs1,$cs2,$sf)
{
 $jg = 0;
 switch($sf)
 {
  case"+"  $jg=$cs1+$cs2;break;
  case"-"  $jg=$cs1-$cs2;break;
  case"*"  $jg=$cs1*$cs2;break;
  case"/"  $jg=$cs1/$cs2;break;
 }
 return $jg;
}
$a = jsq(1,2,+);
echo $a;
输出结果为: 3
函数外部的声明想要在函数内部使用,要在函数内部加  global 或$GLOBALS[" "].
要想函数变量在函数中是静态的,加关键字 statis.
要想知道函数是否存在,用 function_exists 查看.
     第四章(4)函数的声明与应用
要想运用其它文件名中的文件,就要在其文件名前面加 require() 或 include().
如防止其文件在其它文件中重复调用,可以在其文件名前面加 require_once() 或 include_once().

[!--infotagslink--]

相关文章

  • java8如何用Stream查List对象某属性是否有重复

    这篇文章主要介绍了java8如何用Stream查List对象某属性是否有重复的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2021-09-11
  • 源码分析系列之json_encode()如何转化一个对象

    这篇文章主要介绍了源码分析系列之json_encode()如何转化一个对象,对json_encode()感兴趣的同学,可以参考下...2021-04-22
  • R语言 如何删除指定变量或对象

    这篇文章主要介绍了R语言删除指定变量或对象的操作方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-05-06
  • php中去除文字内容中所有html代码

    PHP去除html、css样式、js格式的方法很多,但发现,它们基本都有一个弊端:空格往往清除不了 经过不断的研究,最终找到了一个理想的去除html包括空格css样式、js 的PHP函数。...2013-08-02
  • JavaScript预解析,对象详解

    这篇文章主要介绍了JavaScript预解析,对象的的相关资料,小编觉得这篇文章写的还不错,需要的朋友可以参考下,希望能够给你带来帮助...2021-11-10
  • 如何在Spring WebFlux的任何地方获取Request对象

    这篇文章主要介绍了如何在Spring WebFlux的任何地方获取Request对象,帮助大家更好的理解和使用springboot框架,感兴趣的朋友可以了解下...2021-01-26
  • index.php怎么打开?如何打开index.php?

    index.php怎么打开?初学者可能不知道如何打开index.php,不会的同学可以参考一下本篇教程 打开编辑:右键->打开方式->经文本方式打开打开运行:首先你要有个支持运行PH...2017-07-06
  • 牛叉的Jquery――Jquery与DOM对象的互相转换及DOM的三种操作

    只有jQuery对象才能调用jQuery类库的各种函数,同样有些dom对象的属性和方法在jQuery上也是无法调用的,不过基本上jQuery类库提供的函数包含了所有的dom操作。这就需要我们知道如何将jQuery对象和DOM的相互转换的方法。1...2015-10-30
  • PHP中func_get_args(),func_get_arg(),func_num_args()的区别

    复制代码 代码如下:<?php function jb51(){ print_r(func_get_args()); echo "<br>"; echo func_get_arg(1); echo "<br>"; echo func_num_args(); } jb51("www","j...2013-10-04
  • PHP编程 SSO详细介绍及简单实例

    这篇文章主要介绍了PHP编程 SSO详细介绍及简单实例的相关资料,这里介绍了三种模式跨子域单点登陆、完全跨单点域登陆、站群共享身份认证,需要的朋友可以参考下...2017-01-25
  • js如何打印object对象

    js调试中经常会碰到输出的内容是对象而无法打印的时候,光靠alert只能打印出object标示,却不能打印出来里面的内容,甚是不方便,于是各方面整理总结了如下一个函数,能够将数组或者对象这类的结果一一打印出来,具体代码如下: fu...2015-10-21
  • PHP实现创建以太坊钱包转账等功能

    这篇文章主要介绍了PHP实现创建以太坊钱包转账等功能,对以太坊感兴趣的同学,可以参考下...2021-04-20
  • javascript self对象使用详解

    这篇文章主要介绍了javascript self对象使用详解的相关资料,需要的朋友可以参考下...2016-10-20
  • 替换json对象中的key最佳方案

    本文给大家介绍如何替换json对象中的key,通过实例代码给大家介绍key的替换方法,代码也很简单,需要的朋友参考下吧...2021-06-02
  • 详解Javascript中的Object对象

    这篇文章主要介绍了详解Javascript中的Object对象,需要的朋友可以参考下...2016-03-01
  • php微信公众账号开发之五个坑(二)

    这篇文章主要为大家详细介绍了php微信公众账号开发之五个坑,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2016-10-02
  • Bootstrap媒体对象的实现

    在web页面中,图片居左,内容居右排列,是非常常见的效果,它也就是媒体对象,它是一种抽象的样式,可以用来构建不同类型的组件。本文给大家介绍Bootstrap媒体对象的实现,感兴趣的朋友一起学习吧...2016-05-04
  • ThinkPHP使用心得分享-ThinkPHP + Ajax 实现2级联动下拉菜单

    首先是数据库的设计。分类表叫cate.我做的是分类数据的二级联动,数据需要的字段有:id,name(中文名),pid(父id). 父id的设置: 若数据没有上一级,则父id为0,若有上级,则父id为上一级的id。数据库有内容后,就可以开始写代码,进...2014-05-31
  • PHP如何通过date() 函数格式化显示时间

    这篇文章主要介绍了PHP如何通过date() 函数格式化显示时间,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-11-13
  • PHP+jQuery+Ajax实现多图片上传效果

    今天我给大家分享的是在不刷新页面的前提下,使用PHP+jQuery+Ajax实现多图片上传的效果。用户只需要点击选择要上传的图片,然后图片自动上传到服务器上并展示在页面上。...2015-03-15