【CTF部分基础知识二之PHP(四)语言基础】

PHP的标记风格

PHP支持4种标记风格,分别是XML风格、脚本风格、简短风格和ASP风格。
(1)XML风格是本书所用的标记风格,服务器不能禁用。该风格使用“<?php … ?>”进行标记,在XML、XHTML中都可以使用。例如:

<?php
	echo "这是XML风格的标记";
?>

(2)脚本风格使用“”进行标记。例如:

<script language="php">
     echo '这是脚本风格的标记';
</script>

(3)简短风格使用“<?…?>”进行标记。例如:

<?
 echo '这是简短风格的标记'; 
?>

(4)ASP风格使用“<%…%>”进行标记。例如:

<%  
  echo '这是ASP风格的标记';
%>

说明
使用简短风格和ASP风格前,需要先在php.ini中进行配置。打开php.ini文件,将short_open_tag和asp_tags都设置为On,重启Apache服务器即可。

PHP注释的应用

PHP支持3种注释格式,分别是单行注释、多行注释和#风格的注释。
(1)单行注释(//)来源于C++语法格式,注释部分一般写在PHP语句的上方或后方。

注意
单行注释中不要出现“?>”,否则解释器会认为PHP脚本到此已结束。

(2)多行注释(//)来源于C语言语法格式,分为块注释和文档注释。多行注释不允许进行嵌套操作。
(3)#风格的注释。

PHP的数据类型

PHP支持8种数据类型,包括4种标量数据类型,即boolean(布尔型)、string(字符串型)、integer(整型)和float/double(浮点型);2种复合数据类型,即array(数组)和object(对象);2种特殊数据类型,即resource(资源)和null(空值)。

说明
PHP中变量的类型通常不是由程序员设定的,确切地说,是PHP根据该变量使用的上下文在运行时决定的。

标量数据类型
标量数据类型是数据结构中最基本的单元,只能存储一个数据。

  1. 布尔型(boolean)
    布尔型变量通常保存一个true值或一个false值,其中true和false是PHP的内部关键字。布尔型变量通常应用在条件判断语句或循环控制语句的表达式中。
  2. 字符串型(string)
    字符串是连续的字符序列,由数字、字母和符号组成。字符串中的每个字符只占用一个字节。在PHP中,有3种定义字符串的方式,分别是单引号(')、双引号(")和定界符(<<<)。
    单引号和双引号是经常使用的定义方式,两者的不同之处在于,双引号中所包含的变量会自动被替换成实际数值,而单引号中包含的变量则按普通字符输出。
  3. 整型(integer)
    整型数据类型只能包含整数。整型数据的有效范围是-2147483648~+2147483647。整型数可以用十进制、八进制和十六进制来表示。如果用八进制,则数字前面必须加0;如果用十六进制,则需要加0x。
  4. 浮点型(float)
    浮点数据类型可以用来存储小数,它提供的精度比整数大得多,在64位的操作系统中,有效的范围是1.7E-308~1.7E+308。
    复合数据类型
    复合数据类型包括数组和对象两种。
    1、数组(array)
    数组是一组数据的集合,它把一系列同类型数据组织起来,形成一个可操作的整体。数组中可以包括很多数据,如标量数据、数组、对象、资源以及PHP中支持的其他语法结构等。
    数组中的每个数据都被称为一个元素,元素包括索引(键名)和值两个部分。元素的索引可以由数字或字符串组成,元素的值可以是多种数据类型。定义数组的语法格式有如下3种:
$array = array('value1', 'value2'…)
$array[key] = 'value'
$array = array(key1 => value1, key2 => value2…)

其中,key是数组元素的下标,value是数组下标所对应的元素。以下几种都是正确的声明数组格式:

$arr1 = array('This', 'is', 'an', 'example');
$arr2 = array(0 => 'php', 1 => 'is', 'the' => 'the', 'str' => 'best ');$arr3[0] = 'tmpname';

声明数组后,数组中的元素个数还可以自由更改。只要给数组赋值,数组就会自动增加长度。
2、对象(object)
世间万物皆为对象,对象包含方法和属性。在PHP中,用户可以自由使用面向过程和面向对象这两种开发方法。
特殊数据类型
特殊数据类型包括资源(resource)和空值(null)两种。
在这里插入图片描述

  1. 资源(resource)
    关于资源的类型,可以参考PHP手册后面的附录,里面有详细的介绍和说明。使用资源时,系统会自动启用垃圾回收机制,释放不再使用的资源,避免内存消耗殆尽。因此,资源很少需要手工释放。
  2. 空值(null)
    空值,顾名思义,就是没有为该变量设置任何值。另外,空值(null)不区分大小写,null和NULL效果是一样的。被赋予空值的情况有3种:未被赋任何值、被赋值为null、被unset()函数处理过。

数据类型转换

虽然PHP是弱类型语言,但有时仍然需要用到数据类型转换。PHP中的数据类型转换和C语言一样,非常简单,只需在变量前加上用括号括起来的类型名称即可。
在这里插入图片描述
类型转换还可以通过settype()函数来完成,该函数可以将变量转换成指定的数据类型。函数格式如下:

bool settype(mixed var, string type)

其中,var为指定的变量;type为指定的类型,它有7个可选值,即boolean、float、integer、array、null、object和string。如果转换成功,则返回true,否则返回false。
当字符串转换为整型或浮点型时,如果字符串是以数字开头的,就会先把数字部分转换为整型,再舍去后面的字符串;如果数字中含有小数点,则会取到小数点前一位。
检测数据类型
PHP内置了一系列检测数据类型的函数,可以对不同类型的数据进行检测,判断其是否属于某个类型,如果是则返回true,否则返回false。
由于检测数据类型的函数的功能和用法都是相同的,下面使用is_numeric()函数来检测变量中的数据是否为数字,从而了解并掌握is系列函数的用法。

  • 13
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Liana-Fany

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值