php源码交流咨询吧 关注:2贴子:8
  • 0回复贴,共1

PHP知识汇总

只看楼主收藏回复

PHP 代表 PHP: Hypertext Preprocessor
PHP 文件可包含文本、HTML、JavaScript代码和 PHP 代码
PHP 代码在服务器上执行,结果以纯 HTML 形式返回给浏览器
PHP 文件的默认文件扩展名是 ".php"
PHP能做什么
PHP 可以生成动态页面内容
PHP 可以创建、打开、读取、写入、关闭服务器上的文件
PHP 可以收集表单数据
PHP 可以发送和接收 cookies
PHP 可以添加、删除、修改您的数据库中的数据
PHP 可以限制用户访问您的网站上的一些页面
PHP 可以加密数据
安装
如果您的服务器不支持 PHP,您必须:
安装 Web 服务器
安装 PHP
安装数据库,比如 MySQL
官方 PHP 网站(PHP.net)有 PHP 的安装说明: http://php.net/manual/en/install.php
集成开发环境推荐 WAMP:http://www.wampserver.com/
PHP基本语法
PHP 脚本可以放在文档中的任何位置。
PHP 脚本以 <?php 开始,以 ?> 结束:
<!DOCTYPE html><html><body><h1>我的第一个 PHP 页面</h1><?phpecho "Hello World!";// 这是一行注释/*这是多行注释*/?></body></html>
PHP 中的每个代码行都必须以分号结束
两种在浏览器输出文本的基础指令:echo 和 print。
PHP变量
变量以 $ 符号开始,后面跟着变量的名称
PHP 没有声明变量的命令。
变量在您第一次赋值给它的时候被创建:
PHP 是一门弱类型语言
PHP 会根据变量的值,自动把变量转换为正确的数据类型。
在强类型的编程语言中,我们必须在使用变量前先声明(定义)变量的类型和名称。
PHP的基本语法
PHP(Hypertext Preprocessor,超文本预处理器)是一种运行在服务器端的脚本语言。
1.PHP语言标记  <?php 标准风格标记,属于XML风格;?>  <script lanauage="php">长风格标记</script>  <? 短风格的标记 ?>  <% ASP风格的标记 %>2.PHP指令分割符
  PHP需要在每个语句(指令)后用分号结束!
3.程序注释  // 单行注释  # 单行注释  /* 多行注释 */  /**多行文档注释 */4.变量
  简言之,变量是用于临时存储值的容器。(变量在任何语言中都处于核心地位)
  变量的命名:
  PHP中声明变量必须是使用一个美元符号"$"加上后面的变量名来表示,使用赋值操作符(=)来给一个 变量赋值。
变量的命名:
  一个有效的变量名是由字母或下划线开头,后面跟上任意数量的字母、数字或者下划线。要注意的是,变量名一定不能以数字开头,并且中间不可以使用空格,不能使用点分开  等!
  按照正常的正则表达式,他将被表示成:'[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*'。
可变变量:
  $str = 'hello';  $$str = 'world';  echo "$str $hello"; //输出hello world  echo "$str $$str"; //输出hello world
变量的引用赋值:
 简单的使用"&"加到将要赋值的变量前。这意味着新的变量简单的引用了原始变量。(换言之,“成为其别名”或者“指向”)。  $foo = 'Bob';  $bar = &$foo;  $bar = '世界,你好!';  echo $bar; //输出世界,你好!  echo $foo; //输出世界,你好!  $foo = 'hello world';  echo $foo; //输出hello world  echo $bar; //输出hello world
变量的类型:
|-----boole布尔型
                  |-----integer整形
       |-----四种标量类型---- |-----float浮点型,也称double
       |           |-----string字符串
       |
  数据类型--|
       |           |-----array数组
       |-----两种复合类型---- |
       |           |-----object对象
       |           |-----resource资源
       |-----两种特殊类型---- |
                  |-----NULL
  布尔型(TRUE or FALSE):  布尔值FALSE  整型值0为假,其他非零值不论正负均为TRUE  浮点型0.0  空白字符串和字符串'0'  没有成员变量的数组  没有单元的对象(仅适用于PHP4)  特殊类型NULL  整型:如果给定数超出整型范围,将会被解释成float。  浮点型:范围在1.7E-38~1.7E+38之间,精确到小数点15位。  字符串:可以使用单引号、双引号和定界符三种方法定义!  数组:可以存放多个数据,并且可以存入任何类型的数据。  对象:由属性和方法构成。属性表示对象状态,方法表示对象功能!  资源类型:保存在外部资源的一个引用,通过专门的函数进行建立和使用!  NULL类型:NULL不表示空格,不表示零,也不表示空字符串,而是表示一个变量的值为空。  将变量直接赋值为NULL;  声明的变量未被赋值  被unset()函数销毁的变量
伪类型:
  mixed:说明一个参数可以接受多种不同的(但并不必须是所有的)类型。  number:说明一个参数可以是integer后者float。  callback:接受用户自定义的函数作为参数。
数据类型相互转换:
  自动类型转换  布尔型TRUE将转化为1,FALSE转化为0。  NULL转化为0。  整型和浮点型进行运算,先将整型自动转化为浮点型,再进行运算  字符串和数字型参与预算,字符串先转化为数字,再进行运算。  强制类型转换  (int),(integer):转换成整型  (bool),(boolean):转换成布尔型  (float),(double),(real):转换成浮点型  (string):转换成字符串  (array):转换成数组  (object):转换成对象  或使用具体的转换函数:intval(),floatval()和strval()。  注:整型转换为浮点型,由于其精度范围小于浮点型,所以转换后精度不会改变,但是浮点型  转换为整型时,会自动舍弃其小数部分。
