搜索
首页php教程php手册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关键

<span style="white-space:pre">	</span>$v1 = &#39;global v1&#39;;
        func1();
        function func1(){
            //echo $v1; //未定义
            global $v1;
            echo &#39;function inner vars v1 :&#39;, $v1;
        }
        echo &#39;以下是在函数内部声明外部使用的<span style="font-family: Arial, Helvetica, sans-serif;">示例</span><br/>&#39;;
        function func2(){
            global $v2; //注释后,在全局内输出$v2会出错
            $v2 = &#39;function inner v2&#39;;
        }
        func2();
        echo $v2;

四.操作符

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

& 引用操作符:

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

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

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


五.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

<span style="white-space:pre">	</span>//$bol = true;
        //$bol = false;
        $bol = [1,   2, 3];
        switch($bol){
            case 0:
                echo &#39;0<br/>&#39;;
                break;
            case 10:
                echo &#39;10<br/>&#39;;
                break;
            case -1:
                echo &#39;-1<br/>&#39;;
                break;
            case [1,2,3]: //数组
                echo &#39;empty array<br/>&#39;;
                break;
            case 0:
                echo &#39;0<br/>&#39;;
                break;
        }
//当为bool类型时,true在case数值为真时输出,false在case后数值为假时输出,可以运行代码,可以下




声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
4 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
4 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
4 周前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
1 个月前By尊渡假赌尊渡假赌尊渡假赌

热工具

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

安全考试浏览器

安全考试浏览器

Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

螳螂BT

螳螂BT

Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

WebStorm Mac版

WebStorm Mac版

好用的JavaScript开发工具