您的位置:首页 > 编程语言 > PHP开发

PHP基础学习笔记

2018-02-03 19:53 267 查看

PHP基础学习笔记

@[PHP|编程语言]

PHP基础学习笔记
变量

数据结构

常量

运算符
字符运算符

比较运算符

逻辑运算符

数组运算符

逻辑和循环语句
逻辑语句

循环语句

数组
关联数组

超全局变量
GLOBALS 引用全局作用域中可用的全部变量

PHP _SERVER

PHP _REQUEST

PHP _POST

PHP _GET

命名空间Namespace
声明方式

子命名空间

面向对象的oop
类定义

构造函数

析构函数

访问控制

其他

变量

$
表示变量,变量名区分大小写,函数名不区分大小写

全局变量(global)声明在函数外,只能在函数外访问

局部变量(local)声明在函数内,只能在函数内访问

要在函数内使用全局变量,需要在函数内声明,如

global &x;


PHP有**全局数组GLOBALS[index]∗∗,可使用GLOBALS[index]∗∗,可使用GLOBAL[‘x’]访问

static和C语言一样,一次声明后不再初始化

数据结构

字符串、整数、浮点数、逻辑、数组、对象、NULL

常量

使用define函数创建常量

例:

//定义对参数敏感的常量x
define("x","xxx");
//定义对参数不敏感的常量x
define("y","xxxx",true);


运算符

字符运算符

使用
.
进行连接,使用
.=
进行连接赋值

比较运算符

==
表示等于,
===
表示相等且类型相同

!=
<>
都表示不等于

!==
不全等,类型不同或值不同

逻辑运算符

and 与 or 或 xor 异或 &&与 || 或 ! 非

数组运算符

运算符名称例子结果
+联合$x + $y$x 和 $y 的联合(但不覆盖重复的键)
==相等$x == $y如果 $x 和 $y 拥有相同的键/值对,则返回 true。
===全等$x === $y如果 $x 和 $y 拥有相同的键/值对,且顺序相同类型相同,则返回 true。
!=不相等$x != $y如果 $x 不等于 $y,则返回 true。
<>不相等$x <> $y如果 $x 不等于 $y,则返回 true。
!==不全等$x !== $y 如果 x与x与y 完全不同,则返回 true。

逻辑和循环语句

逻辑语句

if 语句 - 如果指定条件为真,则执行代码

if…else 语句 - 如果条件为 true,则执行代码;如果条件为 false,则执行另一端代码

if…elseif….else 语句 - 选择若干段代码块之一来执行

switch 语句 - 语句多个代码块之一来执行

循环语句

while - 只要指定条件为真,则循环代码块

do…while - 先执行一次代码块,然后只要指定条件为真则重复循环

for - 循环代码块指定次数

foreach - 遍历数组中的每个元素并循环代码块

forwach举例

<?php
$colors = array("red","green","blue","yellow");
foreach ($colors as $value) {
echo "$value <br>";
}
?>


数组

使用array创建

<?php
$cars=array("Volvo","BMW","SAAB");
?


三种数组类型

- 索引数组 - 带有数字索引的数组

- 关联数组 - 带有指定键的数组

- 多维数组 - 包含一个或多个数组的数组

可以使用count函数返回数组长度!不像其他的语言用什么size,length之类函数的

关联数组

其实就是C++语言的map,python的dict等

创建方法:

//方法一
$age=array("Peter"=>'35',"Pet"=>'34');
//方法二
$age["Peter"]="35";
$age["Pet"]="34";


foreach遍历关联数组

$age=array("Peter"=>34,"Bob"=>12);
foreach($age as $x=>$x_value){
echo "$x age is $x_value";
}


使用sort函数对数组进行升序排序

使用rsort函数对数组进行降序排序

使用ksort对关联数组进行键升序排序

使用arsort对关联数组根据值降序排序

超全局变量

超全局变量有:

- GLOBALS−GLOBALS−_SERVER

- REQUEST−REQUEST−_POST

- GET−GET−_FILES

- ENV−ENV−_COOKIE

- $_SESSION

$GLOBALS — 引用全局作用域中可用的全部变量

$GLOBALS 这种全局变量用于在 PHP 脚本中的任意位置访问全局变量(从函数或方法中均可)。

PHP 在名为 $GLOBALS[index] 的数组中存储了所有全局变量。变量的名字就是数组的键。

PHP $_SERVER

$_SERVER 这种超全局变量保存关于报头、路径和脚本位置的信息。具体有哪些变量可以查看相关手册

PHP $_REQUEST

PHP $_REQUEST 用于收集 HTML 表单提交的数据。

PHP $_POST

PHP $_POST 广泛用于收集提交 method=”post” 的 HTML 表单后的表单数据。$_POST 也常用于传递变量。

PHP $_GET

PHP $_GET 也可用于收集提交 HTML 表单 (method=”get”) 之后的表单数据。

$_GET 也可以收集 URL 中的发送的数据。

命名空间Namespace

PHP 命名空间可以解决以下两类问题:

- 用户编写的代码与PHP内部的类/函数/常量或第三方类/函数/常量之间的名字冲突。

- 为很长的标识符名称(通常是为了缓解第一类问题而定义的)创建一个别名(或简短)的名称,提高源代码的可读性。

声明方式

在所有代码前声明Namespace

<?php
// 定义代码在 'MyProject' 命名空间中
namespace MyProject;
// ... 代码 ...


可以在一个文件中声明多个命名空间,但是要用大括号把对应代码框起来

<?php
namespace MyProject {
const CONNECT_OK = 1;
class Connection { /* ... */ }
function connect() { /* ... */  }
}

namespace AnotherProject {
const CONNECT_OK = 1;
class Connection { /* ... */ }
function connect() { /* ... */  }
}
?>


子命名空间

与文件目录很像

<?php
namespace MyProject\Sub\Level;  //声明分层次的单个命名空间

const CONNECT_OK = 1;
class Connection { /* ... */ }
function Connect() { /* ... */  }

?>


上面的例子创建了常量 MyProject\Sub\Level\CONNECT_OK,类 MyProject\Sub\Level\Connection 和函数 MyProject\Sub\Level\Connect。

面向对象的oop

类定义

类使用 class 关键字后加上类名定义。

类名后的一对大括号({})内可以定义变量和方法。

类的变量使用 var 来声明, 变量也可以初始化值。

函数定义类似 PHP 函数的定义,但函数只能通过该类及其实例化的对象访问。

变量 $this 代表自身的对象

构造函数

格式:void __construct(变量){code}

析构函数

格式:void __destruct(void){code}

访问控制

使用extends来继承

public(公有):公有的类成员可以在任何地方被访问。

protected(受保护):受保护的类成员则可以被其自身以及其子类和父类访问。

private(私有):私有的类成员则只能被其定义所在的类访问。

注意:如果使用var定义,则认为是公有的

其他

使用const修饰符定义类常量
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  PHP