PHP开发——变量
变量的概念
l 变量是临时存储数据的容器;
l 变量是存储内存当中;
l 我们现实中有很多数据:姓名、性别、年龄、学历等;
l 在计算机中,用变量来代替一个一个的数据;
l 我们可以把计算机内存,划分成若干个”小格子”,每个”小格子”存储一个变量的信息。
l 网页执行完毕后,网页中相关的变量全部消失。
变量的命名规则
l 变量名称只能包含:字母、数字、下划线。
l PHP变量名,必须以美元符号($)开头,但$符号不是变量名的一部分,只能告诉你其后是一个变量名称。
如:$name、$school、$age34、$is_married等。
l PHP的变量名是区分大小写的。如:$name和$Name是两个变量。
l PHP的变量不用声明,直接赋值即可,但是JS要使用var声明变量。
l PHP的变量的类型,主要取决于赋的什么类型的值。
l PHP的变量名称必须要有意义。
l 行业内,变量有一定的命名规则:
驼峰式命名:第1个单词全小写,后面单词首字母大写。如: $getUserName、$setUserName
下划线式命名:每个单词之间用下划线连接,每个单词全小写。如:$get_user_name
变量的常见操作
变量的赋值
l 使用”=”给变量赋值,把”=”右边的运算结果,装到”=”左边的容器中;
l “=”左边不能运算,右边可以运算。
l “=”左边只能是一个变量名。
变量的读取
echo "";
判断变量是否存在isset()
说明:如果一个变量存在,且值不是NULL,返回TRUE,否则,返回FALSE。
注意:只能用来检测变量,不能用来检测常量。
可以用来屏蔽变量不存在的错误
判断变量是否为空empty()
如果 var 是非空或非零的值,则 empty() 返回 FALSE。换句话说,""、0、"0"、NULL、FALSE、array()、以及没有任何属性的对象都将被认为是空的,如果 var 为空,则返回 TRUE。
删除变量unset()
变量的释放或删除,可以手动删除变量,网页执行完毕,该网页相关的变量都会释放。
释放给定的变量
如果变量执行了unset()函数,则变量的值变成了NULL。
显示变量的类型var_dump()
打印变量的相关信息
可变变量
可变变量:是指某个变量的名称,由另一个变量的值来充当。如:$$a = 100;
变量的值传递和引用传递
值传递:将一个变量的值,复制一份,传给另一个变量。修改其中一个变量的值,另一个变量的值不会改变。因为是两个独立的变量
值传递在内存中如何表现?
引用传递:将一个变量的数据地址,复制一份,传给另一个变量。这两个变量指向的是同一份数据。修改其中一个变量的值,另一个变量一定会跟着变。
引用传地址在内存中如何表现?
在PHP中,也可以让基本数据类型的变量,变成引用传地址,在引用的变量前加”&”符号。
PHP开发——变量的更多相关文章
- php扩展开发-变量
我们在php中用到的变量,在底层的C语言代码里是一个结构体,由四个成员组成typedef struct _zval_struct { zvalue_value value; /* 变量的值,也是一个结 ...
- Python自动化开发-变量、数据类型和运算
一.变量 变量定义:Variables are used to store infomation to referrenced and manipulated in a computer progra ...
- Python开发——变量
变量的作用 把程序运行的中间结果,临时保存到内存里,以备后面的代码继续调用 变量的声明 name = “yuan” 变量的定义规则 1.变量名只能是 字母.数字或下划线的任意组合 2.变量名的第一个 ...
- PHP开发——目录
PHP开发基础 PHP开发——环境安装 PHP开发——基础 PHP开发——变量 PHP开发——超全局数组变量 PHP开发——常量 PHP开发——数据类型 PHP开发——进制转换 PHP开发——运算符 ...
- Python开发——目录
Python基础 Python开发——解释器安装 Python开发——基础 Python开发——变量 Python开发——[选择]语句 Python开发——[循环]语句 Python开发——数据类型[ ...
- JavaScript(五):变量的作用域
一.变量的分类 在JavaScript中变量分为两种: 全局变量 局部变量 二.变量的作用域 1.局部变量的作用域 局部变量:在函数内部定义的变量称为局部变量,其作用域为该函数内部,在该函数外部不能被 ...
- 【zepto学习笔记03】事件机制
前言 我们今天直接进入事件相关的学习,因为近期可能会改到里面的代码就zepto来说,我认为最重要的就是选择器与事件相关了,随着浏览器升级,选择器简单了,而事件相关仍然是核心,今天我们就来学习学习 ze ...
- UE4命令行使用,解释
命令行在外部 从命令行运行编辑项目 1 导航到您的[LauncherInstall][VersionNumber]\Engine\Binaries\Win64 目录中. 2 右键单击上 UE4Edit ...
- vue-cli 3.0版本,配置代理Proxy,不同环境不同target(生产环境,uat环境和本地环境的配置)
1.在项目的的根目录下新建vue.config.js 2.新建一个config包,里面存放不同的环境文件,里面包含:pro.env.js(生产环境配置),uat.env.js(测试环境配置),dev. ...
随机推荐
- 让所有浏览器支持HTML5 video视频标签
HTML5究竟需要多少种视频编码格式 当前,video 元素支持三种视频格式:Ogg = 带有 Theora 视频编码和 Vorbis 音频编码的 Ogg 文件MPEG4 = 带有 H.264 视频编 ...
- Ubuntu 14.10 下DokuWiki安装
环境说明: Ubuntu 14.10 64位 1 下载DokuWiki:http://download.dokuwiki.org/ 2 解压到 /var/www/html下面 3 如果没有安装Apac ...
- python3学习笔记七(字典)
参照http://www.runoob.com/python3/python3-dictionary.html 字典 字典是另一种可变容器模型,且可以存储任意类型对象. dict1 = {key1:v ...
- 关于想通过ros的dstnat实现公网IP nat 公网IP的情况
转发群里大神的“苏州-海豚在跳舞”的图 理论上客户机收到2.2.2.2过来的包应该直接丢弃.因为它并没有给2.2.2.2发过包.这里不知道如果在2.2.2.2上做 src-nat伪装成1.1.1.1回 ...
- MySQL 之 MHA + ProxySQL + keepalived 实现读写分离,高可用(一)
准备服务器: docker network create --subnet=192.168.0.0/16 staticnetdocker run -d --privileged -v `pwd`/my ...
- Java笔记Spring(四)
spring web项目启动入口 1.首先看一下传统Java Web的配置文件web.xml,网上找的一个,参考地址:https://blog.csdn.net/github_36301064/art ...
- Emscripten 安装和使用
OS: Windows 10 x64 I. install 0. pre install Python2.7 Node js Java 1. down git clone https://github ...
- window.open() 打开的子页面 往主页面传参问题
<!--主页面的代码--><!DOCTYPE html> <html> <head> <meta charset="utf-8" ...
- 10. 批量插入List<String>
List<String> iscBusOrgIdList = getIscOrgIdList();List<Map<String, Object>> iscBusO ...
- lambda表达式,filter,map,reduce,curry,打包与解包和
当然是函数式那一套黑魔法啦,且听我细细道来. lambda表达式 也就是匿名函数. 用法:lambda 参数列表 : 返回值 例: +1函数 f=lambda x:x+1 max函数(条件语句的写法如 ...