PHP语言基础
一.PHP的标记风格
PHP和其他的集中web语言一样,都是使用一对标记将PHP代码部分包含起来,以便于和HTML代码相区分,PHP一共支持4种标记风格,下面分别介绍。
- XLM风格:推荐使用的风格,服务器不能禁止。该风格的编辑在XML、XHTML中都可以使用。
<?php
echo "这是XLM风格的标记";
?>
- 脚本风格
<script language="php">
echo '这是脚本风格的标记';
<script>
- 简短风格
<? echo "这是简短风格的标记"; ?>
- ASP风格
<%
echo '这是ASP风格的标记';
%>
PS:如果要使用简短风格和ASP风格,需要在
php.ini
中对齐进行配置,打开php.ini
文件,将short_open_tah
和asp_tags
都设置为On
,重启Apache服务器即可。
二.PHP的注释应用
注释及代码的解释和说明,一般放在代码的上方和代码的尾部,用来说明代码或函数的编写人、用途、时间等。注释不会影响到程序的执行,注释部分会被解释器忽略不计。
- 单行注释(//):来源于C++语法的注释模式,可以写在PHP语句的上方。
<?php
//这是写在PHP语句上方的单行注释
echo "使用C++风格的注释" //也可以写在PHP语句后方的单行注释
>
- 多行注释(/*...*/):这是源于C语言语法的注释模式,可以分为
块注释
与文档注释
<?php
/*说明:文档注释
*作者:柒月笔记
*/
/*
$a = 1;
$b = 2;
echo ($a + $b);
*/
echo 'PHP的多行注释';
?>
PS:多行注释是不允许进行嵌套操作的。
三.PHP的数据类型
1.数据类型
PHP一共支持8种原始数据类型,包括4种标量类型:integer(整型)、float/double(浮点型),string(字符串型)和boolean(布尔型)两种复合类型:array(数组)和object(对象),两种特殊类型:resource(资源)与NULL(空)。
类型 | 说明 |
---|---|
integer(整型) | 整形数据类型只能包含整数,可以是正数或者负数 |
float/double(浮点型) | 浮点数据类型用于存储数字,和整形不同的是它有小数位 |
string(字符串型) | 字符串就是连续的字符序列,可以是计算机所能表示的一切字符的集合 |
boolean(布尔型) | 这是最简单的类型。只有两个值,真(true)和假(false) |
array(数组) | 用于保存具有相同类型的多个数据项 |
object(对象) | 用来保存类的实列 |
resource(资源) | 资源是一种让特殊的变量类型,保存了到外部资源的一个引用:如打开文件、数据库链接、图形画布区域等 |
NULL(空) | 没有被赋值,已经被重置或者被赋予为特殊值的MULL的变量 |
2.数据类型转换
PHP是弱类型语言(或者动态语言),不需要像C语言一样在使用时变量前必须先声明变量的类型。在PHP中,变量的类型是由赋予给它的值确定的。如下:
<?php
$var1 = "Hello world"; //
$var2 = 521;
>
PS:代码中的"="不是数学中的"等于",它是赋值操作符,表示将"="右边的值赋值给"="左边的变量
转换操作符 | 转换类型 | 举例 |
---|---|---|
(int) | 转换成整型 | (int)$boo |
(bool) | 转换成布尔型 | (bool)$str |
(string) | 转换成字符串型 | (string)$boo |
(array) | 转换成数组 | (array)$str |
(float) | 转换成浮点型 | (float)$boo |
(object) | 转换成对象 | (object)$str |
(unset) | 转换为NULL | (unset)$str |
PS:转换成booleam型时,mull、0和为赋值的变量或数组会被转黄成false(假),其他的为true(真); 转换成整数时,布尔值的false转换为0,true转换为1,浮点型的小鼠部分会被舍去,字符串型如果以数字开头就截取到非数字位,否则输出0
<?php
$num = '3.14*T'; //定义一个字符串
echo "将字符串型转化为整数的结果是:";
echo (int)$num; //使用(integer)转换类型 结果为:3
echo '<br>'; //换行
echo '输出初始值结果:' . $num . '<br>'; //输出原结果:3.14*T
//-----原变量不会被改变------//
$result = settype($num, 'integer'); //使用settype()函数转换类型
echo '使用settype函数转换变量$num类型,函数的返回值为:' . $result; //结果为:1
echo '<br>'; //换行
echo '输出转化后$num的值:' . $num; //输出原始变量 结果为:3
?>
运行结果可以看出,使用(int)能直接输出转换后的变量类型,并且原变量不会发生任何改变。使用settype()函数返回的是布尔值,也就是true或false,而原变量也被改变了。
3.检查数据类型
PHP还内置了检查数据类型的系类函数,对不同类型的数据进行检测,判断是都属于某个类型,如果符合则返回true,否则返回false。
函数 | 检查类型 |
---|---|
is_bool() | 检查变量是否为布尔类型 |
is_string() | 检查变量是否为字符串类型 |
is_float() | 检查变量是否为浮点类型 |
is_integer() | 检查变量是否为整型 |
is_mull() | 检查变量是否为mull |
is_array() | 检查变量是否为数组类型 |
is_object() | 检查变量是否一个对象类型 |
is_numeric() | 检查变量是否为数字或数字组成的字符串 |
四.PHP常量
常量是一个简单值的标识符(名称)如同其名所暗指的,在脚本执行期间该值不能改变,常量默认为大小写敏感,一个常量由英文字母、下划线和数字组成,但是数字不能作为首字符出现。传统而言常量标识符总是大写的。
1.定义常量
define(string constant,constant,constant,mixed value,$case_sensitive=false)
详细
onstant:必选参数,常量名称,即标识符。
value:必选参数,常量的值。
case_sensitive:可选参数,指定是否大小写敏感,设定为true,表示不敏感。
<?php
define("CNM", "柒月笔记",);
echo CNM;
?>
2.预定义常量
在PHP开发过程中,开发者经常会使用的一些通用信息,PHP已经将这些信息定义为常量,而不需要开发者重新定义,这就是预定义函数。
常量名 | 功能 |
---|---|
_FILE_ | 默认常量,PHP程序文件名 |
_LINE_ | 默认常量,PHP程序行数 |
PHP_VERSION | 内建常量,PHP程序的版本,如PHP6.0.0-div |
PHP_OS | 内建行数,执行PHP解析器的操作系统名称,如Windows |
TRUE | 该函数是一个真值 |
FALSE | 该函数是一个假值 |
NULL | 一个null值 |
E_ERROR | 该常量指到最近的错误处 |
E_WARNING | 该常量指到最近的警告处 |
E_PARSE | 该常量指到解析语法有潜在问题处 |
E_NOTOCE | 该常量为发生不寻常处提示,但不一定是错误处 |
<?php
echo "当前文件路径:".__FILE__;
echo "<br>当前行数:".__LINE__;
echo "<br>当前PHP版本信息:".PHP_VERSION;
echo "<br>当前操作系统:".PHP_OS;
?>
五.PHP变量
在PHP中使用变量之前不需要声明变量,只需为变量赋值即可,PHP中的变量名称“$
符号+标识符”表示。标识符由字母、数字、或者下划线组成,并且不能以数字开头。
$name = "柒月笔记"
预定义变量:预定于变量
变量名称 | 说明 |
---|---|
$_SERVER['SERVER_ADDR'] | 当前运行脚本所在的服务器IP地址 |
$_SERVER['SERVER_NAME'] | 当前运行脚本所在服务器主机的名称,如果脚本运行在一个虚拟主机上,则该名称是由虚拟主机所设置的值决定 |
$_SERVER['REQUST_METHOD'] | 访问页面时的请求方法。如GET、HEAD、POST、PUT等,如果请求的方式时HEAD,PHP的脚本将在送出头信息后终止(意味着产生任何输出,不会有输出缓冲) |
$_SERVER['REMOTE_ADDR'] | 正在浏览当前页面用户的IP地址 |
$_SERVER['REMOTE_HOST'] | 正在浏览当前页面用户的主机名,反向域名解析基于该用户的REMOTE_ADDR |
$_SERVER['REMOTE_PORT'] | 用户连接到服务器时所使用的端口 |
$_SERVER['SCRIPT_FILENAME'] | 当前执行脚本的绝对路径名 |
$_SERVER['SERVER_PORT'] | 服务器所使用的端口,默认80、 |
$_SERVER['SERVER_SIGNATURE'] | 包含服务器版本和虚拟主机名的字符串 |
$_SERVER['DOCUMENT_ROOT'] | 当前运行脚本所在的文档根目录。在服务器配置文件中定义 |
$_COOKIE | 通过HTTPCookie传递到脚本的信息。这些cookie多数是由PHP脚本时通过setcookie()函数设置的 |
$_SESSION | 包含与所有会话变量有关的信息,主要用于会话就控制和页面之前值的传递 |
$_POST | 包含通过POST方法传递的参数和相关信息,用于获取通过GET方式提交的数据 |
$_GET | 包含通过GER方式传递的参数相关信息,用于获取通过GET方法提交的数据 |
$GLOBALS | 由所有已定义全局变量组成的数组。变量名就似乎该数据的索引。他可以称得上时所有超级变量的超级集合 |
六.PHP运算符
1.算数操作符
算数操作符是处理四则运算的符号,在对数字的处理中应用最多。
名称 | 操作符 | 举例 |
---|---|---|
加法运算 | + | a+a + a+b |
减法运算 | - | a−a - a−b |
乘法运算 | * | a∗a * a∗b |
除法运算 | / | a/a / a/b |
取余数运算 | % | aa % ab |
2.字符串操作符
字符串操作符只有一个,即英语的句号.
。将两个字符串链接起来,结合成一个新的字符串。
<?php
$a = 7 ;
$b = 24 ;
echo "一周有:".($c=$a*$b) ."小时";
echo "<br>";
echo "一周有:". $c*60 ."分钟";
?>
3.赋值操作符
赋值操作符是吧基本赋值操作符=
右边的值赋给左边的变量或者常量。
操作 | 符号 | 举例 | 展开形式 | 意义 |
---|---|---|---|---|
赋值 | = | $a=3 | $a=3 | 将右边的值赋值给左边 |
加等于 | += | $a+=3 | a=a=a=a + 3 | 将右边的值加到左边 |
减等于 | -= | $a-=3 | a=a=a=a - 3 | 将右边的值减到左边 |
乘等于 | *= | $a*=3 | a=a=a=a * 3 | 将左边的值乘以右边 |
除等于 | /= | $a/=3 | a=a=a=a / 3 | 将左边的值除以右边 |
连接字符 | .= | $a.="b" | a=a=a=a . "b" | 将右边的字符串加到左边 |
取余数 | %= | $a%=3 | a=a=a=a % 3 | 将左边的值对右边取余数 |
4.递增或递减操作符
两个加号++
连接在一起称为递增操作符。两个减号--
连接在一起称为递减操作符。
<?php
//前置递增
$a = 3;
$b = ++$a;
echo "前置递增运算后a的值为:".$a;
echo "<br />";
echo "b值为:".$b;
echo "<br />";
//后置递增
$c = 3;
$d = $c++;
echo "后置递增运算后C的值为:".$c;
echo "<br />";
echo "d的值为:".$d;
?>
5.逻辑操作符
逻辑操作符用来组合逻辑运算结果,是程序设计中一组非常重要的操作符。
操作符 | 举例 | 结果为真 |
---|---|---|
&& 或 and (逻辑与) | m && n | |
|| 或 or (逻辑或) | m∥∥m \|\| m∥∥n | |
xor (逻辑异或) | ||
! (逻辑非) |
6.比较操作符
比较操作符就是对变量或者表达式的结果进行大小,真假等比较,如果比较结果为真,则返回true,如果为假,则返回false。
转载自:https://juejin.cn/post/7385801028941955081