Blogger Information
Blog 26
fans 0
comment 0
visits 21818
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
php环境与变量
溪边小树
Original
1104 people have browsed it

phpstudy 安装与配置

1. phpstudy 是什么

  • phpstudy 是 php 集成运行环境工具包,内置了 php 开发的常用软件和工具
  • phpstudy 省去了用户用手工逐一配置 PHP 程序运行环境的烦恼

2. phpstudy 内置了哪些软件

序号 工具 描述
1 web 服务器 Apache + Nginx
2 php 程序 php5.3 - 7.3
3 mysql 管理工具 phpmyadmin

3. phpstudy 下载地址


4. phpstudy 常用配置有哪些

  • 为了方便教学,我们配置一个本地主机:php.edu,模拟线上生产环境
  • 更多 phpstudy 配置技术, 可以到官网查阅文档
  • 也可以观看相关视频教程:https://www.php.cn/course/1066.html

5. 如何测试

  • 在默认 web 目录下创建一个: index.php程序,写入 <?php phpinfo();
  • 在默认浏览器中访问: php.edu,看到欢迎信息即安装并配置成

vscode 安装与配置

1. vscode 是什么

  • vscode 是由微软公司开发的一款免费,开源的文本编辑器
  • vscode 内置了大量插件,支持几乎所有编程语言的学习与开发
  • vscode 跨平台,可以在 Windows / MacOS / Linux 上运行

2. vscode 常用插件是哪些

序号 名称 描述
1 auto rename tag html 自动更新配对标签名称
2 highlight matching tag 自动高亮显示结束括号/标签
3 bracket pair colorizer 为嵌套的各种括号添加不同颜色
4 path intellisense 智能路径提示
5 markdownlint 优秀的 markdown 语法检查器
6 markdown preview enhanced 最火的 markdown 实时预览工具
7 prettier-code formatter 更优秀的代码美化/格式化工具
8 open in browser 在默认浏览器打开当前文件
9 php intelephense 超好用 php 智能代码提示器
10 php intellisense php 代码自动完成插件

3. 如何配置 php 代码检查器

在 vscode 配置文件 settings.json 中添加

  1. // 版本与路么替换成你当前系统中的php可执行文件路径与版本号即可
  2. // "intelephense.environment.phpVersion": "7.4.1",
  3. "php.validate.executablePath": "D:/phpstudy_pro/Extensions/php/php7.3.4nts/php.exe"

4. 如何测试 php 代码检查器

  • 创建 php 脚本: demo.php
  • 随意写点代码,故意写错,看是否有警告信息

php 程序

1. php 是什么

  • PHP: (PHP: Hypertext Preprocessor), 超文本预处理器的缩写
  • PHP 是开源的,免费的,运行在服务端的,用来动态生成网页数据的脚本语言
  • 所谓脚本语言,是指不需要编译,直接由解释器/虚拟机执行的编程语言

2. php 程序执行流程

  • php 程序是用 php 指令编写并由 php 解析器执行的代码
  • php 程序必须使用.php做为扩展名
  • php 程序可以使用标签方式嵌入到 html 文档中

执行流程哪下:

  1. 客户端请求服务器端的 php 程序
  2. 服务器端将 php 程序转发给 php 解释器执行
  3. php 解释器执行完毕将生成的 html 或其它内容返回到服务器
  4. 服务器将最终生成的 html 代码做为响应内容返回客户端

3. php 集成运行环境

初学者推荐使用集成环境,省去手工逐一安装配置麻烦

序号 集成环境 操作系统 描述
1 phpStudy Windows / Linux 中文,免费,功能全, 推荐
2 MAMP MacOS 英文,收费, 功能全, 推荐

4. php 程序文档

序号 组成 描述
1 <?php ... ?> PHP 代码标记
2 ; 分号 语句分隔符,代码块使用右大括号
3 空白符 合理使用空白符可增强代码可读性
4 注释 // 单行注释, /* 多行注释 */

php 标记之外的内容会原样返回客户端,如 html 代码


5. 打印结果

序号 指令 描述
1 echo 语言结构, 可查看多个变量
2 print 语言结构,功能与echo类似,区别是有返回值
3 print_r() 函数,以更容易理解的格式打印变量信息,常用于数组
4 var_dump() 函数,可查看一个变量更多信息,如类型
5 var_export() 函数,输出或返回一个变量的字符串表示(源代码)

实际工作中, echovar_dump()基本可以满足大多数需求

示例1

  1. <!DOCTYPE html>
  2. <?php
  3. // php程序文档
  4. function sum(int $a, int $b) : string
  5. {
  6. return "$a + $b = " . ($a + $b) ;
  7. }
  8. echo sum(10, 70);
  9. ?>
  10. <html lang="en">
  11. <head>
  12. <meta charset="UTF-8">
  13. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  14. <title>
  15. </title>
  16. </head>
  17. <body>
  18. </body>
  19. </html>

