目录

PHP概述

PHP运行环境安装

Web原理简述

PHP 基本语法

特点:

指令分隔符 [;]

注释(和C语言类似)

简单的PHP语句

PHP语法错误:

变量

变量的声明

初始化

赋值

[=]

引用赋值 $c =&$a

变量的释放

变量的命名

可变变量

变量的类型

常量

预定义常量

运算符

算术运算符(见代码)

逻辑运算符

运算符优先级

比较运算符

赋值运算符

算术赋值运算符 ¶

其他赋值运算符 ¶

其他运算符

流程控制语句

顺序执行

分支执行

单向分支

双向分支

多向分支

循环语句

while

do while

for(好!)

特殊流程控制语句

九九乘法表


PHP概述

- PHP是一门编程语言,PHP主要目的是允许网络开发人员快速编写动态页面
- 简单来说PHP主要被用于开发各种类型的网站程序
- 细化点说PHP可以用于收集表单数据,生成动态网页,字符串处理,动态输出图像,处理服务端文件,与数据库交互,会话跟踪,处理XML文件,支持大量的网络协议,服务器端的其他相关操作!
- PHP是解释型脚本语言不需要事先编译,运行在服务器端
- PHP可以运行在windows、linux等各种操作系统上!

专门用于开发网站的
脚本后缀名.php 可以与HTML语言进行混编,脚本后缀依然是.php(还可以在PHP代码中输出HTML语言)
解释型语言,不要编译直接运行

弱类型

PHP运行需要环境:
Windows: phpstudy
Linux: 单独安装(不是系统自带的)

PHP运行环境安装

Apache+PHP+MySQL是PHP比较流行的生存环境

LAMP

Web原理简述

1.打开浏览器
2.输入URL地址
3.显示网站内容

PHP 基本语法

PHP 语言标记

开始标记 <?php

结束标记  ?>

特点:

1、<?php?>这之间就表示进入PHP模式,在开始和结束处之外的内容都会被PHP解析器忽略

2、可以直接嵌入到html代码中,并且可以嵌入到html代码中的任何地方

3、在一个html文档中可以嵌入任意多个PHP标记

4、文件末尾的PHP代码结束标记可以不要,在一些情况下省略掉更好

指令分隔符 [;]

一个php语句必须(建议)要用分号结束

注释(和C语言类似)

单行注释 //

多行注释 /*  */

注意:

php代码中注释,不会显示在浏览器的源代码中。

php运行环境是服务器,我们浏览器看到的是PHP引擎运行PHP代码后的执行结果

在我们PHP引擎解释PHP代码的时候,注释被自动过滤掉了。
为什么HTML代码客户端可以看到源代码?
因为HTML运行环境是浏览器!

简单的PHP语句

1、phpinfo();

2、echo 用于输出简单的变量

3、var_dump(); 用于输出变量值及其变量类型

PHP语法错误:

Error             会结束脚本执行
Warning        只提示,不影响执行
Notice           只提示,不影响执行

变量

变量的声明

不需要声明变量,但要初始化

初始化

给变量初次赋值,或者变量的默认值

赋值

[=]  

根据实验说明:PHP脚本是顺序执行的

引用赋值 $c =&$a

相当于给$a起了一个别名,$c值的改变,$a也随之改变

<?php
$a=10;
$b=$a;
$b=$b+1;
echo $a;  //10
echo "|";
echo $b;  //11
echo "<hr />";
$c=&$a; //$a和$c实际上指向的是同一块内存空间(相当于给$a起了一个别名)
$c=$c+1;
echo $a; //11
echo "|";
echo $c; //11
?>

变量的释放

unset()

<?php
echo "This is var.php";
echo "<hr />";
echo "<span style='color:pink;background-color:blue'>123</span>";
?>//一个页面中可以插入多个PHP标记(不能混用)
<hr /><?php
//PHP在使用变量的时候不需要进行变量声明,
//如果一个变量没有初始化,内存中就没有这个变量。
echo $name;
$name="AJEST";
echo "<br />";
echo $name;
echo "<br />";
unset($name); //释放了变量
echo $name;?>

