当前位置: 首页 > news >正文

PHP基础知识

【学习资料】
视频: https://www.bilibili.com/video/BV1Xh411S7G1?spm_id_from=333.788.videopod.episodes&vd_source=be26b82da70367069ab00d6db4f4ffc0
文档:https://www.runoob.com/php/php-tutorial.html

目录

  • 1,PHP是什么
  • 2,PHP能做什么
  • 3,PHP程序执行流程
  • 4,学习PHP需要什么基础
  • 5,PHP基础语法
    • 一,php程序
      • 1,php标记
      • 2,php代码
      • 3,php注释
    • 二,php变量
      • 1,声明变量
      • 2,变量命名规则
    • 三,php标量数据类型
      • 字符串
    • 四,php复合数据类型
    • 五,php特殊数据类型
    • 六,数组
      • php数组循环
    • 七,PHP条件判断
    • 八,PHP函数
      • 1,什么是函数?
      • 2,函数的分类
      • 3,String字符串函数
      • 4,Array数组函数
      • 5,自定义函数
      • 6,作用域
    • 九,PHP运算符
    • 十,循环
  • 6,PDO操作数据库
  • 7,类与对象
    • 类的三大特性
  • 8,命名空间
    • 创建命名空间

1,PHP是什么

PHP(Hypertext Preprocessor 超文本预处理器) 的简称,是一种被广泛应用的开源通用的服务器端脚本语言,适用于 Web 开发并可嵌入 HTML 中。

  • 通用:指跨平台,如:Windows、Linux、MacOS
  • 开源:意味着你可以轻松获取全部源代码,并进行定制或扩展
  • 免费:意味着你不必为PHP花一分钱,哪怕用在商业项目中
  • 服务器端:意味着你必须将它安装在服务器环境下才可以使用
  • 脚本语言:解释型语言,按编写顺序执行。是指不需要编译,直接由解释器/虚拟机执行的编程语言

2,PHP能做什么

  • 可以快速动态的生成HTML页面
  • 可以返回前端需要的各种类型的数据
  • 可以高效安全的处理表单数据
  • 可以安全的操作服务器上的文件
  • 可以控制与客户端的会话( Cookie/Session )
  • 可以对用户的行为进行授权控制
  • 可以高效安全的操作各种类型的数据库
  • 通过扩展,可以实现加密,压缩等其他功能
  • 可以提供接口数据,包括:小程序、APP、等其他语言

3,PHP程序执行流程

在这里插入图片描述

4,学习PHP需要什么基础

  • HTML:超文本标记语言
  • CSS:层叠样式标本
  • JavaScript:前端脚本编程语言

5,PHP基础语法

php文件默认扩展名是 .php;
php文件中可以包含html,css,JavaScript代码;

一,php程序

1,php标记

  • 开始标记<?php和结束标记?>中间写PHP代码;
  • 如果没有写结束标记,那么代表所有的代码都用php来解析;
<?php?>

2,php代码

指令描述
echo可以输出一个或多个字符串,用逗号(,)隔开
print只允许输出一个字符串
<?phpecho 111,222;print 111;
?>
; // 语句结束符

3,php注释

<?php// 这是单行注释/*这是多行注释注释后,在浏览器和网页源码中,是看不到的。*/
?>

二,php变量

1,声明变量

<?php$a = 'php中文网原创视频:《天龙八部》公益php培训系列课程汇总!';echo $a;
?>

2,变量命名规则

  • 开头不能用数字;
  • 中间不能有空格;
<?php// 下划线命名法$new_title = 'php中文网原创视频:《天龙八部》公益php培训系列课程汇总!';echo $new_title;echo '<hr>';// 小驼峰命名法$newTitle  = 'php中文网《玉女心经》公益PHP WEB培训系列课程汇总';echo $newTitle;echo '<hr>';// 大驼峰命名法$NewTitle  = 'html5中submit是按钮么';echo $NewTitle;
?>

三,php标量数据类型

在这里插入图片描述

echo 输出数据值,开发时使用;
var_dump 可以打印数据类型和值,测试时使用;<?php$x = true;var_dump($x); // 类型 值 =》 bool(true)echo '<hr>';$y = false;var_dump($y); // 类型 值 =》 bool(false)
?>

字符串

  • 引号内的数据;
  • 可以是单引号或双引号;
  • 字符串不用引号会报错;
  • 数字,浮点数,布尔型,用引号也属于字符串;

