博客列表 >PHP基础知识与代码实例(一)

PHP基础知识与代码实例(一)

phpcn_u202398
phpcn_u202398原创
2020年04月17日 09:04:28650浏览

1、什么是PHP

  • PHP: (PHP: Hypertext Preprocessor), 超文本预处理器的缩写
  • PHP 是开源的,免费的,运行在服务端的,用来动态生成网页数据的脚本语言
  • 所谓脚本语言,是指不需要编译,直接由解释器/虚拟机执行的编程语言
  • php 程序是用 php 指令编写并由 php 解析器执行的代码
  • php 程序必须使用.php做为扩展名
  • php 程序可以使用标签方式嵌入到 html 文档中

2、php 程序执行流程

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

3、php 程序文档

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

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

代码实例
  1. <?php// PHP 代码标记
  2. function sum(int $a, int $b) : string //自定义函数
  3. {
  4. return "$a + $b = " . ($a + $b) ;//返回值
  5. }
  6. echo sum(10, 70); //输出和
  7. ?> // PHP 代码标记

4、PHP如何打印结果

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

实际工作中 "echo" 和 "var_dump()" 基本可以满足大多数需求


代码实例
  1. <?php
  2. # php打印结果
  3. $email = 'admin@php.cn';
  4. // echo, 没有返回值
  5. echo $email, '<br>';//语言结构, 可查看多个变量
  6. print $email;// 语言结构,功能与`echo`类似,区别是有返回值,如果成功返回1
  7. echo '<hr>';//输出一条横线
  8. print_r( $email);//函数,以更容易理解的格式打印变量信息,常用于数组
  9. echo '<hr>';
  10. var_dump($email);//函数,可查看一个变量更多信息,如类型
  11. echo '<hr>';
  12. var_export($email);//函数,输出或返回一个变量的字符串表示(源代码)
  13. ?>

5、PHP变量命名规则

  • 变量以 $ 符号开始,后面跟着变量的名称
  • 变量名必须以字母或者下划线字符开始
  • 变量名只能包含字母数字字符以及下划线(A-z、0-9 和 _ )
  • 变量名不能包含空格
  • 变量名是区分大小写的($y 和 $Y 是两个不同的变量)
  • 代码实例
    1. <?php
    2. $username = 'admin';
    3. $userName = 'peter';
    4. // 变量名区分大小写
    5. echo $username, '<br>' , $userName, '<hr>';
    6. `错误` //hello = 'php'; // 没有使用$开始, 正确的变量必须使用$做为起始符号
    7. `错误`// $123abc = 'php';// 变量名中不允许使用数字开始
    8. `错误`// $user@id = 100;// 变量名中使用了特殊符号
    9. `注意`//变量命名要有意义, 正确但无意义
    10. $aaa = 'php.cn';
    11. $_ = 888;
    12. $_123 = 999;
    13. echo $_123;
    14. ?>

6、PHP变量是弱类型

  • 不必向 PHP 声明该变量的数据类型。
  • PHP 会根据变量的值,自动判断变量的数据类型。
  • 代码实例
    1. <?php
    2. $var = 100;
    3. var_dump($var);//打印数据类型使显示为"int"(整型)
    4. echo '<hr>';
    5. $var = 'Hello';
    6. var_dump($var);//打印数据类型使显示为"string"(字符型)
    7. $var = true;
    8. var_dump($var);//打印数据类型使显示为"Boolean"(布尔型)
    9. ?>

7、值传递和引用传递

7.1、值传递
  • 代码实例
    1. <?php
    2. $price1 = 99;//给$price1赋值为99
    3. $price2 = $price1;//将$price1变量的值赋值给了一个新变量$price2
    4. echo $price1, '----', $price2, '<br>';//输出两个99
    5. $price1 = 299;//给$price1赋值为299
    6. echo $price1, '----', $price2, '<br>';//输出第一个299,第二个99
    7. ?>

7.2、引用传递
  • 引用赋值, &: 取地址符, 引用符
  • 相当于给原变量起了一个别名
    代码实例
  1. <?php
  2. $price1 = 99;//给$price1赋值为99
  3. $price2 = &$price1;//将$price1变量的值赋值给了一个新变量$price2
  4. echo $price1, '----', $price2, '<br>';//输出两个99
  5. $price1 = 299;//给$price1赋值为299
  6. echo $price1, '----', $price2, '<br>';//输出两个299
  7. ?>

8、可变变量

  • 变量的标识符/变量名称,可以动态的改变, 变量名可以来自另一个变量
    -变量名前面有两个$$
    代码实例
    1. <?php
    2. $var = 'email';// 变量名email, 恰好是变量$var的值
    3. $$var = 'peter@php.cn'; // $email = 'peter@php.cn';
    4. echo $email; //输出 'peter@php.cn';
    5. ?>

9、数据类型

序号 分类 类型名称
1 基本类型 String(字符串), Integer(整型), Float(浮点型), Boolean(布尔型)
2 复合类型 Array(数组), Object(对象)
3 特殊类型 NULL(空值),资源类型, 文件
代码实例
  1. <?php
  2. //基本类型
  3. $name = '手机';// 字符串: string
  4. $price = 3890;// 数值: int, float
  5. $is5G = true;// 布尔: true / false
  6. echo gettype($is5G),'<hr>';
  7. // 2. 复合类型
  8. $obj = new stdClass;// 对象
  9. $obj->email = 'admin@php.cn';
  10. echo $obj->email . '<br>';
  11. $arr = ['电脑', 8000, 'huawei'];// 数组
  12. // $str=print_r($arr, true);
  13. // echo '<pre>'.$str.'</pre>';
  14. echo '<pre>'.print_r($arr, true).'</pre>';
  15. // 3. 特殊类型
  16. $num = null;//空值
  17. var_dump($num);
  18. // 资源类型, 文件
  19. $f = fopen('demo7.php','r');
  20. var_dump($f);
  21. echo gettype($f),'<hr>';
  22. if (gettype($f) === 'resource') {echo 'demo7.php是一个文件';}
  23. ?>

10、检测与删除变量

代码实例
  1. <?php
  2. if (isset($username)) echo $username, '<br>';//isset()函数,判断变量是否存在且不为空
  3. $username = 'peter zhu';
  4. unset($username);// 变量删除/销毁
  5. if (isset($username)) {
  6. echo $username, '<br>';
  7. } else{
  8. echo '变量未定义';
  9. }
  10. echo '<hr>';
  11. // 变量已定义而未初始化,默认用NULL进行赋值
  12. // 初始化:第一次赋值
  13. // 更新/修改: 第二次赋值
  14. $email;
  15. $email = null;//给变量赋null值
  16. var_dump(is_null($email));//判断变量是否为NULL值
  17. echo '<hr>';
  18. $var = '';
  19. var_dump(is_null($var));
  20. var_dump(empty($var));//判断变量是否为空
  21. ?>

学习总结

本节课学习了一些PHP的基础知识,通过本节课的学习对以前自学知识进行了巩固,同时补充学到了一个引用传递的知识——取地址符(&)。

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