检测变量类型:
  is_bool():是否为布尔型  is_int(),is_integer(),is_long():是否为整型  is_float(),is_double(),is_real():是否为浮点型  is_string():是否为字符串  is_array():是否为数组  is_object():是否为对象  is_resource():是否为资源类型  is_null():是否为空  is_scalar():是否是标量,也就是是否为整数、浮点数、布尔型或字符串。  is_numeric():是否是任何类型的数字或数字字符串  is_callable():判断是否是有效的函数名
常量:用于一些固定的值!
常量的声明:通过使用define()函数声明常量,常量名照样区分大小写,按照惯例,一般常量名全大写,常量名前不要加"$"。example:define('NAME','xiaozhang');echo NAME; //输出xiaozhang
常量和变量的区别:
  常量前没有"$"符号  常量只能通过define()函数定义,不能通过赋值  常量可以不用理会变量范围的规则而在任何地方定义和访问  常量一旦定义就不能被重新定义或者取消定义,直到脚本运行结束自动释放  常量的值只能是标量类型
PHP中常用魔术常量:
  __FILE__:当前的文件名  __LINE__:当前的行数  __FUNCTION__:当前的函数名  __CLASS__:当前的类名  __METHOD__:当前对象的方法名
运算符
  算数运算符:    + 加    - 减    * 乘    / 除    % 取余(求模)    ++ 累加    -- 累减   注:$a++先计算表达式然后再执行递增的操作,++$a先执行递增操作,再计算表达式的值。累减同理!
赋值运算符:
    = 将一个值或表达式计算结果赋给变量    += 将变量与所赋值相加后的结果再赋给该变量    -= ......    *= ......    /= ......    %= ......    .= 将变量与所赋值相连后的结果再赋给该变量
比较运算符:
    > 大于    < 小于    >= 大于等于    <= 小于等于    == 等于    === 全等于    <>或!= 不等    !== 不全等    注:==和===的区别在于==只关心参与比较的数的值是否相等,而不管类型是否相同!
逻辑运算符:
    and或&& 逻辑与 两边必须都为TRUE才为TRUE    or 或|| 逻辑或 两边只要一个为TRUE就为TRUE    not或! 逻辑非 取反,若表达式为TRUE则结果为FALSE    xor 逻辑异或 两边不同时为TRUE
  表达式:PHP的基石,几乎所编写的任何代码都可以看做是一个表达式,通常是变量、常量和运算符的组 合等!
PHP流程控制结构 分支结构:
    单一条件分支结构   双向条件分支结构   多向条件分支结构   巢状条件分支结构
      if(表达式){      if(表达式){      if(表达式){        if(表达式){
        ...         ...          ...            if(表达式){
      }          }else{       elseif(表达式){         ...
                  ...          ...           }
                }          }            elseif(表达式){
                        ----------------       if(表达式){
                        switch(表达式){          ...
                                        }else{
                        case 值1:             ...
                          ...             }
                          break;        }
                        case 值2:
                          ...
                          break;
                        case 值3:
                          ...
                          break;
                        default:
                          ...
                        }
循环结构:
      while语句:        do...while语句:        for语句:
      while(表达式){      do{         for(初始化;条件表达式;增量){
        ...           ...              ...
      }           }while(表达式);      }
特殊流程控制语句:
    break:中断当前循环,即结束循环的执行
    continue:只能使用在循环内部,功能是跳过该次循环,执行下一次循环
    exit:不论在哪个结构中,直接退出当前脚本
PHP的函数应用
函数:是指一个被命名的,独立的代码段,它执行特定的任务,并可能给它的程序返回一个值!
函数的声明:  function 函数名([参数1,参数2...参数n]){    函数体;    return 返回值;  }
  函数的调用:函数名([参数1,参数2...参数n]);、
  函数的参数:参数列表是由零个、一个或多个参数组成,定义函数时,其后面括号内的表达式称为形式参数(简称形参),被调用函数名后括号内的参数称为实际参数(简称实参)。
  函数的返回值:
  return语句可以向函数调用者返回函数体中任意确定的值;
  将程序控制权返回到调用者的作用域,即退出函数。在函数中如果执行了return语句,则它后面的语句将不会再执行!
PHP变量的范围:
  局部变量:也称为内部变量,是在函数内部声明的变量,其作用域仅限于函数内部。不仅函数内部声明的变量是局部变量,为声明函数设置的参数因为只能在本函数内部使用,所以也是局部变量。区别在于,参数从函数外部获得值,而函数中声明的变量只能在函数内部被赋值。
  全局变量:也成为外部变量,是在函数外部定义的,它的作用域从定义开始,到本程序结束。函数内部无法直接调用全局变量,若要使用全局变量,必须使用global关键字定义目标变量或者使用$GLOBALS数组(键名对应变量名,值对应变量的内容)。
  静态变量:通过static声明静态变量,即函数执行完毕后,其静态变量依然保存在内存中!
PHP函数的各种应用:
  常规参数函数:string funName(string name, int age);
  伪类型参数的函数:mixed funName(mixed args);//使用mixed描述的参数  numberfunName(numberargs);//使用mixed描述的参数  numberfunName(numberargs); //使用number描述的参数
  引用参数的函数:void funName(array &$arr); //使用&描述的参数
  注:如果函数的形参中使用'&'修饰参数,则在调用该函数时就必须传入一个变量,而不能传递一个 值。默认参数的函数:mixed funName(String name [,string value[,int age]]);//使用[]描述的参数可变个数参数的函数:mixed funName(String arg[,String ...]);//使用...描述的参数
回调函数:mixed funName(callback arg); //使用伪类型callback描述的参数
  递归函数:即自己调用自己的函数,在函数体内部直接或间接的调用自己。


IP属地:贵州1楼2021-05-27 16:53回复