码迷,mamicode.com
首页 > Web开发 > 详细

PHP基础笔记之一

时间:2016-08-24 18:54:06      阅读:162      评论:0      收藏:0      [点我收藏+]

标签:

被认为是false的值

布尔值 FALSE 本身

整型值 0(零)

浮点型值 0.0(零)

空字符串,以及字符串 "0"

不包括任何元素的数组

不包括任何成员变量的对象(仅 PHP 4.0 适用)

特殊类型 NULL(包括尚未赋值的变量)

从空标记生成的 SimpleXML 对象

引用赋值

利用 “&”表明要的是地址,即是修改了它指向的地址

如:&$two = $one;  即是two有个& 标明 它要的是地址 所以的 one 给了它one的地址,因此它们指向一样的地址

即是 都指向 有& 的变量地址 , 值都等于它

技术分享技术分享

注意 :利用unset()能够清空变量的值;如上面 unset($a); 此时a=null , b不受影响

这种方法时违反了封装性.按道理,函数运行之后,对外部的环境应该是"没有副作用的".

因此:对函数进行引用传参,是不推荐的!在PHP5.0以上就不推荐了,

PHP5.4的时候,干脆删除了引用传参这个功能. 报fatal error

解决 : 如果真的想获得函数里面的值,应该函数中直接return该变量出来,再接收

动态变量
$a = 1,
$b =”a”,那么$$b就等于1 ; 因为 $($b)=$a=1;动态变量
$a = 1,
$b =”a”,那么$$b就等于1 ; 因为 $($b)=$a=1;

运算符

如果相加的数过大溢出,会自动换型

全等于 := = = ,要求值相等并且类型也相等

应用: 

 技术分享

因为一般0默认为false,用==不行

 

switch分支 : 如果不添加break;如果case成立,后面的还是继续执行;case不能使用范围

组合问题之买鸡

有100元;公鸡5元/只;母鸡3元/只;小鸡1元/只。要买100只鸡,总共多少只公母小?

利用for循环组合出方案

技术分享

函数的概念

函数就是一段封装好的代码,等待调用;不调用不执行

function 名(){}

直接输出或者通过返回得到结果

return时结束函数,其后的语句不再执行

函数内的值如果不返回的话,是不能影响外面的同名变量

技术分享

函数里面的q和外面的q不是同一个

局部问题/函数作用域/

PHP中函数变量和全局是完全隔绝的,也就是无法相互访问

函数内如果想要函数外的全局变量的值可以用global声明为全局变量,但是一般不建议使用global,因为破坏了函数的封装性

$a = 1;
    $b = 2;
    $c = 3;
    function Sum()
    {
       $b = $a+$c+10;//在还没声明global之前是不能获取$a,$c的值,即仍然是局部变量范围
       echo $b . "\n"; //输出10
       global $a, $b; //声明为全局变量,值和外面的全局a一样  
       echo $b ; //$b变成全局变量,所以和外面的全局变量一样,输出2 
    }
    Sum();
    echo $b; //输出2

 

 注意 : for,while,foreach等循环并不是局部变量,而是能够影响循环外面的同名值(同一个)

 

时间类函数

时间戳函数 time(): 表示1970 01 01 0点到现在这一瞬间经过的秒数 ,直接使用

时间的格式化 date():date(‘Y-m-d 星期N h:i:s’[,time()]);  //更多格式化参考手册;字母大小写不同含,

经验 :选字体的时候,前面的@代表字体横向

获得当前的时间的时间戳 :strtotime(‘now’) ;// 还能输出明天等

获得某个时间的时间戳 :mktime()

checkdate(2,29,2000)

在开发手册中中括号表示可选

 

单双引号的区别

(1)单引号内的内容PHP解析器只转义以下字符 ; 双引号转义比较多

技术分享

(2)双引号能够解析变量;单引号不能,因此单引号速度比较快(转义少不用解析)

PHP基础笔记之一

标签:

原文地址:http://www.cnblogs.com/lzhlearn/p/5804053.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!