PHP中使用的变量
变量是用于临时的存储值的容器。这些值可以是数字、文本,或者复杂得多的排列组合。
变量在任何编程语言中都居于核心地位,理解它们是使用PHP的关键所在。变量又是指在程序的运行过程中随时可以发生变化的量,是程序中数据的临时存放场所。
在代码中可以可以只使用一个变量,也可以使用多个变量。由于变量让你能够把程序中准备使用的每一段数据都赋给一个简短、易于记忆的名字,因此它们十分的有用。
变量可以保存程序运行时用户输入的数据、特定运算的结果以及要输入到网页上显示的一段数据等。简而言之,变量是用于跟踪几乎所有类型信息的简单工具。
1.如果在用到数据时,需要用到多次时就声明一个变量。
2.语法
$变量名=值
3.PHP是弱类型的语言,是不用指定变量的类型的,变量的类型由存储的值决定的。(强类型语言(例C,JAVA),声明变量定要指定类型。)
<?php
//定义变量
$var="#########<br>";
echo $var;
echo "$var";
echo "$var";
echo "$var";
//改变变量的值
$var="@@@@@@@@@<br>";
echo "$var";
?>
4.有关变量的函数
isset()判断一个变量是否存在
unset()删除一个变量
<?php
$var="aaaaaaaaaa";
if (isset($var)) {
echo "$var<br>";
}else{
echo "no exit!<br>";
}
unset($var);
if (isset($var)) {
echo "$var";
}else{
echo "no exit!";
}
?>
5.变量的命名
(1)变量前一定要使用“$”,声明和使用都要有这个符号。
(2)不能以数字开头,不能使用php的运算符号
(3)可以使用系统关键字
(4)PHP变量区分大小写。(注意只有变量和常量区分大小写)。
<?php
$a=10;
$A="abc";
echo "$a<br><$A>";
echo "aaaaaa<br>";
Echo "aaaaaa<br>";
ECHO "aaaaaa<br>";
?>
(5)变量的名称一定要有意义,可以使用英文单词或汉语拼音。
6.可变变量
一个变量的变量的变量名可以动态设置和使用
<?php
$one="#########";
$two="one";
$three="two";
$four="three";
echo $four."<br>";
echo $$four."<br>";
echo $$$four."<br>";
echo $$$$four."<br>";
?>
7.变量的引用赋值
使用一个“&”符号加到将要赋值的变量的前面。不能是值
<?php
$one="10";
$two=&$one; //引用赋值
echo "$one<br>";
echo "$two";
?>
8.变量的类型
php中共有8种类型
四种标量
整型(int、integer)、布尔型(bool、booleam)、浮点型(float、double、real)、字符串(string)
两种复合类型
数组(array)、对象(object)
两种特殊类型
资源类型(resource)、空类型(null)
函数:var_dump(变量或值);(既可以查看变量的类型又可以看数值)
9.变量的声明
<?php
//整型的声明
$int1=10; //十进制声明
$int2=045; //以0开头的表示以8进制声明一个变量
$int3=0xff; //以0x或0X开头的表示以16进制声明一个变量0-9、a-f
//输出的时候是按照十进制输出的
echo "$int1<br>";
echo "$int2<br>";
echo "$int3<br>";
//浮点数的声明
$float1=10;
$float2=-10;
$float3=3.14;
$float4=3.15E+5;
$float5=3.15E-2;
echo "$float1<br>";
echo "$float2<br>";
echo "$float3<br>";
echo "$float4<br>";
echo "$float5<br>";
//bool型的声明
$bool1=false;
var_dump($bool1);
echo "<br>";
//字符串的声明
//1.单引号和双引号都可以声明字符串
//2.声明的字符串没有长度限制
//3.在双引号的字符串中既可以直接解析变量,又可以直接使用转义字符
//4.在单引号的字符串中,不可以解析变量,也不可以使用转义字符
//5.在双引号中不能再使用双引号,在单引号中不能使用单引号
//最好使用单引号;
$int=10;
$str="aa $int aaaaaaaa $int aaaaaaaaa$int";
echo "$str<br>";
//定界符号声明字符串,大量的字符串
$str1=<<<hello
ddjfdjfuebcxcfedgdfgr
dfrgvcxvrgdsdfdsfdfr
dgfrgfxgretgd
dcvdgrgfdvesefdfew
rfgefdcvccfrdgcvgggdrfgr
xvrrrfrefefrgr
hello;
//hello是自定义的后面不能有任何字符,空格也不行,结束也用hello,也不能有任何字符
echo $str1;
?>
PHP中使用的变量的更多相关文章
- 关于ibatis中mysql的@变量问题作用域、污染问题
搞了1天,过程不想多说,结论如下: ibatis.net 是有连接池的,用ab.exe 并发测试,可以测出默认的max连接数 ibatis.net的数据操作 xml 中可以用@变量,也就是 Sessi ...
- [.net 面向对象编程基础] (5) 基础中的基础——变量和常量
[.net面向对象编程基础] (5) 基础中的基础——变量和常量 1.常量:在编译时其值能够确定,并且程序运行过程中值不发生变化的量. 通俗来说,就是定义一个不能改变值的量.既然不能变动值,那就必须 ...
- 解决ambiguous symbol命名空间中类名、变量名冲突的问题
最近在将一个复杂的工程集成到现有的项目中.编译时发现,有的变量名冲突了,提示就是xxxx ambiguous symbol,并且在编译输出时,指明了两个文件当中特定的变量名或者类名相同.出现这个编译错 ...
- OC中的私有变量和description
.OC中的私有变量 在类的实现即.m @implementation中也可以声明成员变量,但是因为在其他文件中通常都只 是包含头文件而不会包含实现文件,所以在.m文件中声明的成员变量是@private ...
- JS中的 公有变量、私有变量 !
公有变量.私有变量 ! 初学者的见解,算是记录学习过程,也算是分享以便共同成长,如有不正确的地方,还请不吝赐教! 先看代码1: function car(){ var wheel = 3; //私有变 ...
- CI控制器中设置在其它方法中可用的变量
开发过程中,某些变量可能需要被控制器中的其它方法所调用,这个变量改怎么设置呢? 其实可以用ci的$this->load->vars($array);和$this->load-> ...
- C++中使用初始化列表比在构造函数中对成员变量赋值更高效
这是在面试中遇到的一个问题,没有答出来,后来上网上查了一些资料,终于弄明白了: 一.首先c++标准规定成员变量必须在调用构造函数前进行初始化(这一点很重要) 二.如果我们在构造函数中对成员变量进行初始 ...
- 在SQL存储过程中给条件变量加上单引号
在SQL存储过程中给条件变量加上单引号,不加语句就会出问题,以下就是在存储过程中将条件where设置成了动态变化的,给where赋完值再和前面的语句拼接,再execute(SQL) ), )), )+ ...
- smarty中三种变量的访问方式
在模板中smarty有三种变量,第一种,php分配的变量,第二种配置文件里的变量,第三种,PHP全局数组里的变量,配置文件里变量的访问方式可以是{#bgcolor#},"#"必须紧 ...
- 15SpringMvc_在业务控制方法中写入模型变量收集参数,且使用@InitBind来解决字符串转日期类型
之前第12篇文章中提到过在业务控制方法中写入普通变量收集参数的方式,也提到了这种凡方式的弊端(参数很多怎么办),所以这篇文章讲的是在业务控制方法中写入模型变量来收集参数.本文的案例实现的功能是,在注册 ...
随机推荐
- 编码规范<1>
目录: 1 排版 2注释 3标识命名 4可读性 1排版 1-1程序使用UTF-8的编码方式 1-2使用空格作为缩进 , 尽量不要使用tab 1-3相对独立的程序块之间,变量说明之后必须加空格 . 例如 ...
- hdu1710(Binary Tree Traversals)(二叉树遍历)
Binary Tree Traversals Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/O ...
- ZigZag Conversion [LeetCode]
The string "PAYPALISHIRING" is written in a zigzag pattern on a given number of rows like ...
- 《转》---使用递归方法DataTable 绑定 TreeView
转自:http://blog.sina.com.cn/s/blog_8944756d01016yaj.html 前台: <asp:View ID="view0" runat= ...
- [译]Quartz 框架 教程(中文版)2.2.x 之第一课 开始使用Quartz框架
第一课:开始使用Quartz框架 在你使用调度器之前,需要借助一些具体的例子去理解(谁愿意只是猜啊?).你可以使用SchedulerFactory类来达到程序调度的目的.有一些Quartz框架的用户可 ...
- 转载python2进制打包相关
Python模块——struct(字节流,组包拆包实现) http://www.linuxidc.com/Linux/2014-02/97158.htm [日期:2014-02-24] 来源:Linu ...
- [转]JDK6和JDK7中的substring()方法
substring(int beginIndex, int endIndex)在JDK6与JDK7中的实现方式不一样,理解他们的差异有助于更好的使用它们.为了简单起见,下面所说的substring() ...
- 谈谈CSS的布局,display、position、float
前言 前端一直是我的一个很大的缺憾,这段时间痛顶思痛,决定好好的把前台的东西加强,这不,在学习了一段时间js之后,在做一些小练习,却发现最基本的一些css知识却还不了解,所以便有了这篇博文. 块级元素 ...
- Uploadify使用
Uploadify是JQuery的一个上传插件,实现的效果非常不错,带进度显示.不过官方提供的实例时php版本的,本文将详细介绍Uploadify在Aspnet中的使用,您也可以点击下面的链接进行演示 ...
- IT公司100题-13-求链表中倒数第k个结点
问题描述: 输入一个单向链表,输出该链表中倒数第k个结点.链表倒数第0个节点为NULL. struct list_node { int data; list_node* next; }; 分析: 方法 ...