新手学堂:PHP服务器变量设置的方法介绍
变量类型变化(juggling) 电脑,技术,IT,学习,交流,网络安全,QQ,硬件,软件,编程,教程,建站. s5 |$ ~3 l( c) ~1 V# G
. h( [4 a4 [ V$ f% E6 `5 Owww.520diannao.com打造最好的电脑自学交流论坛% m3 \ {8 ~' e$ Y0 I* E' b `7 I
PHP不需要(或者说不支持)在声名变量明确他的变量类型;一个变量的类型是由这个变量被使用的前后关系来决定的,也就是说,如果你给一个变量var赋了 一个字符串的值,var就变成了字符串变量。如果你再将一个整数赋值给var,他又变成了一个整数型变量。 我爱电脑技术论坛- u1 V' b, l; G# ~8 \
8 E8 V* [: B: c0 Y, Y0 [3 B我爱电脑技术论坛7 w' n. n& U; y: Q, B$ z b( q
一个PHP自动转化变量类型的例子是加法的操作符’+’。如果任何一个操作数都是双精度数,那么所有的操作数被当作双精度数求值,并且结果也是双精度数。 否则,操作数将被认为是整数,结果也将会是整数。注意这并不影响每个操作数本身的变量类型,唯一的变化就是操作数在计算的过程中被如何处理。
- e5 C7 D6 C0 \& Z. fwww.520diannao.com
/ E0 P5 W- ?5 [+ q我爱电脑技术论坛打造最好的电脑自学交流论坛! M, F' R/ e; M& p6 f7 J9 }! M
我爱电脑技术论坛8 o! I; p% j5 K' ~; j" S) t* k2 r
$foo = "0"; // $foo 是一个字符串 ,值是“0”(ASCII 48) 我爱电脑技术社区--打造最好的电脑技术自学交流平台3 M( p4 u. u# \! [' K* g8 h7 I
+ e$ r+ D; d& n+ p2 p! W" q我爱电脑技术社区--打造最好的电脑技术自学交流平台$foo++; // $foo 是一个字符串,值是“1”(ASCII 49) 我爱电脑技术论坛' v, ^; K. s; A+ O2 q8 ]$ ], G2 e
$ u7 ~, I$ B. x! V! |打造最好的电脑自学交流论坛$foo += 1; // $foo 现在是一个整数(2)了
2 Y: c7 D6 H8 j( w5 e$ i3 Q' u$ a3 lwww.520diannao.comwww.520diannao.com' L# @' a! J. s" x
$foo = $foo + 1.3; // $foo 现在是一个双精度数(3.3)了 5 I( q2 Y# i( J% B+ ]' E' x% y% l
# O5 ?6 i- k h, V' r4 f; Q2 p我爱电脑技术社区--打造最好的电脑技术自学交流平台$foo = 5 + "10 Little Piggies"; // $foo 是一个整数 (15)
/ H$ i) Y3 h& ?- Z- i8 o# B/ h9 _; ~打造最好的电脑自学交流论坛% Q* M, i/ @/ e0 T
$foo = 5 + "10 Small Pigs"; // $foo 是一个整数 (15)我爱电脑技术社区--打造最好的电脑技术自学交流平台0 z8 W3 n3 C8 t( r' f: y) K+ C
电脑,技术,IT,学习,交流,网络安全,QQ,硬件,软件,编程,教程,建站; i4 s$ R6 T$ ?, @
电脑,技术,IT,学习,交流,网络安全,QQ,硬件,软件,编程,教程,建站5 n6 h2 A! k* y# ^2 J7 _$ F& T9 ]0 \
电脑,技术,IT,学习,交流,网络安全,QQ,硬件,软件,编程,教程,建站 K/ B+ E8 K3 z) s' O; U
如果你觉得上面例子中最后两个表达式看起来有点奇怪的话,请看 “字符串的转化”部分。
! z% ~# G4 w5 P# O7 X3 x我爱电脑技术社区--打造最好的电脑技术自学交流平台我爱电脑技术社区--打造最好的电脑技术自学交流平台# E2 Q @. T2 T7 f# q. N8 o6 f% V
我爱电脑技术论坛: _) ^$ j- J* n3 I3 X) C5 {
如果你希望强制一个变量被当作某种固定的类型来计算,请看 “类型强制(casting)” 一节。如果你希望转变一个变量的类型,请看函数“settype()”的说明。 打造最好的电脑自学交流论坛2 i6 X* [! X$ i: @2 S# ]( b
L& k @' `5 ^: m3 `& E
, `, M: q J& q, k5 }. `3 [ s# D我爱电脑技术社区--打造最好的电脑技术自学交流平台确定一个变量的类型 电脑,技术,IT,学习,交流,网络安全,QQ,硬件,软件,编程,教程,建站" i* X U0 E6 u1 @% S' E
" V, u" k9 c6 y# E. ?- d! E* awww.520diannao.com我爱电脑技术论坛: o; ?/ u9 h# Y0 j; T4 A# d' {- `" o
因为PHP自己决定变量的类型并且一般按照需要转化他们,一个特定的变量的类型不是在任何时间都非常明显。PHP包括一些函数可以找出这个变量的类型。这 些函数是gettype(), is_long(), is_double(), is_string(), is_array(), 和 is_object(). 我爱电脑技术社区--打造最好的电脑技术自学交流平台9 ]. Q3 T4 q5 J' F, p; d
打造最好的电脑自学交流论坛9 E( _0 B/ X# F3 }3 r r
! j& F8 O! G v+ L( Jwww.520diannao.com类型强制(type casting)
/ T( ?. u+ e4 {$ c E5 l5 L% I" e电脑,技术,IT,学习,交流,网络安全,QQ,硬件,软件,编程,教程,建站& l: j% \$ y8 d5 b( f1 R3 X
我爱电脑技术论坛2 [0 l& G2 E1 V2 k9 C* M
在PHP中类型强制同在C语言中大抵相似:将需要的类型的种类写在要强制的变量的前面的圆括号中。 www.520diannao.com3 l# w6 {( Z: B6 g+ R0 L
2 `7 Q& Q4 _) Z/ p! g; [: |" o1 d+ B我爱电脑技术社区--打造最好的电脑技术自学交流平台
3 @, E9 h, M; g" }8 L我爱电脑技术论坛
; X3 h9 L7 E$ M! r0 z$ Y我爱电脑技术论坛$foo = 10; // $foo 是一个整数
9 ?7 R* ]3 D( n0 o& z6 m电脑,技术,IT,学习,交流,网络安全,QQ,硬件,软件,编程,教程,建站
' v' d1 r1 l1 w- Y" |www.520diannao.com$bar = (double) $foo; // $bar 是一个双精度数
+ O. l9 Z8 c' S# F2 `7 }0 d我爱电脑技术论坛
/ f- ~+ J# i0 K. n6 }电脑,技术,IT,学习,交流,网络安全,QQ,硬件,软件,编程,教程,建站我爱电脑技术社区--打造最好的电脑技术自学交流平台% g; _$ G0 f+ C0 Y, ~: E, m
1 M, D0 l. L% ^- dwww.520diannao.com以下的强制方式是允许的:
' J% ?3 x' ^1 H% ]5 V我爱电脑技术论坛# _/ N+ R/ K% F- I; ?8 U9 s
; e2 r4 u5 T4 s(int), (integer) – 强制成整数 我爱电脑技术社区--打造最好的电脑技术自学交流平台; @8 n/ `7 F7 j1 ~' i
我爱电脑技术论坛4 n! Q. D! j: `1 s
; x6 i2 s( u9 n& J(real), (double), (float) – 强制成双精度数 9 ^( p# W7 Z% Z, W# [, G* L& c
8 r! K* Z& U6 X1 z" @) N我爱电脑技术社区--打造最好的电脑技术自学交流平台
9 L' g3 Z( _8 C+ }9 qwww.520diannao.com(string) – 强制成字符串
; ]+ |- q5 C9 ?3 }. p1 d( ~7 Awww.520diannao.comwww.520diannao.com' X/ W, s9 z9 c; v( A6 U
打造最好的电脑自学交流论坛) j; h o& ~7 ?7 |+ H* X* w
(array) – 强制成数组 打造最好的电脑自学交流论坛+ M& b0 b& c, u7 V8 D) e0 r) U2 T
( J1 `/ F% V# l. x
8 a: ?/ ]# }) c9 D( C5 |1 Y+ }打造最好的电脑自学交流论坛(object) – 强制成对象