php学习第三天

1.include与require的区别

》其实他们两个都是引用别的文件的功能,但是他们的错误级别不同,include是包含的意思,如果include使用不当

仅仅是会报警告,但是有的时候,我们通常会禁止掉警告,但是require是报的错误,能更好的发现问题

2.include_once ,require_once

》其实当多次引用同一个文件的时候,是会报错的,当项目非常大的时候,整个引用是非常混乱的,这个时候为了防止这种情况出现,就可以使用require_once和include_once了

3.类(与c++基本一致)

》同一个文件中可以定义很多个类

》定义一个对象是用new来实现的

4.命名空间

如果要定义有多个名字都一样的类,这个时候就要用到命名空间的概念,不同命名空间中可以有相同名字的类

eg:

namespace def;

class Hello

{

 

}

 

namespace ddd;

class Hello

{

 

}

 

$h1 = new \def\Hello();

$h2 = new \ddd\Hello();

5.构造函数与析构函数

public function __construct(/*可以是带参数的*/)

{

#创建对象的时候,调用

}

public function __destruct(/*可以使带参数的*/)

{

#销毁对象的时候调用

}

值得注意的是:在php中仍然有$this变量

6。成员方法和类方法(与c++并无差别)

static关键字

执行这个类方法的时候,就不需要去创建实例调用,可以直接用 类名::方法名称

7.继承

extends:与java类似

在执行父类的构造方法的时候,用parent::_construct(/*里面是一些有的没得参数*/);

子类的对象可以调用父类的共有的方法等

8.重写(与c++中类似)

9.时间

time()函数:时间戳

date()函数:日期

》以上的时间可能与本地时间不符,可能是时区不一样导致的

》获得时区的方法

echo date_default_timezone_get();

》设置时区的方法

date_default_timezone_set('Asia/Shanghai')

其中里面的参数可以在php.net中查看

eg:

1539937461
Asia/Shanghai
18-10-19 16:24:21

》如何将时间戳转换成日期 

echo date('Y-m-d H:i:s',time());

10.JSON格式的数据

eg:

[1,2,5,7,8,"hello",[6,7,8],{"h":"Hello"}]

{"h":"hello","w":"world",{1,2,3}}

》编码

$arr1 = array(1,2,4,array('rrvr'=>'rf','hello'=>'world','good'=>'morning'),8,'58','hhh');
echo json_encode($arr1);

结果:

[1,2,4,{"rrvr":"rf","hello":"world","good":"morning"},8,"58","hhh"]

》解码

$arr = '{"h":"hello","w":"world"}';
$obj = json_decode($arr);
print_r($obj);

echo $obj->w;

结果:

2018-10-19 18:27:24stdClass Object ( [h] => hello [w] => world ) 
world

::php对于json格式的数据的支持是非常良好地

posted @ 2018-10-19 18:33  qzhqzh  阅读(145)  评论(0编辑  收藏  举报