| 订阅 | 在线投稿
分享
 
 
 

PHP服务器变量设置的方法介绍

2008-12-22 08:07:17 编辑來源:互联网 国际版 评论
 
 
  变量类型变化(juggling)

  PHP不需要(或者说不支持)在声名变量明确他的变量类型;一个变量的类型是由这个变量被使用的前后关系来决定的,也就是说,如果你给一个变量var赋了 一个字符串的值,var就变成了字符串变量。如果你再将一个整数赋值给var,他又变成了一个整数型变量。

  一个PHP自动转化变量类型的例子是加法的操作符’+’。如果任何一个操作数都是双精度数,那么所有的操作数被当作双精度数求值,并且结果也是双精度数。否则,操作数将被认为是整数,结果也将会是整数。注意这并不影响每个操作数本身的变量类型,唯一的变化就是操作数在计算的过程中被如何处理。

  $foo = "0"; // $foo 是一个字符串 ,值是“0”(ASCII 48)

  $foo++; // $foo 是一个字符串,值是“1”(ASCII 49)

  $foo += 1; // $foo 现在是一个整数(2)了

  $foo = $foo + 1.3; // $foo 现在是一个双精度数(3.3)了

  $foo = 5 + "10 Little Piggies"; // $foo 是一个整数 (15)

  $foo = 5 + "10 Small Pigs"; // $foo 是一个整数 (15)

  如果你觉得上面例子中最后两个表达式看起来有点奇怪的话,请看 “字符串的转化”部分。

  如果你希望强制一个变量被当作某种固定的类型来计算,请看 “类型强制(casting)” 一节。如果你希望转变一个变量的类型,请看函数“settype()”的说明。

  确定一个变量的类型

  因为PHP自己决定变量的类型并且一般按照需要转化他们,一个特定的变量的类型不是在任何时间都非常明显。PHP包括一些函数可以找出这个变量的类型。这 些函数是gettype(), is_long(), is_double(), is_string(), is_array(), 和 is_object().

  类型强制(type casting)

  在PHP中类型强制同在C语言中大抵相似:将需要的类型的种类写在要强制的变量的前面的圆括号中。

  $foo = 10; // $foo 是一个整数

  $bar = (double) $foo; // $bar 是一个双精度数

  以下的强制方式是允许的:

  (int), (integer) – 强制成整数

  (real), (double), (float) – 强制成双精度数

  (string) – 强制成字符串

  (array) – 强制成数组

  (object) – 强制成对象

  注意在圆括号中允许制表符(tabs)和空格(spaces) ,因此下面的语句是等价的:

  $foo = (int) $bar;

  $foo = ( int ) $bar;

  字符串转化

  当一个字符串被当作数字型的值来计算时,他的结果和类型如下面所述的决定。

  如果这个字符串含有字符’.’,’e’,或者’E’,则被当作双精度类型变量来处理,否则当作是整数。

  这个字符串的值由词首部分决定。如果这个字符串以任何有效的数字的数据开始,那么这个数字数据就是这个字符串参加运算的值。否则,值为零(zero)。有效的数字数据是遵循下面的这些标记的,跟随在一个或多个数字后面(可以包含小数点),跟随在一个可选的指数后面。指数是由一个或多个数字跟在’e’或 ’E’后面构成的。

  $foo = 1 + "10.5"; // $foo 是双精度数 (11.5)

  $foo = 1 + "-1.3e3"; // $foo 是双精度数(-1299)

  $foo = 1 + "bob-1.3e3"; // $foo 是整数 (1)

  $foo = 1 + "bob3"; // $foo 是整数 (1)

  $foo = 1 + "10 Small Pigs"; // $foo 是整数 (11)

  $foo = 1 + "10 Little Piggies"; // $foo 是整数 (11);

  // 这个字符串包括字符'e'

  获取更多信息,请参考Unix手册关于strtod(3)的部分。
 
 
