博客列表 >PHP的基本认识、变量的定义与输出

PHP的基本认识、变量的定义与输出

῀℡῀ᵒᵐᵍᵎᵎᵎ
῀℡῀ᵒᵐᵍᵎᵎᵎ原创
2020年04月16日 13:39:24789浏览

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程序文档代码演示

  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>

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


5. 打印结果

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

打印代码演示

  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);

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


6.变量定义与规则

  • 通常学到的是,变量代表存储空间以及其中数据的一个“标识符”。
  • 变量名 指向 变量值
  • 更深入的说是 变量指向内存的一块区域

规则

  • 没有使用$开始, 正确的变量必须使用$做为起始符号
  • 变量名中不允许使用数字开始
  • 变量名中不能使用特殊符号
  • 必须由以下三种字符组成: 大小写的英文字母, 下划线, 数字, 且不能以数字开始
  • 必须要有意义的定义

代码演示

  1. <?php
  2. # 变量命名
  3. $username = 'admin';
  4. $userName = 'username';
  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';
  18. $_ = 666;;
  19. $_123 = 888;
  20. echo $_123;

7.值传递与引用传递

  • 引用赋值,&:取地址符,引用符
  • 相当于给原变量起了一个别名

代码演示

  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. // 2.引用传递
  12. $price1 = 99;
  13. // 引用赋值,&:取地址符,引用符
  14. //相当于给原变量取一个别名
  15. $price2=&$price1;
  16. echo $price1,'---',$price2,'</br>';
  17. //更新
  18. $price1=299;
  19. echo $price1,'----',$price2,'</br>';

8.可变变量

  • 检测:isset()
  • 删除:unset()
  • 如果变量已经定义但是未赋值(初始化),默认用 NULL 进行赋值
  • 初始化:第一次赋值
  • 更新/修改:第二次赋值;
  • is_null()判断是否没有赋值
  • empty()判断是否为空,但是有值

代码演示

  1. <?php
  2. // 可变变量:变量的标识符/变量名
  3. $var='email';
  4. //这下面两种都是一样的
  5. //$email = '1082828@qq.com';
  6. $$var= 'zzzzzz';
  7. echo $emali;
  8. //error_reporting(E_ALL);
  9. // 检查与撤除变量
  10. //echo $username;
  11. //if (isset($username)):echo $username,'</br>';
  12. $username='zhou';
  13. //删除/销毁变量
  14. //unset($username);
  15. echo $username.'<br>';
  16. if (isset($username)):echo $username,'</br>';
  17. else:
  18. echo '未定义变量名';
  19. endif;
  20. if (isset($username)){
  21. echo $username, '<br>';
  22. }else{
  23. echo '变量未定义';
  24. }
  25. //变量已经定义而未初始化
  26. // 初始化第一次赋值
  27. // 更新/ 修改:第一次赋值
  28. echo'<br>';
  29. $email;
  30. var_dump(is_null($email));
  31. echo '<br>';
  32. $var = '';
  33. var_dump(is_null($var));
  34. var_dump(empty($var));

9.数据类型

三剑客是:字符串string数值int, float布尔true / false

  • 字符串是字符序列;
  • 整数是没有小数的数字;
  • 浮点数是有小数点或指数形式的数字;
  • 逻辑是 true 或 false;
  • 数组在一个变量中存储多个值;
  • 对象是存储数据和有关如何处理数据的信息的数据类型;
  • 特殊的 NULL 值表示变量无值。NULL 是数据类型 NULL 唯一可能的值;

代码演示

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

课后总结

  • 进入php的第一天感觉比html难,只有照着老师的一个一个慢慢打
  • 课后慢慢的下来去看视频理解
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议