双引号与单引号的区别?

  • 双引号可以解析变量,单引号不行;
<?php$name = "欧阳";echo "我的名字:$name"; // 我的名字:欧阳echo '我的名字:$name'; // 我的名字:$name
?>

四,php复合数据类型

在这里插入图片描述

五,php特殊数据类型

在这里插入图片描述

六,数组

数组Array:数组可以在一个变量中存储多个值;

1,创建数组
<?php// 第一种方式$arr = array();var_dump( $arr ); //array(0) { }// 第二种方式$arrs = [];var_dump( $arrs ); //array(0) { }
?>2,创建索引数组
<?php$arr = array('欧阳','西门','灭绝'
);
var_dump( $arr ); // array(3) { [0]=> string(6) "欧阳" [1]=> string(6) "西门" [2]=> string(6) "灭绝" }
?>3,创建关联数组
<?php$arr = ['ouyang' => '欧阳','ximen' => '西门','miejue' => '灭绝'
];
var_dump( $arr ); // array(3) { ["ouyang"]=> string(6) "欧阳" ["ximen"]=> string(6) "西门" ["miejue"]=> string(6) "灭绝" }
?><?php$arr = ['ouyang' => '欧阳','ximen' => '西门','miejue' => '灭绝'
];
var_dump( $arr['miejue'] ); // string(6) "灭绝"
?>

print_r()打印数组

print_r() VS var_dump()<?php$arr = ['ouyang' => '欧阳','ximen' => '西门','miejue' => '灭绝'
];
var_dump( $arr); // array(3) { ["ouyang"]=> string(6) "欧阳" ["ximen"]=> string(6) "西门" ["miejue"]=> string(6) "灭绝" }
echo "<hr>";
print_r($arr);// Array ( [ouyang] => 欧阳 [ximen] => 西门 [miejue] => 灭绝 )
?>

php 连接符 .

<?php$arr = ['ouyang' => '欧阳','ximen' => '西门','miejue' => '灭绝'
];
echo "我的名字是" . $arr['ouyang'] . ",他的名字是" . $arr['ximen']; // 我的名字是欧阳,他的名字是西门
?> 

php数组循环

<?php$arr = array("ouyang" => "欧阳","ximen" => "西门","miejue" => "灭绝");//    第一种方法foreach($arr as $v) {echo $v;echo '<hr>';}//    第二种方法foreach($arr as $k => $v) {echo $k . '----' . $v;echo '<hr>';}

在这里插入图片描述

七,PHP条件判断

  // 三元运算符<?php$ouyang = '123';echo $ouyang ? '我知道了' : '我不知道';  // 我知道了// if …… else<?php$miejue = "西门";$ouyang = '';if($ouyang) {echo "我是欧阳";}elseif($miejue) {echo "我是西门";}// switch语句$str = '欧阳11';switch($str) {case '欧阳':echo "我是欧阳";break;case "西门":echo "我是西门";break;case "灭绝":echo "我是灭绝";break;default:echo $str;}// match 语句$str = 'ximeng';echo match($str) { // 西门"ouyang" => "欧阳克","ximeng" => "西门","miejue" => "灭绝",};- Match是一个表达式,表示其结果可以存储在变量中或返回;- Match分支仅支持单行表达式,不需要中断,陈述;- Match匹配进行严格的比较;

八,PHP函数

1,什么是函数?

  • 函数是一段可以重复执行的代码片断;
  • 函数是实现代码复用的重要手段;
  • 函数是现代编程语言最重要的基本单元;
  • 函数永远是编程的核心工作;

2,函数的分类

  • 系统函数:编程语言开发者事先写好提供给开发者直接使用的;
  • 自定义函数:用户根据自身需求,对系统功能进行扩展;

3,String字符串函数

在这里插入图片描述

4,Array数组函数

在这里插入图片描述

5,自定义函数

<?phpfunction fun_name($num1,$num2=20,$num3=30) {return $num1 + $num2 + $num3;};echo fun_name(10); // 60// 函数的基本语法:- 必须使用关键字 function声明;- 函数名称不区分大小写,多个单词推荐使用下划线连接;

6,作用域

- php中,只有函数作用域和全局作用域;
- 所有函数作用域中的变量,外部不可见;
- 全局作用域声明变量,在函数中是可见的;

九,PHP运算符

在这里插入图片描述

十,循环

<?php$int = 1;// while循环while($int < 10) {echo $int;$int++;}// do……while循环do {echo $int;$int++;}while($int < 10);// for 循环for($int=1; $int<10; $int++) {echo $int;}

