• PHP基础笔记之一


     

    JavaScript通常运行在浏览器(客户端),它可以制作网页上面的特效。但如果要让JavaScript实现显示“访问网站的总人数”,它就无能为力了,因为它只能获得客户端的信息,而“访问网站的总人数”是存储在服务器端的。所以就需要另外一种可以在服务器端运行的编程语言,PHP语言就是其中的一种,因为它可以运行在Web服务器端。
    1、运行在服务器端:学会了PHP,就可以指挥服务器给你干活,WEB网站的大部分数据都是存储在服务器端的,PHP就是用来处理这些存储在服务器的数据的。
    2、跨平台:有多种平台的服务器,都可以使用php来指挥。
    3、在编写PHP的过程其实就是与老外(服务器成老外啦)交流的过程,交流的语言就是PHP。

     

     

    被认为是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 . "
    "; //输出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)双引号能够解析变量;单引号不能,因此单引号速度比较快(转义少不用解析)

  • 相关阅读:
    程序员是这样区分Null和Undefined
    JavaScript实现
    获取页面中任意一个元素距离body的偏移量
    js检测数据类型的方法你都掌握了几个?
    处理浏览器兼容你最喜欢用哪种方式
    算法竞赛入门经典 第四章 学习笔记 1
    算法竞赛入门经典 程序4-1 组合数
    算法竞赛入门经典 例题3-1 TeX中的引号
    算法竞赛入门经典 第3章 数组和字符串 学习笔记 3
    算法竞赛入门经典 第3章 数组和字符串 学习笔记 2
  • 原文地址:https://www.cnblogs.com/lzhlearn/p/5804053.html
Copyright © 2020-2023  润新知