php学习--变量和数据类型
PHP变量
变量
程序执行期间,可以变化的量即为变量。
声明变量
以美元$ 符号声明
注意:(PHP严格区分大小写)
变量名称以 字母、或下划线开始,后面跟上数字/字母/下划线,不能包含特殊字符
变量名称最好含义明确
变量名最好采用驼峰标记,或下划线法
驼峰
小驼峰 :firstName
大驼峰:FirstName
下划线
first_name
可变变量
等量代换
使用变量
直接书写变量的名称
$变量名称
PHP数据类型
8种主要数据类型
标量类型 (特点:只能存储单一数据)
整型 int | integer
整数
分类
十进制
八进制
十六进制
存储范围
带符号 (-21亿 到 21亿)
不带符号 (0 到42亿)
超过整型存储范围,会出现溢出现象
浮点型 float | double | real
带小数点
科学计数法 ,e或者 E
注意:
浮点数是有误差的,不要比较两个浮点数的大小
布尔型 bool | boolean
true
false
字符串型 string 只能存储单一数据
定界符
' ' 不解析变量
" " 解析变量
heredoc “”
<<<名称
代码块
名称;<<<"名称"
代码块
名称;
nowdoc
转义符
\n 换行
\r 回车
\t 水平制表符
\\ \
\' '
\" "
\$ $
花括号 {}
可以将PHP中的变量扩成一个整体来解析
{$变量名}
${变量名}
可以将字符串中指定字符进行增删改查的操作
字符串的下标 从0开始
根据下标找到对应的字符进行操作
复合类型
数组 array
对象 object
特殊类型
资源 resource
空 null | NULL
5种伪类型
number
mixed
callback
void
...
PHP数据类型转换
自动转换(隐式转换)
程序根据上下文自动转换
其他类型转换为数值型
true -> 1
false -> 0
null -> 0
字符串如果以 非法数值开始,直接转换成0
如果字符串以合法数值开始,一直取到第一个非法数值结束
其他类型转换为字符串类型
数值型直接转换成数值本身
true -> 1
false -> 空字符串
null -> 空字符串
数组 -> array
资源 -> resource
对象 不能转换为字符串
其他类型转换成布尔型
0 -> false
0.0 -> false
空字符串 ‘’ 或者"" , ‘0’或者 “0” , -> false
null -> false
空数组 -> false
if (条件) {
执行条件为真的代码段;
}else {
执行条件为假的代码段;
}
强制转换(显示转换)
临时转换 (不会改变变量本身的类型)
(变量类型)$变量名称
整型 (int | integer)$变量名称
浮点型 (float | double | real)$变量名称
字符型 (string)$变量名称
布尔型 (bool | bollean)$变量名称
空 (unset)$变量名称
数组 (array)$变量名称
对象 (object)$变量名称
通过系统函数实现
intval
floatval
...
永久转换
settype($var,$type)
gettype($var)
通过变量函数库检查变量的类型
php学习--变量和数据类型的更多相关文章
- 学习 JavaScript (三)核心概念:语法、变量、数据类型
JavaScript 的核心概念主要由语法.变量.数据类型.操作符.语句.函数组成,这篇文章主要讲解的是前面三个,后面三个下一篇文章再讲解. 01 语法 熟悉 JavaScript 历史的人应该都知道 ...
- 《JavaScript高级教程》学习笔记一、变量和数据类型
JavaScript的核心语言特性在ECMA-262中是以名为ECMAScript的伪语言的形式来定义的. 一.变量和数据类型 1. 变量 JavaSript是弱类型语言,可以通过var定义任何类型变 ...
- Java学习笔记之——变量与数据类型、运算符
一.变量 1.变量:变化的值 变量在代码运行期间,开辟了一块空间 .这块空间是有地址的,给这块取了个名字, 这个名字就叫做变量名,这块空间放的东西叫做变量值 2.变量的初始化: (1)先声明再赋值: ...
- javascript学习笔记(一):基础、输出、注释、引用、变量、数据类型
javascript脚本必须位于<script></script>之间,<script>标签可以位于<head>中,也可以位于<body>中 ...
- C#学习笔记(二):变量、数据类型和运算符
变量.数据类型 给变量赋值,如果想指定float,在数字后面加上F/f:如果想指定decimal,在数字后面加上m. 0-9:48-57 A-Z:65-90 a-z:97-122 ...
- 大数据学习--day02(标识符、变量、数据类型、类型转换、进制转换、原码反码补码)
标识符.变量.数据类型.类型转换.进制转换.原码反码补码 标识符: java50个关键字不能做标识符,以数字开头不能做标识符(这个老是忘记写一个类名的时候) 变量: 变量分为成员变量和局部变量,注意作 ...
- 前端学习笔记--js概述与基础语法、变量、数据类型、运算符与表达式
本篇记录js的概述与基础语法.变量.数据类型.运算符与表达式 1.概述与基础语法 2.变量 举例: 3.数据类型 4.运算符与表达式
- JavaScript学习10 JS数据类型、强制类型转换和对象属性
JavaScript学习10 JS数据类型.强制类型转换和对象属性 JavaScript数据类型 JavaScript中有五种原始数据类型:Undefined.Null.Boolean.Number以 ...
- 九天学会Java,第一天,变量和数据类型,赋值和输出
用9天入门三门编程语言,有可能嘛,尤其是对没有基础的同学来说?对于想学好的编程的人来说,无论从哪一门语言开始入手,语言的本身其实并不是我们最应该的关心的,至少不是作为一个初学者首先关心的. 网络上,网 ...
随机推荐
- numpy的操作
import numpy as np ######################## # 索引 n1 = np.random.randint(0, 100, 10) # print(n1) ''' ...
- Day18 (二)反射
反射机制是什么 反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意一个方法和属性:这种动态获取的信息以及动态调用对象的方法的功能称为java ...
- ZOJ 4103 浙江省第16届大学生程序设计竞赛 D题 Traveler 构造
这个题,正赛的时候也没有过,不过其实已经有了正确的解法,可惜时间不多了,就没有去尝试. 题意是有n个点,i点能通向i-1,然后i和i*2.i*2+1互通. 请你构造一种路径从1能走完所有点,并且不重复 ...
- verilog实现毫秒计时器
verilog实现毫秒计时器 整体电路图 实验状态图 Stop代表没有计时,Start代表开始计时,Inc代表计时器加1,Trap代表inc按钮按下去时候的消抖状态. 状态编码表 实验设计思路 时钟分 ...
- django restframework 序列化
Serialization 序列化 创建表 from django.db import models from pygments.lexers import get_all_lexers from p ...
- Visual Studio 2012 编译错误【error C4996: 'scanf': This function or variable may be unsafe. 】的解决方案
在VS 2012 中编译 C 语言项目,如果使用了 scanf 函数,编译时便会提示如下错误: error C4996: 'scanf': This function or variable may ...
- 【vue】npm run mock & npm run dev 无法同时运行的解决
[关于系统,没注明的都是windows系统,若以后用的是mac系统则会另外备注] 当项目数据是通过mock搭建而成(参照:[vue]本地开发mock数据支持)时,运行mock服务器和项目的命令 就参照 ...
- UCOS时钟节拍的讲究
其实这个值取适中即可,100,200都行,看你的片子是什么,Cortex-M3的片子取200较合适这个值太小,系统调度周期较长,各个任务之间切换较慢,适时性降低,而太大了,中断周期与调试周期接近了,那 ...
- 数据结构与算法之二叉树 ——in dart
用dart语言实现的二叉树,实现了插入.查找.删除,中序遍历.前序.后序遍历等功能. class BinaryTree<E extends Comparable> { Node<E& ...
- leetcode-53-Maximum Subarray(动态规划详解)
题目描述: Given an integer array nums, find the contiguous subarray (containing at least one number) whi ...