continue

  • 结束当前循环,进入下次循环
  • 在循环语句中使用 while,for

break

  • 结束循环
  • 在循环语句中使用 while,for,switch
  • 可以跳出多层循环

6,PDO操作数据库

  • PDO:php数据对象
  • PDO统一了PHP访问各种类型数据库的访问方式;

7,类与对象

<?php// 创建类class Teacher {// 成员变量:类属性public $name = '灭绝师太';// 成员方法public function fun1() {return '姓名:' . $this->name . ' ,你好';}}// 调用类$ouyang = new Teacher(); echo $ouyang->name;  // 灭绝师太echo '<hr>';echo $ouyang->fun1(); // 姓名:灭绝师太 ,你好
<?php// 创建类class Teacher {// 成员变量:类属性public $name = '灭绝师太';public $school = "PHP中文网";// __construct 构造方法public function __construct($name,$school){$this->name = $name;$this->school = $school;}// 成员方法public function fun1() {return '姓名:' . $this->name . ' ,你好';}// __destruct 析构方法public function __destruct(){echo '<hr> 类执行完毕,要关闭了';}}// 调用类$ouyang = new Teacher("西门大官人",'php'); echo $ouyang->name; // 西门大官人echo '<hr>';echo $ouyang->fun1(); //姓名:西门大官人 ,你好

类的三大特性

  • 继承:可以让某个类型的对象获得另一个类型的对象的属性和方法;
  • 封装:指将客观事物抽象成类,每个类对自身的数据和方法实行保护;
  • public 默认的,关键词定义类内,类外,子类都可见;
  • protected 关键词定义类内,子类可见,类外不可见;
  • private 关键词定义类内可见,子类,类外不可见;
  • 多态:指同一个实体同时具有多种形式,它主要体现在类的继承体系中;

8,命名空间

解决全局成员的命名冲突问题;

创建命名空间

<?php// 第一种// namespace one {//     function php() {};// }// namespace two {//     function php() {};// }// 第二种namespace three;function php(){};namespace four;function php() {};
<?phpnamespace one;const name = "西门";function php(){echo "我是" . name;};// 调用 one命名空间的php方法php(); // 我是西门namespace tow;const name = "欧阳";function php() {echo "我是" . name;};php(); // 我是欧阳namespace one\two\three;const name = "灭绝";function php() {echo "我是" . name;}php(); // 我是灭绝
http://www.xdnf.cn/news/455743.html

相关文章:

  • 以项目的方式学QT开发(二)
  • Apple Vision Pro空间视频创作革命:从180度叙事到沉浸式语法的重构——《Adventure》系列幕后技术深度解析
  • AI浪潮:开启科技新纪元
  • 数据分析NumPy
  • wps excel将表格输出pdf时所有列在一张纸上
  • RabbitMQ 消息模式实战:从简单队列到复杂路由(一)
  • 数据可视化-----子图的绘制及坐标轴的共享
  • C语言经典笔试题目分析(持续更新)
  • conda更换清华源
  • Spring Cloud探索之旅:从零搭建微服务雏形 (Eureka, LoadBalancer 与 OpenFeign实战)
  • Synchronized详解及高频面试问答
  • CSRF 和 XSS 攻击分析与防范
  • Python爬虫第21节- 基础图形验证码识别实战
  • 前端的面试笔记——JavaScript篇(二)
  • 数字孪生工厂实战指南:基于Unreal Engine/Omniverse的虚实同步系统开发
  • 图像颜色理论与数据挖掘应用的全景解析
  • OrangePi Zero 3学习笔记(Android篇)9 - I2C和从设备
  • 【AI News | 20250514】每日AI进展
  • 如何通过命令提示符(CMD)检查虚拟化是否已启用
  • 任意复杂度的 JSON 数据转换为多个结构化的 Pandas DataFrame 表格
  • 吊舱夜视聚光灯模块设计的要点概述
  • vxe-table 同时实现合并单元格与任意列展开行
  • gmsh读取 STEP 文件并划分网格
  • eBPF 开源项目 Cilium 深入分析
  • Express项目解决跨域问题
  • 代码随想录 算法训练 Day1:数组
  • Vue 3 打开 el-dialog 时使 el-input 获取焦点
  • C#扩展方法的入门理解
  • 【证书与信任机制​】自签名证书的风险与适用场景​​
  • 白日梦:一个方便快捷的将故事制作成视频的工具