博客列表 >php环境与变量

php环境与变量

溪边小树
溪边小树原创
2020年04月16日 19:24:201103浏览

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、可变变量、变量的检测与删除、基本的数据类型。

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议