位置: 编程技术 - 正文

PHP易混淆知识整理笔记(php 混淆)

编辑:rootadmin

推荐整理分享PHP易混淆知识整理笔记(php 混淆),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:php代码混淆工具,php混编,php必背知识点,php混淆加密解密,php 混淆,php代码混淆工具,php混淆在线解密,混淆phpjm,内容如对您有帮助,希望把文章链接给更多的朋友!

1.echo和print的区别

PHP中echo和print的功能基本相同(输出),但是两者之间还是有细微差别的。echo输出后没有返回值,但print有返回值,当其执行失败时返回flase。因此可以作为一个普通函数来使用,例如执行下面的代码后变量$r的值将为1。

这意味着print可用在一些复杂的表达式中,而echo则不行。但是,因为echo语句不要求返回任何数值,所已在代码中echo语句的运行效率要略微快于print语句。

2.include与require的区别

include()与require()的功能也基本相同(包含),但在用法上也有一些不同,include()是有条件包含函数,而require()则是无条件包含函数。例如在下面代码中,如果变量$a为真,则将包含文件a.php:

而require()则和include()不同,不管$a取何值,下面的代码将把文件a.php包含进文件里:

在错误处理方面,使用include语句,如果发生包含错误,程序将跳过include语句,虽然会显示错误信息但是程序还是会继续执行!但requre却会给你来个致命错误。

当然,从字面意思上我们也可以理解七分:requre是很强硬的请求、要求的意思。

3.require_once()和include_once()语句

题外话了,因为长的像,简单require_once()和include_once()语句分别对应于require()和include()语句。require_once() 和include_once()语句主要用于需要包含多个文件时,可以有效地避免把同一段代码包含进去而出现函数或变量重复定义的错误。

4.空字符串('')和NULL的区别

PHP中空字符串和NULL都是以值为0存储的,但是他们的类型并不一样,你可以试一下echo gettype('');和echo gettype(NULL);你会发现他们打印出来的分别是string和NULL,当然还有0也容易混淆,你可以试试echo gettype(0);打印一下类型,会发现0的类型是integer(整型),可见字符串('')、NULL和0是“等值”但不等类型。

5.isset和 empty的区别

从字面意思上我们就可以明白:empty是判断一个变量是否为“空”,而isset 则是判断一个变量是否已经设置。但是这里有一点绝对要注意起来:当一个变量值为0,empty 认为这个变量同等于空,即相当于没有设置。比如当我们检测$id 变量的时候,当$id=0 ,用empty和isset来检测变量$id是否已经配置,两都将返回不同的值:empty 认为没有配置,isset 则能够取得 $id 的值,看下边例子:

6.==(等)和===(恒等)的区别

回顾上面第四条空字符串("")和NULL的区别,再来看一个例子:

运行之后你会发现第一个为true,而第二个则为false!可见==只是比较值是否相等,而===则不但比较值,还会比较类型,更为严格。

7.self :: 和 this-> 的区别

在访问PHP类中的成员变量或方法时,如果被引用的变量或者方法被声明成const(定义常量)或者static(声明静态),那么就必须使用操作符::,反之如果被引用的变量或者方法没有被声明成const或者static,那么就必须使用操作符->。

另外,如果从类的内部访问const或者static变量或者方法,那么就必须使用自引用的self,反之如果从类的内部访问不为const或者static变量或者方法,那么就必须使用自引用的$this。

8.strstr() 与 strpos() 的区别

stristr() 不区分大小写 strstr() 区分大小写

函数查找字符串在另一个字符串中第一次出现的位置。

如果成功,则返回字符串的其余部分(从匹配点)。如果没有找到该字符串,则返回 false。

stripos() 不区分大小写 strpos() 区分大小写

PHP易混淆知识整理笔记(php 混淆)

函数返回字符串在另一个字符串中第一次出现的位置。

如果没有找到该字符串,则返回 false。

经测试证明如果只是单纯查找判断是否存在则strpos()的执行效率要大于strstr()

9.PHP中 HTTP_HOST 和 SERVER_NAME

相同点:

当满足以下三个条件时,两者会输出相同信息。

1. 服务器为端口

2. apache的conf中ServerName设置正确

3. HTTP/1.1协议规范

不同点:

1. 通常情况:

_SERVER["HTTP_HOST"] 在HTTP/1.1协议规范下,会根据客户端的HTTP请求输出信息。

_SERVER["SERVER_NAME"] 默认情况下直接输出apache的配置文件httpd.conf中的ServerName值。

2. 当服务器为非端口时:

_SERVER["HTTP_HOST"] 会输出端口号,例如:mimiz.cn:

_SERVER["SERVER_NAME"] 会直接输出ServerName值

因此在这种情况下,可以理解为:HTTP_HOST = SERVER_NAME : SERVER_PORT

3. 当配置文件httpd.conf中的ServerName与HTTP/1.0请求的域名不一致时:

httpd.conf配置如下:

ServerName mimiz.cn

