php笔记(更新中

庄生晓梦 发布于

php笔记(第四版)

php数据类型

  • Integer
  • Float
  • String
  • Boolean
  • Array
  • Object
  • NULL 没被赋值,已被重置或被赋值为NULL的都是NULL类型
  • resource 代表外部资源(例如数据库连接)

声明和使用常量

声明:define('PI',3.1415926)

使用时不需要$

变量作用域

  • 内置超级全局变量,脚本任意地方可用
  • 常量,全局可用
  • 全局变量,整个脚本可见,函数内部不可用
  • 函数内部的静态变量,在函数外不可见,但可在函数多次执行中保持该值

错误抑制操作符@

可以在任何有值或计算出值的表达式之前

执行操作符

一对反向单引号(``)

php将反向单引号之间的命令当作服务器端的命令来执行

测试变量

  • gettype()
  • settype()
  • isset() 变量存在则返回true
  • unset() 销毁传入的变量
  • empty() 当变量存在,并且是一个非空非零的值时返回 FALSE 否则返回 TRUE

文件读写(php解释器是用c编写的,所以差不多)

  • fopen()
  • fwrite()
  • file_put_contents()
  • file_get_contents()
  • fclose()
  • feof()
  • fgets()
  • fgetss()
  • fgetcsv()
  • readfile()
  • fpassthru()
  • file()
  • fgetc() 会返回文件结束符EOF
  • fread()
  • file_exists()
  • filesize()
  • unlink 删除一个文件
  • rewind()
  • fseek()
  • ftell()
  • flock() 文件锁定,文件被打开且在读写操作之前,防止多个用户同时对一个文件操作,但在加锁过程中也会出现竞争加锁的情况

说了这多,还是推荐数据库管理系统,没有数据库的php是没有灵魂的

数组

php支持数字索引数组关联数组

数组大小根据所增加的元素动态的变化

foreach语句为数组而设计

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
foreach ($prices as $key=>$value){
echo $key." - ".$value."<br/>";
}

while($element = each($prices)){
echo $element['key'];
echo " - ";
echo $element['value'];
echo "<br/>";
}

reset($prices); //多次使用each()函数时
while(list($product, $price) = each($prices)){
echo "$product - $price<br/>";
}
  • sort() 升序排列,第二个参数可选 [SORT_STRING|SORT_NUMBERIC|SORT_REGULAR]
  • asort() 根据关联数组的值排序
  • ksort() 根据关联数组的key排序
  • 以上三个函数的降序函数 rsort(),arsort(),krsort()

字符串与正则

拾遗

  • 双引号支持插值,单引号不支持
  • php特性之一,是不需要再使用变量之前声名变量,第一次赋值时才创建变量
  • php是一个弱类型语言
  • 可变变量$$
  • andor的优先级比=要低
  • 文件打开方式还有一个“x”