博客列表 >了解 PHP 语法、变量、数据类型

了解 PHP 语法、变量、数据类型

忠于原味
忠于原味原创
2020年07月04日 11:25:28876浏览

一.PHP 语法

1.基本的 PHP 语法

  • PHP 脚本以 <?php开始,以 ?>结束:
  1. <?php
  2. php代码
  3. ?>

ps:PHP 中的每个代码行都必须以分号结束。分号是一种分隔符,用于把指令集区分开来。


  • 通过 PHP,有两种在浏览器输出文本的基础指令:echo 和 print。

    1.echo 可以打印多个变量,且没有返回值

  1. print 仅能打印单个变量,要打印多个,用. 进行字符串拼接, ;返回 1
  1. <?php
  2. $email = 'admin@php.cn';
  3. // echo 回显,效率最高,没有返回值
  4. echo $email, '<br>';
  5. print $email . '<br>';
  6. //查看print返回值
  7. echo print $email;
  8. ?>

2.PHP 中的注释
1.//单行注释
2.#单行注释,这个基本不用
3./ 多行注释/


二.PHP 变量

我们可以这样理解变量:
变量是临时存储数据的容器
变量是实现数据复用的手段

1.PHP 变量规则

  • 变量以 \$ 符号开始,后面跟着变量的名称
  • 变量名必须以字母或者下划线字符开始
  • 变量名只能包含字母数字字符以及下划线(A-z、0-9 和 _ )
  • 变量名不能包含空格
  • 变量名是区分大小写的($y$Y 是两个不同的变量)

ps:变量名分大小写,函数是不区分大小写


2.变量的动态
变量的动态: 是指变量的类型可以随值而变化

  1. <?php
  2. // 变量的动态: 是指变量的类型可以随值而变化
  3. $var = 100;
  4. // var_dump() 函数用于输出变量的相关信息
  5. var_dump($var);
  6. echo '<hr>';
  7. $var = 'php.cn';
  8. var_dump($var);
  9. ?>


3.可变变量

  1. <?php
  2. // 可变变量
  3. $var = 'email';
  4. // 我们要得到的效果:$email = 'admin@php.cn';
  5. // 变量名可以动态的创建
  6. $$var = 'admin@php.cn';
  7. /*我们可以这么理解:因为$var = 'email';所以$$var
  8. 相当于在它的值前加$即$email所以$$var=$email='admin@php.cn'*/
  9. echo $email;
  10. ?>


4.变量的有值传递与引用传递二种方式赋值

  1. <?php
  2. // 变量的有值传递与引用传递二种方式赋值
  3. // 1. 值传递,也是默认的方式
  4. $price1 = 99;
  5. $price2 = $price1;
  6. // 更新price2
  7. $price2 = 199;
  8. // 查看price1
  9. echo 'price1 = ' . $price1 . '<hr>';
  10. // 2. 引用传递
  11. $price1 = 99;
  12. // 在等号的右边/右值前面加上&(取地址符)
  13. // 当前$price2中保存的并不是99, 而是$price1变量在内存中的地址, [0xabcd1234] = 99
  14. $price2 = &$price1;
  15. // 更新price2
  16. $price2 = 199;
  17. // 查看price1, 会发现print1与price2同步更新了
  18. echo 'price1 = ' . $price1 . '<hr>';

ps:值传递:就是将一个变量的值,复制给另一个变量,不会对原变量产生影响.
引用传递:是将变量的值,在内存中的地址,传递给另一个变量,即 price1 和 price2 都指向内存中的同一个地址;其中一个发生改变时,另一个变量的值,相应的也改变。


5.变量的检测与删除
这里我们介绍3种函数:isset():如果该变量存在且值不为 null 才是 true。
unset():删除变量, 没有返回值
empty() 判断一个变量是否被认为是空的,有返回值。

  1. <?php
  2. // 变量的检测与删除
  3. // 打开所有的报错
  4. error_reporting(E_ALL);
  5. // echo $username;
  6. // 变量检测
  7. $username = 'php中文网是个好网站!';
  8. // $username = null;
  9. // isset():如果该变量存在且值不为null才是true
  10. if (isset($username)) echo $username. '<br>';
  11. // else echo '没有定义该变量'.'<hr>';
  12. // unset():删除变量, 没有返回值
  13. unset($username);
  14. echo $username;
  15. $var = '';
  16. ////''空字符串会被empty()认为是空的var_dump()函数用于输出变量的相关信息 。
  17. if (empty($var)) var_dump($var). '<br>';
  18. ?>


6.变量的类型转换

  • 1.自动转换
  1. <?php
  2. // 变量的类型转换
  3. // 自动转换: 是由php系统偷偷进行的,不需要用户主动参与
  4. $a = null;
  5. $b = true;
  6. $c = false;
  7. $d = '5g';
  8. $e = 'php';
  9. $f = 15;
  10. //null在算术运算中自动转为0
  11. echo $a + 10, '<br>';
  12. //true在算术运算中转为1
  13. echo $b + 10, '<br>';
  14. //遇到字符串如果数字在首位会解析数字。
  15. echo $d + 10, '<br>';
  16. //遇到首位是字符会报错
  17. echo $e + 10, '<br>';
  18. ?>

  • 2.强制转换
  1. <?php
  2. // 变量的类型转换
  3. // 强制转换
  4. // 如果不想看到警告,通过强制转换解决
  5. $e = 'php';
  6. //将$e强制转换为int类型,返回0
  7. echo (int)$e + 10, '<br>';
  8. //intval() 函数用于获取变量的整数值。intval()比int更实用
  9. echo intval($e) + 20, '<br>';
  10. //strval() 函数用于获取变量的字符串值
  11. echo strval($f) . ' hello';
  12. ?>

  • 3.强制转换
  1. <?php
  2. // 变量的类型转换
  3. // 永久转换
  4. //定义$f为整型
  5. $f = 15;
  6. //settype() 函数用于设置变量的类型。
  7. //gettype() 函数用于获取变量的类型
  8. //语法:bool settype ( mixed &$var , string $type )
  9. echo gettype($f) .'<br>';
  10. settype($f, 'string');
  11. echo gettype($f);
  12. ?>


三.数据类型

1.基本类型
// 字符串
$name = '手机';
// 数值
$price = 2980;
// 布尔
$is5G = false;

2. 复合类型

  1. <?php
  2. // 2. 复合类型, 对象,数组
  3. // 对象
  4. $obj = new stdClass;
  5. // 对象是属性和方法的无序集合
  6. $obj->name = 'peter zhu';
  7. $obj->age = 35;
  8. echo $obj->name, '<hr>';
  9. // 数组
  10. $arr = ['电脑', 4500, 'Dell'];
  11. // print_r()以人性化的方式打印变量,true表示不直接打印,而返回
  12. // 返回就是一定要有一个接收者
  13. $str = print_r($arr, true);
  14. //<pre> 标签可定义预格式化的文本。
  15. echo '<pre>'.$str.'</pre>';
  16. // 基本类型: 标量, 单值
  17. // 复合类型: 多值,
  18. ?>

3.特殊类型

  1. <?php
  2. // 3. 特殊类型
  3. // NULL
  4. $num = null;
  5. //var_dump() 函数用于输出变量的相关信息
  6. var_dump($num);
  7. echo '<br>';
  8. // $f就是文件资源类型
  9. //fopen() 函数打开一个文件或 URL
  10. //"r"(只读方式打开,将文件指针指向文件头)
  11. $f = fopen('demo1.php', 'r');
  12. var_dump($f);
  13. echo '<br>';
  14. echo gettype($f);
  15. ?>

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