变量的命名

@  以$符号开头

@  严格区分大小写

@  字母|数字|下划线,不能以数字开头

$name1
$my_name
$_my_name
$1_name   错误

@  尽量不要使用php关键字作为变量名

可变变量

<?php
$name="hello";
$$name="world";
echo $name;  //输出hello
echo "<br />"
echo $$name; //world
echo $hello;//实际上$hello是$$name
?>

变量的类型

布尔类型 
true false,其他均会被认为true

以下所有内容会被当做false

布尔值false
0
浮点型0.0
空白字符串和字符串0
没有成员的数组
NULL

var_dump(); 用于输出变量值及其变量类型

int  存储整数

float 存储小数 3.14

字符串 string

字符串的定义:

@    '  '

@    " "

@   定界符

注意:

@单引号定义的字符串中出现单引号要转义[\]

@单引号定义的字符串中,[$] 符号原样输出

@双引号定义的字符串中,[$] 是变量的开始,整体变量名用{ }括起来

@单双引号定义的字符串中输入的特殊字符包括 [ ' , " , $ ...]需要转义

@定界符开始和结束后面不能有任何字符包括空白字符和注释

数组

对象 不讲

常量

不变的量

定义   define("NAME","GGG");

直接使用即可

预定义常量

常量名                                      常量值
__FILE__                                 当前的文件名(文件名带路径)
__LINE__                                 当前的行数
__FUNCTION__                      当前的函数名
__CLASS__                             当前的类名
__METHOD__                         当前的对象的方法名
PHP_OS                                  UNIX或WINNT等
PHP_VERSION                       当前的PHP服务器的版本
DIRECTORY_SEPARATOR     \或/    根据操作系统决定目录的分隔符

运算符

算术运算符(见代码)

取模就是取余数。

逻辑运算符

php手册

非            !

与            and 或者 &&

或            or ||

异或         xor 不同为真,相同为假

与运算的优先级高于或运算

赋值运算符的优先级高于逻辑运算符

运算符优先级

括号的使用,哪怕在不是必要的场合下,通过括号的配对来明确标明运算顺序,而非靠运算符优先级和结合性来决定,通常能够增加代码的可读性。
下表按照优先级从高到低列出了运算符。同一行中的运算符具有相同优先级,此时它们的结合方向决定求值顺序。

运算符优先级
结合方向 运算符 附加信息
不适用 clone new clone 和 new
** 算术运算符
不适用 ++ -- ~ (int) (float) (string) (array) (object) (bool) @ 类型、递增/递减
instanceof 类型
不适用 ! 逻辑运算符
* / % 算术运算符
+ - . 算术运算符 和 字符串运算符
<< >> 位运算符
< <= > >= 比较运算符
== != === !== <> <=> 比较运算符
& 位运算符 和 引用
^ 位运算符
| 位运算符
&& 逻辑运算符
|| 逻辑运算符
?? null 合并运算符
? : 三元运算符
= += -= *= **= /= .= %= &= |= ^= <<= >>= ??= 赋值运算符
不适用 yield from yield from
不适用 yield yield
不适用 print print
and 逻辑运算符
xor 逻辑运算符
or 逻辑运算符

比较运算符

比较运算符
例子 名称 结果
$a == $b 等于 true,如果类型转换后 $a 等于 $b。
$a === $b 全等 true,如果 $a 等于 $b,并且它们的类型也相同。
$a != $b 不等 true,如果类型转换后 $a 不等于 $b。
$a <> $b 不等 true,如果类型转换后 $a 不等于 $b。
$a !== $b 不全等 true,如果 $a 不等于 $b,或者它们的类型不同。
$a < $b 小与 true,如果 $a 严格小于 $b。
$a > $b 大于 true,如果 $a 严格大于 $b。
$a <= $b 小于等于 true,如果 $a 小于或者等于 $b。
$a >= $b 大于等于 true,如果 $a 大于或者等于 $b。
$a <=> $b 太空船运算符(组合比较符) 当$a小于、等于、大于 $b时 分别返回一个小于、等于、大于0的 int 值。

当两个操作对象都是 数字字符串, 或一个是数字另一个是 数字字符串, 就会自动按照数值进行比较。 此规则也适用于 switch 语句。 当比较时用的是 === 或 !==, 则不会进行类型转换——因为不仅要对比数值,还要对比类型。

比较参与运算的单元是否相同,相同为真,不同为假

<?php
var_dump(0 == "a"); // 0 == 0 -> true
var_dump("1" == "01"); // 1 == 1 -> true
var_dump("10" == "1e1"); // 10 == 10 -> true
var_dump(100 == "1e2"); // 100 == 100 -> trueswitch ("a") {
case 0:echo "0";break;
case "a": // never reached because "a" is already matched with 0echo "a";break;
}
?>

