PHP基础学习笔记

PHP基础学习笔记

@[PHP|编程语言]


变量

  • $表示变量,变量名区分大小写,函数名不区分大小写
  • 全局变量(global)声明在函数外,只能在函数外访问
  • 局部变量(local)声明在函数内,只能在函数内访问
  • 要在函数内使用全局变量,需要在函数内声明,如
global &x;
  • PHP有**全局数组 GLOBALS[index]使 G L O B A L S [ i n d e x ] ∗ ∗ , 可 使 用 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 G L O B A L S − _SERVER
- REQUEST R E Q U E S T − _POST
- GET G E T − _FILES
- ENV E N V − _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修饰符定义类常量
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值