PHP 学习笔记(1)
提示:学习过程中所记录的一些PHP内容
PHP 学习笔记目录
一、PHP 介绍
- 什么是PHP?
PHP(超文本预处理器),是一种在服务器段执行的脚本语言,是常用的网站编程语言,混合了C、Java、Perl以及PHP自创的语法。
PHP是一门弱类型语言,不必向PHP声明该变量的数据类型。 - 使用范围
主要适用于Web开发领域 - 特点
a. 开源性和免费性
b. 快捷性
c. 数据库连接的广泛性
d. 面向过程和面向对象并用 - 开发环境
a. phpStudy
官网:https://www.xp.cn/download.html
下载地址:
Windows 版:https://www.xp.cn/download.html
Linux 版:https://www.xp.cn/linux.html
Mac OS 版:等待苹果应用市场审核后发布
b. WAMP
下载地址:https://sourceforge.net/projects/wampserver
c. AppServ
官网:https://www.appserv.org/en
d. XAMPP
官网:https://www.apachefriends.org/zh_cn/index.html
二、PHP 基本框架
代码框架,以 " <?php " 开始,以 " ?> "结尾,中间写入PHP代码
用PHP在界面上显示"Hello world!",PHP代码示例:
<?php
echo "Hello World!";
?>
运行结果:
三、PHP 基本语法
1、PHP 注释
用来标记和明确相关代码的含义或者功能的作用
示例代码:
<?php
// 这是单行注释
/*
这是多行注释
内容1
内容2
*/
?>
2、PHP 输出
2.1 echo 语句
常用的输出语句,可以加上括号也可以不加括号,可以输出一个或者多个字符串。echo中可 HTML 标签,会进行一定的转化
示例代码:
<?php
echo "这是不加括号的情况";
echo "<br>";
echo ("这是加入括号的情况");
?>
运行结果:
2.2 print 语句
输出语句。有返回值,输出成功返回1,输出失败返回0。只能输出简单类型的变量。可以使用括号,也可以不使用括号。print 中也可使用 HTML 标签
示例代码:
<?php
print "不使用括号";
print "<br>";
print ("使用括号");
?>
运行结果:
2.3 printf 语句
格式化输出字符串,与 C/C++ 语言相同,用于字符串中以 % 开头的格式字符串替换。必须要带上括号
示例代码:
<?php
printf("%d,%s",12,'2342345');
?>
运行结果:
2.4 print_r 语句
输出数组、对象等符合类型数据。必须要带上括号
示例代码:
<?php
$arr = Array("zs","ls","ww");
print_r($arr);
?>
运行结果:
2.5 var_dump 语句
判断一个变量的类型和长度,并输出变量的数值,通过缩进显示。必须要带上括号
示例代码:
<?php
var_dump ("what's your name?");
?>
运行结果:
2.6 sprintf 语句
函数也用做字符串格式化,与 printf 函数基本相同,它可以转化之后保存到一个字符串变量中,而不是直接输出。
示例代码:
<?php
$formatted = sprintf ( "%0.2f ", '123.1' ) ;
echo $formatted;
?>
运行结果:
3、PHP 变量
3.1 PHP 变量命名规则
- 变量以 $ 符号开始,后面跟随变量名称
- 变量名必须以字母或者下划线开始
- 变量名只能包含字母数字以及下划线
- 变量名区分大小写
3.2 PHP 变量命名示例
示例代码:
<?php
$tmp1 = 10;//正确
$str1 = "inter";//正确
$ch1 = '3';//正确
$_Static1 = 3.14;//正确
/*
错误示例:
$0_static
$ tmp
*/
echo $tmp1;
echo "<br>";
echo $str1;
echo "<br>";
echo $ch1;
echo "<br>";
echo $_Static1;
?>
运行结果:
3.3 PHP 变量作用域
PHP 变量作用域类型:
- local
- global
- static
- parameter
PHP 作用域:全局作用域和局部作用域
- 全局作用域:只能用在函数外部使用
- 局部作用域:只能用在函数内部使用
global 关键字:用于函数内访问全局变量。
- 写法1:global 变量名;
- 写法2:$GLOBALS[‘变量名名称’]
static 作用域:为了有些局部变量不被删除,可以在第一次声明变量的时候使用 static 关键字
3.4 PHP 变量作用域示例
示例代码 1:
<?php
$x = 50;//全局变量
function showInfo(){
$y =100;//局部变量
$x += $y;
echo "<br>";
}
echo $x;
showInfo();
echo $x;
?>
运行结果:
示例代码 2:
<?php
$x = 50;//全局变量
function showInfo(){
global $x;//引用全局变量
$y =100;//局部变量
$x += $y;
echo "<br>";
}
echo $x;
showInfo();
echo $x;
?>
运行结果:
示例代码 3:
<?php
function haveNoStatic(){
$x = 0;//没有static关键字
$x++;
printf("%s %d", "x 的值为 " , $x);
echo "<br>";
}
function haveStatic(){
static $y = 0;//含有static关键字
$y++;
printf("%s %d", "y 的值为 " , $y);
echo "<br>";
}
haveNoStatic();
haveNoStatic();
haveStatic();
haveStatic();
?>
运行结果:
4、 PHP 数据类型
- String (字符串)
- Integer(整型)
- Float(浮点型)
- Boolean(布尔型)
- Array (数组)
- Object(对象)
- NULL(空值)
示例代码 :
<?php
$str = "这是一个字符串";
$num = 1;
$float1 =1.1;
$flag = true;
$arr = Array("zs","ls","ww");
class Cars{
public $length = 30;
public $width = 10;
public $hight = 20;
//function __construct(){}
public function __construct($length,$width,$hight){
$this->length = $length;
$this->width = $width;
$this->hight = $hight;
}
public function show(){
echo "该汽车的长宽高分别为:". $this->length ." : ". $this->width ." : ". $this->hight;
}
}
$noval;
var_dump($str);
echo "<br>";
var_dump($num);
echo "<br>";
var_dump($float1);
echo "<br>";
var_dump($flag);
echo "<br>";
$car1 = new Cars(20,10,15);
var_dump($car1);
echo "<br>";
$car1->show();
echo "<br>";
var_dump($noval);
?>
运行结果:
5、 PHP 运算符
5.1 PHP 算术运算符
符号 | 名称 | 功能 |
---|---|---|
+ | 加 | 两数求和 |
- | 减 | 两数做差 |
* | 乘 | 两数之积 |
/ | 除 | 求商 |
% | 模 | 求余 |
- x | 取反 | 正负颠倒 |
a . b | 并置 | 连接ab |
5.2 PHP 赋值运算符
符号 | 名称 | 功能 |
---|---|---|
= | 等于 | 右侧数(右侧的变量数)的值赋给左侧变量 |
+= | 加等 | 左侧变量的数加右侧数(右侧的变量数)之后赋值左侧变量 |
-= | 减等 | 左侧变量的数减右侧数(右侧的变量数)之后赋值左侧变量 |
*= | 乘等 | 左侧变量的数乘右侧数(右侧的变量数)之后赋值左侧变量 |
/= | 除等 | 左侧变量的数与右侧数(右侧的变量数)求商赋值左侧变量 |
%= | 模等 | 左侧变量的数与右侧数(右侧的变量数)取余赋值左侧变量 |
a .= b | 连接等 | 连接ab,并赋值给a |
5.3 PHP 递增/递减运算符
符号 | 名称 | 功能 |
---|---|---|
– x | 后减减 | 先减,后返回 |
x – | 前减减 | 先返回,后减 |
++ x | 后加加 | 先加,后返回 |
x++ | 前加加 | 先返回,后加 |
5.4 PHP 比较运算符
符号 | 名称 | 功能 |
---|---|---|
== | 等于 | 只要看起来相同即可,不与类型相比骄傲 |
=== | 绝对等 | 类型相同,数值相同 |
!= | 不等 | 两个操作对象不同,类型和数值不相同 |
<> | 不等 | 既不大于也不小于,不限于数值 |
!== | 绝对不等 | 数值不同,或类型也不同 |
< | 小于 | 前者小于后者 |
> | 大于 | 前者大于后者 |
<= | 大于等于 | 后者大于等于前者 |
>= | 小于等于 | 前者小于等于后者 |
5.5 PHP 逻辑运算符
符号 | 名称 | 功能 |
---|---|---|
and | 与 | 两者必须同时为真 |
or | 或 | 一真即真 |
xor | 异或 | 有且仅有一个为真 |
&& | 与 | 两者必须同时为真 |
|| | 或 | 一真即真 |
! | 非 | 真变假,假变真 |
5.6 PHP 数组运算符
符号 | 名称 | 功能 |
---|---|---|
+ | 并 | 两个集合的并集 |
== | 相等 | key 和 value 一一相等,不要求顺序 |
=== | 恒等 | key 和 value 一一相等,且顺序相同 |
!= | 不相等 | 两个数组内容不同 |
<> | 不相等 | 两个数组内容不同 |
!== | 不恒等 | 两个数组不同 |
5.6 PHP 三目运算符
- 格式:expression1 ? expression2 : expression3
含义:expression1是否为真?是,执行expression2;否,执行exception3
5.7 PHP 组合比较符
符号:<=>
- 含义1:如果前者大于后者,返回值为 1
- 含义2:如果前者等于后者,返回值为 0
- 含义3:如果前者小于后者,返回值为 -1
后续章节链接:https://blog.csdn.net/BestForMe/article/details/108857112