赋值运算符

算术赋值运算符 ¶

例子 等同于 操作
$a += $b $a = $a + $b 加法
$a -= $b $a = $a - $b 减法
$a *= $b $a = $a * $b 乘法
$a /= $b $a = $a / $b 除法
$a %= $b $a = $a % $b 取模
$a **= $b $a = $a ** $b 指数

其他赋值运算符 ¶

例子 等同于 操作
$a .= $b $a = $a . $b 字符串拼接

其他运算符

$a= 10>20 ? 10:20(三元运算符)

``    将字符串当作命令执行(不是单引号,是Tab上面的那个键)

@   屏蔽提示,警告

<?php
$a=10<20?10:20;
echo $a;
echo "<hr />";
echo `ping www.baidu.com`;
?><hr /><?php
echo `whoami`;
echo "<hr />";
echo @$name;  //直接写$name会报Notice,在前面加一个@,屏蔽警告、提示
?>

流程控制语句

顺序执行

PHP代码执行的时候,依次顺序执行

分支执行

单向分支

if(判断条件){执行语句块}

双向分支

if(判断条件){执行语句块1}else{语句块2}

多向分支

if(判断条件){执行语句块1}elseif{语句块2}elseif{语句块3}....

elseif

switch

case

default

case后面的语句是不需要用大括号括起来的!

循环语句

while

当满足条件时,执行

计数器,变量

判断条件

do while

先执行再判断

for(好!)

特殊流程控制语句

break;  跳出本层循环

break 2;  跳出两层循环

continue; 跳过本次循环

die()    结束本次脚本执行

exit()   结束本次脚本执行

九九乘法表