示例2

  1. <?php
  2. # php打印结果
  3. $email = 'admin@php.cn';
  4. // echo, 没有返回值
  5. echo $email, '<br>';
  6. // print, 有返回值,如果成功返回1
  7. // echo , print 不是函数, 是语言结构, 指令
  8. echo print $email;
  9. echo '<hr>';
  10. // var_dump(): 函数
  11. var_dump($email);
  12. echo '<hr>';
  13. // var_export(): 函数
  14. var_export($email);

示例3

  1. <?php
  2. # 变量命名
  3. $username = 'admin';
  4. $userName = 'peter';
  5. // 变量名区分大小写
  6. echo $username, '<br>' , $userName, '<hr>';
  7. // 没有使用$开始, 正确的变量必须使用$做为起始符号
  8. // hello = 'php';
  9. // 变量名中不允许使用数字开始
  10. // $123abc = 'php';
  11. // 变量名中使用了特殊符号
  12. // $user@id = 100;
  13. // 变量名: $ + php标识符
  14. // php有效标识符
  15. // 必须由以下三种字符组成: 大小写的英文字母, 下划线, 数字, 且不能以数字开始
  16. // 正确但无意义
  17. $aaa = 'php.cn';
  18. $_ = 888;;
  19. $_123 = 999;
  20. echo $_123;

示例4

  1. <?php
  2. # php变量是弱类型
  3. $var = 100;
  4. var_dump($var);
  5. echo '<hr>';
  6. $var = 'Hello';
  7. var_dump($var);

示例5

  1. <?php
  2. // 值传递和引用传递
  3. //1. 值传递
  4. $price1 = 99;
  5. // 只是将$price1变量的值赋值给了一个新变量
  6. $price2 = $price1;
  7. echo $price1, '----', $price2, '<br>';
  8. // 更新
  9. $price1 = 299;
  10. echo $price1, '----', $price2, '<br>';
  11. echo '<hr>';
  12. // 2. 引用传递
  13. $price1 = 99;
  14. // 引用赋值, &: 取地址符, 引用符
  15. // 相当于给原变量起了一个别名
  16. $price2 = &$price1;
  17. echo $price1, '----', $price2, '<br>';
  18. // 更新
  19. $price1 = 299;
  20. echo $price1

示例6

  1. <?php
  2. # 可变变量: 变量的标识符/变量名称,可以动态的改变, 变量名可以来自另一个变量
  3. $var = 'email';
  4. // 变量名email, 恰好是变量$var的值
  5. // $email = 'peter@php.cn';
  6. $$var = 'peter@php.cn';
  7. echo $email;

示例7

  1. <?php
  2. // error_reporting(E_ALL);
  3. # 检测与删除变量
  4. // echo $username;
  5. if (isset($username)) echo $username, '<br>';
  6. $username = 'peter zhu';
  7. // 变量删除/销毁
  8. unset($username);
  9. if (isset($username)) {
  10. echo $username, '<br>';
  11. } else{
  12. echo '变量未定义';
  13. }
  14. echo '<hr>';
  15. // 变量已定义而未初始化,默认用NULL进行赋值
  16. // 初始化:第一次赋值
  17. // 更新/修改: 第二次赋值
  18. $email;
  19. $email = null;
  20. var_dump(is_null($email));
  21. echo '<hr>';
  22. $var = '';
  23. var_dump(is_null($var));
  24. var_dump(empty($var));

示例8

  1. <?php
  2. # 数据类型
  3. // 1. 基本类型
  4. // 字符串: string
  5. $name = '手机';
  6. // 数值: int, float
  7. $price = 3890;
  8. // 布尔: true / false
  9. $is5G = true;
  10. echo gettype($is5G),'<hr>';
  11. // 2. 复合类型
  12. // 对象
  13. $obj = new stdClass;
  14. $obj->email = 'admin@php.cn';
  15. echo $obj->email . '<br>';
  16. // 数组
  17. $arr = ['电脑', 8000, 'huawei'];
  18. // $str=print_r($arr, true);
  19. // echo '<pre>'.$str.'</pre>';
  20. echo '<pre>'.print_r($arr, true).'</pre>';
  21. // 3. 特殊类型
  22. $num = null;
  23. var_dump($num);
  24. // 资源类型, 文件
  25. $f = fopen('demo7.php','r');
  26. var_dump($f);
  27. echo gettype($f),'<hr>';
  28. if (gettype($f) === 'resource') {echo 'demo7.php是一个文件';}

课程学习小结

本次课程首先介绍了phpstudy和vscode环境的安装与配置,再细致讲解了php变量相关的语法知识,老师列举了很多实用案例,帮助我了解基本语法结构和变量的各种用法,注意点:
1、了解php网页请求与服务器之间的交互过程;
2、php中是不声明变量及类型的,赋值了什么类型就是什么类型,变量是弱类型;
3、值传递与引用传递的区别,简单的理解方式是把引用传递看成相当于变量的别名;
4、可变变量、变量的检测与删除、基本的数据类型。

Correcting teacher:天蓬老师天蓬老师

Correction status:qualified

Teacher's comments:很认真, 作业建议不要照抄, 可以有自己想法
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post