ServerAlias www.mimiz.cn

客户端访问域名www.mimiz.cn

_SERVER["HTTP_HOST"] 输出 www.mimiz.cn

_SERVER["SERVER_NAME"] 输出 mimiz.cn

所以,在实际程序中,应尽量使用_SERVER["HTTP_HOST"] ,比较保险和可靠。

如果在端口映射的情况下,并且在内网访问,用“$_SERVER['HTTP_X_FORWARDED_HOST']”比较好。

经过小编对以上知识点的整理,大家的思路是不是更清晰了,对这些概念是不是有了区分,那就好好收藏这份笔记吧!

分享十款最出色的PHP安全开发库中文详细介绍 1.PHP入侵检测系统PHPIDS(即PHP-入侵检测系统)是一套易于使用、结构良好、速度出色且专门面向PHP类Web应用程序的先进安全层。这套入侵检测系统既不提供

写一段简单的PHP建立文件夹代码 主要先获取当前目录的路径,然后判断文件夹是否存在,不存在则创建。phpdefine('DIR_ROOT',str_replace('\','/',dirname(__FILE__)));//获取当前文件物理路径$tmp_file_

分享常见的几种页面静态化的方法 什么是PHP静态化PHP静态化的简单理解就是使网站生成页面以静态HTML的形式展现在访客面前,PHP静态化分纯静态化和伪静态化,两者的区别在于PHP生成静

标签: php 混淆

本文链接地址:https://www.jiuchutong.com/biancheng/275015.html 转载请保留说明!

上一篇:PHP网站建设的流程与步骤分享(php网站架设)

下一篇:分享十款最出色的PHP安全开发库中文详细介绍(再给我推荐几款)

  • 购买土地缴纳的费用
  • 设备检验检测
  • 增值税电子专用发票需要盖章吗
  • 商铺税费怎么算2021
  • 小规模纳税人购买原材料会计分录
  • 一般纳税人可以开免税发票吗
  • 售后回购确认为租赁的
  • 商品涉及商业折扣的,如何确认企业所得税的销售收入?
  • 个税手续费返还比例
  • 安全费用支出范围包括
  • 进口代理公司怎么收费
  • 内含报酬率的计算公式插值法
  • 可供出售金融资产属于流动资产吗
  • 公司邀请外国人来华邀请函模板
  • 营改增建筑业
  • iphone无法打开网页怎么办
  • php大小写转换函数怎么写
  • PHP:Memcached::replace()的用法_Memcached类
  • 非货币性资产交换
  • 预付款开票税务问题怎么解决
  • 用应付票据付应付账款
  • Escarpment Trail in Porcupine Mountains Wilderness State Park, Michigan (© Pat & Chuck Blackley/Alamy)
  • 微信小程序实现支付功能
  • 竣工结算与竣工决算的主要区别是什么
  • 非盈利组织固定资产没入帐 怎么调账
  • 营改增前建筑工程需交哪些税种
  • php计算给定日期的时间
  • vue面试题及答案2021
  • 呕心沥血的历史人物
  • 个体工商户和个人独资企业的区别
  • phpweb漏洞
  • 税收收入退还书有时间限制吗
  • 电子发票冲红后对方能查到吗
  • mysql 索引类型以及使用场景
  • python怎么用
  • java中file的用法
  • python PyQt如何使用资源
  • mongodb索引存储方式
  • 如何利用税收经济效应实现税收的宏观调控目标
  • MSSQLSERVER不同版本设置开启远程连接(sa配置)
  • 电子承兑汇票到期后多少天能兑现
  • 电商平台经销商
  • 社保补差什么流程
  • 租的办公室装修费怎么处理
  • 公司是生产企业现在要开出租赁的发票可以开吗
  • 专门从事研发的公司
  • 汽车租赁的会计处理
  • 维修费收入怎么结转销售成本
  • 个税租房抵扣细则
  • 回购股票会导致所有者权益减少吗
  • 手机属于固定资产吗
  • 费用多计提了怎么办
  • 影响固定资产折旧的基本因素不包括
  • sql server 还原数据库后显示为备用只读
  • mysql怎么使用索引
  • mysql有哪些数据类型,有哪些运算符
  • 收缩后对数据库有影响吗
  • xp系统net framework 3.5
  • centos添加自启动
  • centos 文件搜索
  • win10预览版和正式版
  • win8.1安装过程
  • 在linux操作系统中
  • 安卓新创手势
  • our与my的区别
  • javascript怎么做
  • centos 设置定时任务执行指定脚本的方法
  • jquery源码分析
  • 飞机大战剧情102
  • jquery时钟插件
  • Python工程师面试题 与Python基础语法相关
  • [置顶]JM259194
  • python序列结构总结
  • android客户端与服务器通信
  • 电子税务局网页版登录入口官网
  • 空调设备税率多少钱
  • 开展和组织开展什么区别
  • 广东省电子税务局登录方式
  • 电脑有网为什么不能用
  • 种植业税收优惠政策2023
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设