PHP 零基础入门笔记(3):PHP 变量和常量
PHP 变量和常量
PHP 基本语法
PHP 是一种运行在服务器端的脚本语言,可以嵌入到 HTML 中
1、PHP 代码标记
- ASP 标记(asp_tags,已弃用)
<% php代码 %>
- 段标记(short_open_tags, 已弃用)
<? php代码 ?>
- 脚本标记
<script language="php" >php代码</script>
- 标准标记(常用)
<?php php代码 ?>
2、PHP 注释
解析过程中会被忽略
// 行注释
# 注释一行/* 块注释* 多行注释
*/
3、PHP 语句分隔符(分号)
<?phpecho 'hello world';
echo 'hello world';
特殊说明:
- 标记结束符
?>
可以省略,如果是单独的 PHP 文件,一般会省略 - 最后一行结尾的分号可以省略,不推荐
PHP 变量
PHP 是一种动态网站开发的脚本语言,动态语言的特点是交互性,会有数据传递
1、概念
- 变量可以存储数据
- 变量有名字
- 变量可以通过名字访问数据
- 变量可以改变
2、使用
变量必须使用$
开头
- 定义:在系统内存中增加对应的变量名
- 赋值:将数据赋值给变量,可以再定义的同时完成
- 访问:可以通过变量名访问数据
- 删除:将变量从内存中删除
<?php// 定义变量
$var1;// 定义同时赋值
$var2 = 1;// 访问变量
echo $var2 . '<br>';// 修改变量
$var2 = 2;
echo $var2 . '<br>';;// 删除变量
unset($var2);
echo $var2;
3、变量命名规则
- PHP 变量名必须以
$
开头 - 可以使用数字,字母,下划线,不能以字母开头
- 支持中文,不建议
<?php// 正确形式
$var1;$var_2;$_var_3;// 错误格式
// $1var;// 支持中文
$中文 = 'china';
4、预定义变量(系统定义的变量)
$_GET GET提交的数据
$_POST POST提交的数据
$_REQUEST GET和POST的提交的数据
$GLOBALS 全局变量
$_SERVER 服务器信息
$_SESSION session
$_COOKIE cookie
$_ENV 环境变量
$_FILES 用户上传的文件信息
5、可变变量
如果一个变量保存的值,刚好是另一个变量的名字,那么可以直接通过访问一个变量得到另一个变量的值
在变量前多加一个$
符号
<?php$a = 'b';
$b = 'bb';echo $$a;
// 输出:bb
6、变量传值
将一个变量赋值给另一个变量
变量传递方式
- 值传递:变量的值复制一份,给另个变量保存,(两个变量没有关系)
- 引用传递:将变量保存的值所在内存地址,赋值给另一个变量,两个变量指向同一块内存地址(两个变量是同一个值)
内存分区
- 栈区:程序可以操作的内存部分,不存数据,运行程序代码
- 代码段:存储程序,不执行
- 数据段:存储普通数据(全局区和静态区)
- 堆区:存储复杂数据,效率低
值传递
$a = 1;
$b = $a;
栈区 数据段
$a -> 1
$b -> 1(副本)
引用传递
$a = 1;
$b = &$a;
栈区 数据段
$a -> 1
$b -> 1(同一个值)
PHP 常量
常量与变量一样,都是用来保存数据
1、常量的基本概念
常量 const / constant 程序运行中,不可改变的量
常量一旦定义,通常数据不可改变(用户级)
2、常量定义形式
<?php// 方式一
define(常量名, 常量值);// eg
define('PI', 3.14);// 方式二: php > 5.3
const 常量名 = 常量值;// eg
const PIPI = 3.14;
3、常量命名规则
- 常量不需要使用
$
符号,$
开头的系统认为是变量 - 常量有数字、字母、下划线组成,不能以数字开头
- 常量名通常以大写字母为主,与变量区别
define 可以定义特殊常量
<?phpdefine('-_-', 3.14);
区别
- 访问权限有区别
- define 定义常量通常区分大小写,可以通过第三个参数设置
define(string $constant_name, mixed $value, bool $case_insensitive = false): bool// PHP 7.3.0 起废弃了定义不区分大小写的常量。
// ref: https://www.php.net/define
4、使用常量
<?php// 常量
define('PI', 3.14);echo PI;// 特殊符号常量
define('-_-', 3.14);echo constant('-_-');
5、常量和变量的使用
- 数据可能会变化的,使用变量
- 数据不一定不会变化,使用常量或变量
- 数据不允许修改,一定使用常量
系统常量
<?php// PHP版本号
echo PHP_VERSION;
// 7.1.23// 整型占用字节数
echo PHP_INT_SIZE;
// 8// 整型能表示的最大值
echo PHP_INT_MAX;
// 9223372036854775807
特殊常量(魔术常量)
__DIR__ 当前被执行脚本文件夹绝对路径
__FILE__ 当前被执行脚本文件绝对路径
__LINE__ 当前行号
__NAMESPACE__ 当前命名空间
__CLASS__ 当前所属类
__METHOD__ 当前所属方法
PHP 零基础入门笔记(3):PHP 变量和常量相关推荐
- 11岁过python1级_11岁表弟写的Python零基础入门笔记!
一.Python输入与输出输出:使用print()函数. print()函数的基本语法格式如下:print(输出内容). 输出内容可以是数字和字符串(字符串需要用引号括起来),也可以是包含运算符的表达 ...
- 【Python3零基础入门笔记】05 Python时间处理——time库的使用
time库的使用: time库基本情况 时间获取 时间格式化 程序计时 文本进度条实例 time库基本情况 Time库是python中处理时间的标准库 计算机时间表达 提供获取系统时间并格式化输出功能 ...
- PHP 零基础入门笔记(6):PHP 流程控制
PHP 流程控制 代码执行的方向 控制分类 顺序结构 代码从上往下,顺序执行 分支结构 根据条件执行某一段代码 循环结构 指定代码块重复执行 顺序结构 最基本的结构,所有代码默认都是从上往下依次执行 ...
- PHP 零基础入门笔记(11):字符串 String
字符串 String 字符串类型 单引号字符串 双引号字符串 nowdoc 字符串 heredoc 字符串 示例 <?php// 1.单引号字符串 $str1 = 'hello world';v ...
- PHP 零基础入门笔记(5):PHP 运算符 operator
PHP 运算符 operator 赋值运算符 = 将右边的结果(变量,数据,常量)保存到内存的某个位置,然后将位置的内存地址赋值给左侧的变量 算术运算符 加 + 减 - 乘 * 除 / 取余 % 注意 ...
- python 零基础入门笔记
作用 Python是一种解释型.面向对象.动态数据类型的高级程序设计语言,在许多领域都有应用,包括Web编程,脚本编写,科学计算和人工智能等. 特点 Python 是一种: 解释型语言: 开发过程中没 ...
- Java零基础入门笔记-准备工作
自主搭建Java开发环境 (个人建议开一个独立盘用于编程软件安装) 1.下载并安装jdk(1.5以上版本无需配置classpath路径,系统会自动从当前路径下进行查找): 2.配置系统变量(找到&qu ...
- Unity C#零基础入门笔记(一)Paws3D笔记
计算机语言: 计算机语言按发展分为三种: 机器语言 汇编语言 高级语言 机器语言就是机器码,是能够被计算机直接理解的语言.更通俗地讲就是010101这样的二进制指令.和硬件密切相关,编写苦难. 两个主 ...
- JavaScript零基础入门--笔记动力节点最新老杜(九-完结)全套笔记精髓
JSON 1.什么是JSON,有什么用? JavaScript Object Notation(JavaScript对象标记),简称JSON.( ...
最新文章
- 现场|除了谷歌AI中国中心成立的重磅消息,谷歌开发者大会现场还有这些
- 使用 GetStartupInfo 检查自己是否被调试
- Python大婶博客汇总
- lightning接口_苹果手机接口未来将和安卓手机统一——欧盟通过正式决议
- python内存技巧_使用__slots__节省python内存技巧
- Gargamel:信息安全取证工具
- Webpower中国区发布《2015年中国金融保险行业邮件营销市场报告》
- 【光学设计基础】--01像差理论基础
- 正则表达式删除空白行
- 重访命令征服泰伯利亚太阳
- linux马达驱动程序,一种Linux系统的微型针式打印机及其驱动方法与流程
- 服务器文件夹共享到本地,云服务器共享本地文件夹
- 中国联通物联网平台能力介绍
- mysql drop view_SQL CREATE VIEW、REPLACE VIEW、 DROP VIEW 语句 | 菜鸟教程
- openwrt中磁盘未分配空间挂载
- windows下一些启动服务的命令
- linux信号传递给进程,bash中的信号处理机制
- jz2440——点亮led
- Ed2k链接生成工具介绍
- 年度钜献,108个大数据文档PDF开放下载
热门文章
- 华南理工大学软件学院2017考研复试机试第一题代码(Java)
- 【电大题酷】【3】2269个人与团队管理
- 【Unreal Engine 4】虚拟试衣镜
- 如何用python编程机器人培训班_如何Python入门
- PDF转WORD 介绍一些网站
- Windows10远程桌面客户端无法登录,出现“CredSSP encryption...”的解决方法
- WIFI 的 传输信道 与标准 WIFI的频道 传输能力
- 宽带ISAR高分辨成像技术综述
- 饼图加引导线_PPT里的饼图,如何显示引导线?
- 相见恨晚,这6个适合安卓用户的浏览器,你用过吗