【CyberSecurityLearning 45】PHP基础+变量、运算符、流程控制语句相关推荐

  1. java跳转控制语句有哪些_Java语言基础学习之流程控制语句和跳转控制语句实例分析...

    本文主要向大家介绍了Java语言基础学习之流程控制语句和跳转控制语句实例分析,通过具体的内容向大家展示,希望对大家学习JAVA语言有所帮助. 一.流程控制语句 在一个程序执行的过程中,各条语句的执行顺 ...

  2. java基础起步三-流程控制语句中的条件语句

    文章目录 流程控制语句结构: 1. 顺序结构 2. 分支结构 3. 循环结构 分支结构语法: 1. 单分支结构; 2. 双分支结构 3. 多分支条件语句: 选择结构 语法: 注意: 输入输出案例 练习 ...

  3. javascript基本语法(输入输出语句,变量常量,数据类型,运算符,流程控制语句,数组,函数)

    javascript javascript介绍 JavaScript 是一种客户端脚本语言.运行在客户端浏览器中,每一个浏览器都具备解析 JavaScript 的引擎. 脚本语言:不需要编译,就可以被 ...

  4. python语言流程控制语句的格式_慢步学python,编程基础知识,流程控制语句if

    慢步业余学python编程,今天休息继续分享python编程知识. 面向过程编程,重要的是程序的流程,今天说说流程控制语句if. 在我们高中数学中就有流程图的学习,只是没有真正应用起来而已,办公软件也 ...

  5. JS基础02之流程控制语句

    if-else-if多分支语句 练习案例1 说明:输入学生的成绩并根据成绩给出相应的等级, 等级评定标准: 成绩在90–100(包含)之间,显示 A,成绩在80–90(包含)之间, 显示 B,成绩在7 ...

  6. python两个for循环流程图_Python基础2:流程控制语句 while / for循环

    [ while 循环 ] 如果要计算1+2+3,我们可以直接写表达式: >>> 1 + 2 + 3 要计算1+2+3+...+10,勉强也能写出来. 但是,要计算1+2+3+...+ ...

  7. Javascript 基础—变量 运算符

    经过找工作笔试的洗礼,感觉自己js语法方面掌握的不是很系统,今天来梳理下--变量以及运算符. 基础篇 和C语言的不同点:是一种弱类型语言,申明变量时不需要指定类型:变量名的命名方法也有不同:简单类型种 ...

  8. VBScript基础,变量,函数,流程

    文章目录 1 VBScript基础 1.1 Option Explicit 2 函数和过程 2.1 过程 2.2 函数 2.3 调用过程和函数 2.3.1 过程调用 2.3.2 函数调用 2.4 退出 ...

  9. python基础-变量运算符(3)

    一.注释 注释就是对代码的解释和说明.目的是为了让别人和自己很容易看懂.为了让别人一看就知道这段代码是做什么用的.正确的程序注释一般包括序言性注释和功能性注释.序言性注释的主要内容包括模块的接口.数据 ...

  10. decode语句不能再嵌套_自学C++基础教程【流程控制语句】(for、while 、do while 语句 )...

    for语句 for语句是C++语言所提供的一种功能广泛的循环语句. 下图为for语句的标准形式: 表达式1:通常用于给循环变量赋初值,一般是赋值表达式. 表达式2:通常用于设立循环条件,一般为关系表达 ...

最新文章

  1. centos7 harbor 单机搭建
  2. 【Android 逆向】Frida 框架 ( 安装 frida 12.7.5 | 安装 frida-tools 5.1.0 | PC 端 frida 与 安卓模拟器端 frida-server )
  3. VTK:PolyData之LoopBooleanPolyDataFilter
  4. VTK:几何对象之Point
  5. 【实战 Ids4】║ 控制台密码模式搭配Ocelot网关
  6. windows10安装mysql 8.0_手把手教你在Windows 10安装MySQL 8.0(详细图文)
  7. python像素处理_Python 处理图片像素点的实例
  8. C语言中指针的基类型,c – 将指针从一种基类型转换为另一种基类型
  9. app.honeycomb.Shell$HomeActivity failed to start
  10. 2021最新SSM博客,功能完善,初云博客增强版
  11. LACP模式链路聚合
  12. 人工智能:一种现代的方法 书本课后习题解答
  13. 美观实用的BeautifulReport测试报告
  14. 极域电子书包课堂管理系统怎么控屏_极域电子教室使用说明
  15. 粒子群算法的几个适应度评价函数
  16. mysql批量添加空行_MySQL加入空行
  17. Ubuntu安装ESPNET(搞了一个多月)
  18. Java开发指南!java生成word文档修改样式
  19. Django教程 —— 初步完善图书管理系统
  20. JavaScript案例之使用验证码进行简单判断

热门文章

  1. Java反射之反射权限和静态属性的赋值
  2. 《深入理解计算机系统(英文版.第2版)》
  3. 什么是LambdaExpression,如何转换成Func或Action(2)
  4. Hadoop wordcount
  5. Linux gdb调试器
  6. js数据类型判断和数组判断
  7. Spring 3.0 注解注入详解
  8. C++ unique and erase问题处理
  9. 吴恩达 coursera ML 第十三课总结+作业答案
  10. Python学习笔记:Day1-2 开发环境搭建