PHP入门(二)

PHP入门(二)

1、数组

通过array()创建新数组

<?php
$arr = array();
  • 索引数组

(1)赋值

$arr[0]='apple';

$arr = array('0'='apple');

(2)访问
除了使用for循环访问数组的值之外(和c语言相似),还可以采用foreach循环

$num = array('1','2','3');
foreach($num as $key=>$value){
    echo '<br>第'.$key.'值是:'.$value;
}

结果输出如下:

0值是:11值是:22值是:3
  • 关联数组

 关联数组和索引数组的区别不大,索引数组其实是将索引与数值关联起来的特殊的关联数组。两者的赋值和访问均相似。

(1)赋值

$arr=array('apple'=>'苹果');

(2)访问

同上!

2、类和面向对象

(1)public(外部可以访问,默认function为public)

a.static静态属性

访问使用:: 不允许使用->和伪变量$this;

不需要实例化,可直接通过类名进行调用。

class Car{
   public static function getSpeed(){
       return self::$speed;
   }
}
echo Car::getSpeed();//调用静态方法

b.除了static的

一般通过->进行访问;

允许使用伪变量$this。

class Car{
   public $speed = 0;//汽车的初速为0;
   
   public function speedUp(){
       $this->speed += 10;
       return $this->speed;
   }
}

(2)protected

不允许外部调用!可被自身以及子类父类访问!

(3)private

不允许外部调用!只能被定义所在的类访问!

  • 对象与方法

(1)对象和对象继承

a.对象通过new关键字实例化

b.对象继承格式:function + 子类名 + extends + 父类名

class Car{
   ...
}
class Truck extends Car{
   ...
}

(2)function

 面向过程中function称为函数;面向对象中function称为方法。

  • 构造函数与析构函数

(1)构造函数

a.对象创造时调用,常用来初始化

b.常用__construct

c.子类若定义了__construct,则不会调用父类的,若要调用,使用parent::__construct
d.若构造函数定义成了私有方法,则不能直接实例化对象,只能通过静态方法进行实例化

(2)析构函数

a.对象所有引用被删除或者对象被显式销毁式调用

b.常用__destruct

  • 重载(_call)de简单运用

a.重载是动态创建属性和方法

b.__set——赋值;__get——读取;

__isset——判断属性是否设置;

__unset——销毁属性。

  • 高级特性

(1)俩’=‘与仨’=’

 判断属性是否全等用前者;判断两变量是否为同一个对象的引用用后者。

(2)clone方法

 若变量a等于变量b的克隆,那么a==a==a==b——true;但是a===a===a===b——false。

class Car{
   ...
}
$a = new Car();
$b = clone $a;
if($a == $b) echo '=='; //true
if($a === $b)echo '==='; //false

(3)序列化

a.对象序列化

 serialize将对象序列化为字符串,用于存储或者传递数据。

b.反序列化

unserialize将字符串反序列化为对象。

3、正则表达式

  • 分隔符(非数字、非反斜线、非空格)

a.常用正斜线(/)、hash符号(#)、取反符号(~)

b.若模式中包含分隔符,使用反斜杠()或者preg_quote进行转义。

c.分隔符后可使用模式修饰符(i,m,s,x…)

e.g. i是忽略大小写进行匹配

  • 元字符与转义

(1) \——转义

(2) ‘.’——匹配除换行符之外的字符;

   \s——匹配空白符(空格、制表符、换行符);

   \w——匹配字母、数字、下划线。

(3) ?——量词,表示0或1次匹配;

   *——0或多次匹配;

   +——1或多次匹配。

  • 贪婪模式与懒惰模式

(1)贪婪模式

在元字符之后使用+;

可匹配可不匹配时,优先匹配。

(2)懒惰模式

在元字符之后使用?

可匹配可不匹配时,优先不匹配。

(3)‘准确模式’

 当准确知道所匹配的字符数时,可以使用{}指定匹配字符数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值