一. PHP代码审计中常用代码调试函数与注释

admin 2020年8月31日22:00:52评论207 views字数 1498阅读4分59秒阅读模式

安全帮



出品|安全帮(www.secbang.com)

概述:安全帮专注安全教育


【本章目的】

掌握代码审计中常用的代码调试函数,单引号与双引号之间的区别

【本章原理】

开发中,经常会查看变量的值,因此经常会将变量的值输出到页面以便于查看。这就需

要用到调试函数。


【测试步骤】



 1.1 双击wampmanager.exe 启用warp


一. PHP代码审计中常用代码调试函数与注释

 1.1 函数调试 echo/print

这是最简单的输出数据的调试方法,一般用来输出变量值,或者不确定程序执行到了哪个分支的情况下使用。可以一次输出多个值,多个值之间用逗号分隔。test.php代码中,定义了一个名为$a的数组,还定义了变量$secbang,其值为tsecbang。echo $secbang 输出变量 的值,即secbang

一. PHP代码审计中常用代码调试函数与注释


函数 打印一个值(它的参数),只能打印出简单类型变量的值 如int,string。这里使用print $secbang 效果和echo相同

 1.2 print_r ,var_dump,  var_export  debug_zavl_dump


这个主要是用来输出变量数据值,特别是数组和对象数据,一般我们在查看接口返回值,

或者某些不太确定变量的时候,都可以使用这几个函数。


NO1 .print_r()可以把字符串和数字简单地打印出来,而数组则以括起来的键和值的列表形式显示,并以Array开头。但print_r()输出布尔值和NULL的结果没有意义,因为都是打印"n"。因此用var_dump()函数更适合调试。其格式很整齐,跟var_dump 的区别是没有类型数据,并且布尔值的false和值NULL输出为空。使用echo $a输出数组时只能输出Array,并不能输出数组的值。

一. PHP代码审计中常用代码调试函数与注释

NO2 .print_r($a)既可以输出Array,还能输出数组的值

一. PHP代码审计中常用代码调试函数与注释

NO3 .var_dump()判断一个变量的类型与长度,并输出变量的数值,如果变量有值输的是

变量的值并回返数据类型。


一. PHP代码审计中常用代码调试函数与注释


NO4 .var_dump($secbang)输出变量时,不仅输出变量值,还输出数据类型和长都

一. PHP代码审计中常用代码调试函数与注释


NO5 .var_export()输出或返回一个变量的字符串表示。此函数返回关于传递给该函数的变量的结构信息,它和var_dump()类似,不同的是其返回的表示是合法的PHP代码。使用var_export($a);输出数组a的值。需要注意的一点是,var_export()对于资源型的变量会输出NULL度

一. PHP代码审计中常用代码调试函数与注释

NO6 .debug_zval_dump()输出结果跟var_dump 类似,唯一增加的一个

值是refcount,就是记录一个变量被引用了多少次,这是php的copy on write(写时复

制)的机制的一个重要特点

一. PHP代码审计中常用代码调试函数与注释

 
1.3 注释

NO1 . 用//开头,作为单行注释

<?php 

//Author:secbang.com

echo "test"

?>

NO2 . 用#开头,作为单行注释

<?php

#Author:secbang.com

echo "test"

?>

 

NO3 . 用/*开头 */结尾,作为多行注释

<?php

/*Author:secbang.com

这是一个测试

*/

echo "test"

?>

1.3  双引号,单引号区别

NO1. 在PHP代码中,双引号解析变量,即双引号里面的字段会经过编译器解释,然后再当作HTML代码输出。使用echo “$str”输出变量,解析变量$str,故输出变量$str的值simpleware4.


NO2.  而单引号不解析变量,即单引号里面的字段不进行解释,直接输出。使用echo ‘$str’不解释变量$str,所以输出$str。

作业:PHP代码中常用的调试函数有哪些?
作业提交加群 有老师来批改作业

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2020年8月31日22:00:52
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   一. PHP代码审计中常用代码调试函数与注释http://cn-sec.com/archives/110924.html

发表评论

匿名网友 填写信息