变量类型变化(juggling) PHP不需要(或者说不支持)在声名变量明确他的变量类型;一个变量的类型是由这个变量被使用的前后关系来决定的,也就是说,如果你给一个变量var赋了 一个字符串的值,var就变成了字符串变量。如果你再将一个整数赋值给var,他又变成了一个整数型变量。 一个PHP自动转化变量类型的例子是加法的操作符’+’。如果任何一个操作数都是双精度数,那么所有的操作数被当作双精度数求值,并且结果也是双精度数。否则,操作数将被认为是整数,结果也将会是整数。注意这并不影响每个操作数本身的变量类型,唯一的变化就是操作数在计算的过程中被如何处理。 $foo = "0"; // $foo 是一个字符串 ,值是“0”(ASCII 48) $foo++; // $foo 是一个字符串,值是“1”(ASCII 49) $foo += 1; // $foo 现在是一个整数(2)了 $foo = $foo + 1.3; // $foo 现在是一个双精度数(3.3)了 $foo = 5 + "10 Little Piggies"; // $foo 是一个整数 (15) $foo = 5 + "10 Small Pigs"; // $foo 是一个整数 (15) 如果你觉得上面例子中最后两个表达式看起来有点奇怪的话,请看 “字符串的转化”部分。 如果你希望强制一个变量被当作某种固定的类型来计算,请看 “类型强制(casting)” 一节。如果你希望转变一个变量的类型,请看函数“settype()”的说明。 确定一个变量的类型 因为PHP自己决定变量的类型并且一般按照需要转化他们,一个特定的变量的类型不是在任何时间都非常明显。PHP包括一些函数可以找出这个变量的类型。这 些函数是gettype(), is_long(), is_double(), is_string(), is_array(), 和 is_object(). 类型强制(type casting) 在PHP中类型强制同在C语言中大抵相似:将需要的类型的种类写在要强制的变量的前面的圆括号中。 $foo = 10; // $foo 是一个整数 $bar = (double) $foo; // $bar 是一个双精度数 以下的强制方式是允许的: (int), (integer) – 强制成整数 (real), (double), (float) – 强制成双精度数 (string) – 强制成字符串 (array) – 强制成数组 (object) – 强制成对象 注意在圆括号中允许制表符(tabs)和空格(spaces) ,因此下面的语句是等价的: $foo = (int) $bar; $foo = ( int ) $bar; 字符串转化 当一个字符串被当作数字型的值来计算时,他的结果和类型如下面所述的决定。 如果这个字符串含有字符’.’,’e’,或者’E’,则被当作双精度类型变量来处理,否则当作是整数。 这个字符串的值由词首部分决定。如果这个字符串以任何有效的数字的数据开始,那么这个数字数据就是这个字符串参加运算的值。否则,值为零(zero)。有效的数字数据是遵循下面的这些标记的,跟随在一个或多个数字后面(可以包含小数点),跟随在一个可选的指数后面。指数是由一个或多个数字跟在’e’或 ’E’后面构成的。 $foo = 1 + "10.5"; // $foo 是双精度数 (11.5) $foo = 1 + "-1.3e3"; // $foo 是双精度数(-1299) $foo = 1 + "bob-1.3e3"; // $foo 是整数 (1) $foo = 1 + "bob3"; // $foo 是整数 (1) $foo = 1 + "10 Small Pigs"; // $foo 是整数 (11) $foo = 1 + "10 Little Piggies"; // $foo 是整数 (11); // 这个字符串包括字符'e' 获取更多信息,请参考Unix手册关于strtod(3)的部分。
󰈣󰈤
日版宠物情人插曲《Winding Road》歌词

日版宠物情人2017的插曲,很带节奏感,日语的,女生唱的。 最后听见是在第8集的时候女主手割伤了,然后男主用嘴帮她吸了一下,插曲就出来了。 歌手:Def...

兄弟共妻,我成了他们夜里的美食

老钟家的两个儿子很特别,就是跟其他的人不太一样,魔一般的执着。兄弟俩都到了要结婚的年龄了,不管自家老爹怎么磨破嘴皮子,兄弟俩说不娶就不娶,老父母为兄弟两操碎了心...

网络安全治理:国家安全保障的主要方向是打击犯罪,而不是处置和惩罚受害者

来源:中国青年报 新的攻击方法不断涌现,黑客几乎永远占据网络攻击的上风,我们不可能通过技术手段杜绝网络攻击。国家安全保障的主要方向是打击犯罪,而不是处置和惩罚...

 
 
 
>>返回首页<<
 为你推荐
 
 
 
 转载本文
 UBB代码 HTML代码
复制到剪贴板...
 
 
 热帖排行
 
纯美的她_仔婷
苏州河畔_秀气女生
痞子的甘南日记
疑是银河落九天
 
 
王朝网络微信公众号
微信扫码关注本站公众号wangchaonetcn
 
  免责声明:本文仅代表作者个人观点,与王朝网络无关。王朝网络登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述,其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
©2005- 王朝网络 版权所有