php 数据类型和变量

php教程 数据类型和变量
php是弱类型的,一个变量不需要预先声明,也不需要指定类型。php中变量是$加上变量名,php的变量是区分大小写的。 例如上例中的 $my='my'。
php支持的变量类型包括:布尔型,整型,浮点型,字符串,数组和对象。前四种很常用,也和其他语言类似,不多做介绍。数组和对象后文具体介绍。
php中有函数来检测 对象的类型,它们是 getttype。gettype返回一个string,它的值可以是array,boolean,double,integer,object,resource,string 和 unknow type. php也支持显式的类型转换,语法和c类似。
转换操作符 转换为
(array) 数组
(bool) (boolean) 布尔型
(int) (integer) 整数
(object) 对象
(float),(double),(real) 浮点数
(string) 字符串
例如:
 代码如下:
<?php
$str ='a string';
$num=15;
$numstr='123.3';
echo gettype($str),'<br/>';
echo gettype($num),'<br/>';
echo gettype($numstr),'<br/>';
$numstr=(float)$numstr;
echo gettype($numstr);
?>

输出结果为:

string
integer
string
double

还有函数可以用来判断一个变量是不是某种类型,例如 is_array(),is_bool()等等,用法都类似。

3. 函数和变量作用域
php声明函数的方法很简单,形式如下:
 代码如下:
function functionname(parameters){
function body
}

不需要指定返回类型,括号中也不需要指定变量类型,只要有变量名就可以。例如:
 代码如下:
<?php
function taxedprice($price,$taxrate){
return $price*(1+$taxrate);
}
echo taxedprice(100, 0.03);
?>

默认情况下,php是按值传递参数的,在函数内改变参数的值并不会改变函数外变量的值,但是php也支持按引用传递,语法和c一致,&$paramname,例如,下面一个经典的例子:
 代码如下:
<?php
function swap1($x,$y){
$t=$x;$x=$y;$y=$t;
}
function swap2(&$x,&$y){
$t=$x;$x=$y;$y=$t;
}
$a=3;$b=5;
swap1($a,$b);
printf("a is %d, b is %d <br/>",$a,$b);
swap2($a,$b);
printf("a is %d, b is %d <br/>",$a,$b);
?>

输出结果:

a is 3, b is 5
a is 5, b is 3

php的函数还支持参数的默认值,语法和c也是一样的。例如:
 代码如下:
<?php
function taxedprice($price,$taxrate=0.03){
return $price*(1+$taxrate);
}
echo taxedprice(100);
?>

下面介绍变量的作用域。php的变量作用域和c很类似,有局部变量,函数参数,全局变量,静态变量4种。局部变量就是在函数内声明的变量,函数参数是在函数首部声明的变量;不在函数中声明的变量是全局变量,全局变量可以在任何地方访问到,但是和c不同的是,如果在函数中要修改全局变量的值需要用global关键字显式指定它是全局变量,否则php就会声明一个同名的局部变量并且覆盖它。例如:
 代码如下:
<?php
$taxrate=0.03; //global
function change1() {
$taxrate+=1;
}
function change2() {
global $taxrate;
$taxrate+=1;
}
change1();
echo $taxrate,'<br/>';
change2();
echo $taxrate,'<br/>';
?>

输出的结果是:

0.03

1.03

php还有一种超级全局变量。超级全局变量是由php系统预定义的,主要用来访问与环境有关的信息,例如当前用户会话,用户操作环境和本地环境等。超级全局变量是一个数组,例如$_server中存储了服务器相关的信息。$_get,$_post,$_files,$_cookie中分别存储了客户端采用get提交,和post的提交的信息,上传的文件,cookie信息等。这些变量的使用都很简单,需要什么信息只需要查找

4 变量的变量
和c一类的静态语言不同,php的变量名本身可以是一个变量,这对于需要动态生成很多变量的时候是很便利的。例如:
 代码如下:
<?php
$r="hello";
$$r="i am hello";
echo $hello;
?>

输出结果为: i am hello

5.流程控制语句
主要包括,if else, while,for,do while,switch. 这些和c语言都很像,基本是一致的。不多做介绍。有些不同,php的 elseif是一个关键字,是连在一起的,而c语言是else if

时间: 2024-11-10 07:37:31

php 数据类型和变量的相关文章

C语言基础教程(二)数据类型、变量和运算符(8)

4.4 数组变量 所谓数组就是指具有相同数据类型的变量集, 并拥有共同的名字.数组中的每个特定元素都使用下标来访问.数组由一段连续的存贮地址构成, 最低的地址对应于第一个数组元素, 最高的地址对应最后一个数组元素.数组可以是一维的.也可以是多维的.Turbo C2.0象它高级语方一样也使用数组变量. 一.一维数组 一维数组的说明格式是: 类型 变量名[长度]; 类型是指数据类型, 即每一个数组元素的数据类型, 包括整数型.浮点型.字符型.指针型以及结构和联合. 例如: int a[10]; un

