PHP2

一,php 写法

PHP 除了变量不区分大小写  但是建议区分

<?php
  echo 11;


?>
<script language="php">  // php7 后 不支持了
  echo ‘22‘;
</script>
<?
  echo 33; // 需要 php.ini short_open_tag = On
?>

注: 代码后面没有 html 代码的时候 结束标签可以省略

  php 最后一条语句 分号 " ; " 可以省略 但是 省略了 结束标签之后不能省略

二,注释

  //  双斜杠注释 一行

  #  注释一行

  /*    代码  */  多行注释

  小技巧

    /*    前面加斜杠之后多行注释失效    //*

      代码 

    //*  注释代码

  也可以用if 语句注释   if(1 == 0)  执行 if(1 == 1)

三,变量

  1.变量名和值  是 引用关系/指代关系

  2.没有声明操作 变量赋值 等于声明

  3. 操作 4个 

    赋值

    取值

    判断(isset($变量)返回布尔值  null 也是 false)

    删除(unset($变量))  其实是断开和值之间的联系 值还在内存中 但是会被回收

  4.命名

    (1)驼峰命名法  首单词小写 后面每个单词首字母大写

    (2)帕斯卡命名法 每个单词首字母大写

    (3)下划线分割法 都是小写 单词之间用下划线 _ 分开

  5.  传值方式

    (1) 值传递   复制值再赋值 互不影响

      $v1 = 1;

      $v2 = $v1;

    (2)引用传递   &  符  复制引用关系直接让$v2 指向 $v1 的值

      $v1 = 1;

      $v2 = & $v1;

      修改一个的值 另一个也会变 注 unset 只能切断连接 不能删除值

  6.可变变量

    $a = ‘abc‘;

    $abc = 10;

    echo $$a;   // 10

用法

$v1 = 1;
$v2 = 2;
$v3 = 3;
$v4 = 4;
$v5 = 5;
$sum = 0;
for($i=1;$i<=5;$i++){
  $v = "v" . $i;
  $sum += $$v;
}
echo $sum;

四,预定义变量

  $_GET $_POST $_REQUEST $_SERVER $GLOBALS $_SESSION $_COOKIE $_FILES 都是数组

  request 在 get 和 post 同时存在时  默认post为主(同样的变量名post会覆盖get)// 编程不建议用  因为提交模式不清晰

  修改:php.ini    request_order = "GP"   //  G 是get P是post  后面的会覆盖前面的  可以改成 PG以get为主

  $GOLBALS 主要用于在局部范围不可以使用全局变量的时候,又需要该全局变量的值,此时就可以用它取得该全局变量的值

  $v = 1;

  echo $v; // 1 

  echo $GLOBALS[‘v‘];  // 1

 

isset 判断变量是否存在或者变量是否为空(null)

impty 判断变量的内容是否为空 不是null 的空 二十 没有内容  比如 0, "", "0", false, null, array()空也是空

五,常量   定义以后不会变 也不应该变

  1. define("STR", ‘13131‘); // 声明方法1

      echo STR;  // 13131

   echo constant("STR"); // 13131

  2. const STR = 123; // 方法2

  3. 也能用可变变量

   $v = "STR";

   const STR = 123;

   echo constant($v);   // 123

  4.defined("STR");   返回布尔值

  注:使用未定义常量报错但是 还是会被使用 并且 其值是常量本身 

  5.预定义常量  // 系统自带的常量  有几百个 详情看手册

    M_PI   圆周率

    PHP_OS  当前操作系统

  6.魔术常量  其值会变化 只有几个

    __FILE__  当前网页文件

    __DIR__    当前网页文件所在目录

    __LINE__   当前所在行

 

  与变量的区别

  1.定义形式不同

  2.使用形式不同:  常量无需$符

  3.可变程度不同:  常量的额值不可以改变,也不可以销毁

  4.作用范围不同:  常量具有超全局作用(函数内外都能直接使用)

  5.作用类型不同:  常量只能存储标量类型(整形,浮点型,字符串,布尔值)

六,数据类型  8种

  1.基本类型

  整数   int,integer

    123  //  10进制  dec

    0123  // 8进制   oct

    0x123  // 16进制  hex

    0b11010  // 2进制   bin

    转换  10 进制转其他三种   //   decoct   dechex decbin

    转换  其他三种转 10 进制  //  octdec  hexdec  bindec

    没有其它转换

    转换原理

      10 转其它 //   10进制数除以  进其它制数  记录 余 数  一直除  直到不能除  再把所有余倒着写

      其它转10 //   每个位置 数乘以 进制数的  位置-1 次方 将所有结果相加  //  1*8^2 +  2*8^1+ 3*8^0

  浮点  float,double,real

    $v = 123.456;

    $v = 123.456E3;          123.456*10^3;

    $v = 123E3;          123*10^3;           虽然没有.   但还是浮点数

  字符串  string

  布尔  bool,boolen

  2.复合类型

  数组  array

  对象  object

  3.特殊类型

  空   null  (值只有一个 null)

  资源类型 resource

 

PHP2

上一篇:设置超时前的ASP会话到期(ASP session expiration before timeout setting)


下一篇:前端js基础库的初封装 z-zframework.js