• 技术文章 >后端开发 >php教程

    php代码之要点分析一_PHP教程

    2016-07-13 10:02:42原创276

    php代码之要点分析一


    一.post与get请求方式的区别:

    1.请求形式不同:get请求是将数据俯角在URL结尾发送给服务器,post方式是以单独的消息形式,在后台发送给服务器。

    2.发送长度不同:get请求最大数据量为2k,post请求理论上无限制,可以在配置文件中设置其大小。

    3.安全度:因为get方式数据是附加在url后发送给服务器,因此,get的安全性要低。

    4.运用场景:get适用于数据简单,安全性要求不高的时候使用,否则,使用post。


    二.常量的声明和使用:

    define('PAI1', 3.1415)
    const PAI2 = 3.1415;
    echo PAI1, PAI2;
    
    define('^_^', ‘笑脸’);
    //此种形式不能用echo ^_^来输出此变量,用一个函数即可
    echo constant('^_^');
    

    三.变量的作用域:

    个人认为php中的作用域有三种

    1.外部作用域,是指在一个脚本内,函数体以外的范围,在此区域声明的变量,外部都可用,但在内部即函数内不能使用。

    2.内部作用域,是指一个脚本内,函数体内的范围,在此区域声明的变量,内部可用,但在外部不可见。

    3.超全局作用域,在任何脚本的任何地方都可以使用,如在a.php脚本的test函数内部或者函数外部都可用,b.php脚本内也同样适用。

    如何使一个变量在外部声明内部可用或者内部声明外部也可用呢?--global关键

    	$v1 = 'global v1';
            func1();
            function func1(){
                //echo $v1; //未定义
                global $v1;
                echo 'function inner vars v1 :', $v1;
            }
            echo '以下是在函数内部声明外部使用的示例
    '; function func2(){ global $v2; //注释后,在全局内输出$v2会出错 $v2 = 'function inner v2'; } func2(); echo $v2;

    四.操作符

    % 操作符:计算结果的符号与第一个操作数符号一致

    & 引用操作符:

    	$v3 = 1;
            $v4 = &$v3;
            unset($v3); //unset后会把变量给销毁掉,不能访问$v3
            //echo $v3; //unset再次访问$v3会报错
    and or 操作符:

    与&& 和 ||功能相同,只是优先级比较低(比=还要低)

    function func1(){
    	return false;
    }
    $a = func1() or die('func1 执行返回值为假');
    $a = func1() || die('func1 执行返回值为假');


    五.echo 和 print区别

    可以这么说,凡是有一个可以使用的地方,另一个也可以使用。但是,两者之间也还是一个非常重要的区别:
    在 echo 函数中,可以同时输出多个字符串,而在 print 函数中则只可以同时输出一个字符串。同时,echo函数并不需要圆括号,所以echo函数更像是语句而不像是函数。

    echo 和 print 都不是函数,而是语言结构,所以圆括号都不是必需的。他们的区别在于:
    (1) echo可以输出多个字符串,像下面这样:
    echo 'a','b','c';
    如果你非要加上圆括号,注意写成echo ('a','b','c');是错误的,应该写成:
    echo ('a'),('b'),('c');
    它没有像函数的行为,所以不能用于函数的上下文

    (2) print只能输出一个字符串,它可以表现得像一个函数,比如你可以如下使用:
    $ret = print 'Hello World';
    所有它能用在更复杂的表达式中。


    另外,echo的效率相对比较快~
    echo 命令和 print 命令 不同
    使用时echo 可以输出多个用逗号分隔的变量,而print只能输出一个变量


    echo 函数 和 print 函数 有区别。
    echo() 无返回值,与echo 命令相同
    print() 有返回值,成功,返1,false,返0.因此,print要比echo慢一些,但可以应用到更复杂的表达式中。


    六.isset 和 empty区别
    isset函数在开发中使用较多,判断该变量是否存在或者是否开辟了内存。
    empty函数不仅仅是判断值是否是为空,而且当次变量未定义,即未开辟内存时,返回false,也就是说empty函数需要在isset为真的前提下,不能为空。

    七.switch可以支持整形,浮点型,字符串,也可以支持数组,布尔类型,允许没有default

    	//$bol = true;
            //$bol = false;
            $bol = [1,   2, 3];
            switch($bol){
                case 0:
                    echo '0
    '; break; case 10: echo '10
    '; break; case -1: echo '-1
    '; break; case [1,2,3]: //数组 echo 'empty array
    '; break; case 0: echo '0
    '; break; } //当为bool类型时,true在case数值为真时输出,false在case后数值为假时输出,可以运行代码,可以下


    www.bkjia.comtruehttp://www.bkjia.com/PHPjc/969600.htmlTechArticlephp代码之要点分析一 一.post与get请求方式的区别: 1.请求形式不同:get请求是将数据俯角在URL结尾发送给服务器,post方式是以单独的消息形...

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:要点 代码
    上一篇:php访问数组最后一个元素的函数end()用法_PHP教程 下一篇:php 的简单存在 (魔术方法作用之一:容错)_PHP教程
    千万级数据并发解决方案

    相关文章推荐

    • 消息队列RabbitMQ入门与PHP实例详解• mysql-在Windows32进行自定义环境搭建测试PHP连接MySQL时总是提示Fatal error: Call to undefined function• Zend Framework入门知识点小结_php实例• CodeIgniter视图使用注意事项_php实例• PHP验证码生成原理和实现_php实例
    1/1

    PHP中文网