C语言基础教程(二)数据类型、变量和运算符(6)

3. 变量 4.1 变量说明Turbo C2.0规定所有变量在使用前都必须中以说明.一条变量说明语句由数据类型和其后的一个或多个变量名组成.变量说明的形式如下: 类型 <变量表>; 这里类型是指Turbo C2.0的有效数据类型.变量表是一个或多个标识符名, 每个标识符之间用","分隔. 例如: int i, j, k; unsigned char c, str[5], *p;4.2 变量种类 变量可以在程序中三个地方说明: 函数内部.函数的参数定义中或所有的函数外部.根据

《JavaScript和jQuery实战手册(原书第2版)》——2.5节操作数据类型和变量

2.5 操作数据类型和变量 在一个变量中存储数值或字符串这样的特定信息,通常只是程序中的第一步.大多数程序还操作数据以得到新的结果.例如,为分数增加一个数值以加分,把订购的商品的数目乘上商品的价格得到一个总金额,或者在一条通用性的消息末尾添加一个名字来把它个性化,例如,得到"Good to see you again, Igor".JavaScript提供了各种操作符来修改数据.操作符只是一个符号或单词,用来把一个或多个值修改为其他的值.例如,可以使用+符号(加法操作符)把数值相加.对

java数据类型-java中只要是基本数据类型的变量初始值问题

问题描述 java中只要是基本数据类型的变量初始值问题 java中只要是基本数据类型的变量 int a;和int a =0是一样的 只要是引用数据类型变量 String a = null; String a; 是一样的 以上说法正确吗 解决方案 基本数据类型对.引用的值不初始化是没有默认值的,引用的数据类型变量不初始化是不能用的.必须初始化了别的地方才能用.因为没有引用的内存地址. 解决方案二: 你分别打印String a = null; String a; 看看. 解决方案三: java中基本

JavaScript语言核心数据类型和变量使用介绍_基础知识

任何的编程语言都有自己的语言核心,和众多编程语言一样,JavaScript也有自己语言的核心.语言的核心部分一般被称之为JavaScript最为基础的部分.正所谓万事开头难,学习JavaScript也是一个道理,也有句古话说得好,好的开始是成功的一半.了解并学好JavaScript的语言核心部分是JavaScript学习道路上非常良好的开始. 下面是一段代码,主要介绍了JavaScript的数据类型和变量: 复制代码 代码如下: //在script标签中,所有//后面的内容都称之为注释 //注释

深入解析Java中的数据类型与变量_java

Java数据类型转换(自动转换和强制转换)数据类型的转换,分为自动转换和强制转换.自动转换是程序在执行过程中"悄然"进行的转换,不需要用户提前声明,一般是从位数低的类型向位数高的类型转换:强制类型转换则必须在代码中声明,转换顺序不受限制. 自动数据类型转换 自动转换按从低到高的顺序转换.不同类型数据间的优先关系如下:     低--------------------------------------------->高     byte,short,char-> int

详细解析Python当中的数据类型和变量_python

数据类型 计算机顾名思义就是可以做数学计算的机器,因此,计算机程序理所当然地可以处理各种数值.但是,计算机能处理的远不止数值,还可以处理文本.图形.音频.视频.网页等各种各样的数据,不同的数据,需要定义不同的数据类型.在Python中,能够直接处理的数据类型有以下几种:整数 Python可以处理任意大小的整数,当然包括负整数,在程序中的表示方法和数学上的写法一模一样,例如:1,100,-8080,0,等等. 计算机由于使用二进制,所以,有时候用十六进制表示整数比较方便,十六进制用0x前缀和0-9

Python入门(二)——IDE选择PyCharm,输入和输出,基础规范,数据类型和变量,常量,字符串和编码,格式化

Python入门(二)--IDE选择PyCharm,输入和输出,基础规范,数据类型和变量,常量,字符串和编码,格式化 我们从今天就开始正式的学习PY交易了,PY交易还行,我们有基础之后学习起来倒不是说那么的被动,我学习的是Python2.7,虽然现在随着版本的迁移至Python3,但是这个并不会对我们造成什么困扰,毕竟只是一个适应阶段 我们的学习资料:廖雪峰官方网站Python2.7教程 一.IDE选择PyCharm 我们虽然在前面一章已经配置过,但是我们还是有很多的IDE可以开发Py,比如su

FLASH中的数据类型和变量研究

变量|数据|数据类型 一.FLASH中的数据类型 1.字符串值 例:mytext="f4",mytex就是字符串,字符串就是由字符组成的序列 2.数值 例 mynum=2 mynum就是数值,可以用数学运算符号对他们进行运算. 3.逻辑值 例 mypass=false mypass就是逻辑值假,逻辑值只有两个值,一个是 true:一个是false. 4.对象 对象是属性的集合,每个属性又有自己的名称和值,例如:a.b.c="阿", c的值是字符串"阿&qu