本篇内容介绍了PHP中”的可变变量的用法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
所谓可变变量,就是一个变量的变量名可以动态的设置和使用。语法形式是PHP的特殊语法,其他语言中少见
有时候使用可变变量名是很方便的。就是说,一个变量的变量名可以动态的设置和使用。一个普通的变量通过声明来设置,例如:
& lt; PHP ? a 美元;=,& # 39;你好# 39;; 祝辞;
一个可变变量获取了一个普通变量的值作为这个可变变量的变量名。在上面的例子中你好使用了两个美元符号($)以后,就可以作为一个可变变量的变量了,例如:
& lt; php ?=$ $ a & # 39; & # 39;; ?在
这时,两个变量都被定义了:一个美元的内容是“你好”并且你好美元的内容是“世界”,因此,以下语句:
& lt; php ? echo “a 美元;${$一个}“; 祝辞;
与以下语句输出完全相同的结果:
& lt; php ? echo “a 美元;hello"美元;; ?在
它们都会输出:hello world。
要将可变变量用于数组,必须解决一个模棱两可的问题。这就是当写下$ $[1]时,解析器需要知道是想要一个美元[1]作为一个变量呢,还是想要美元美元作为一个变量并取出该变量中索引为[1]的值。解决此问题的语法是,对第一种情况用${$一个[1]},对第二种情况用${$一个}[1]。
类的属性也可以通过可变属性名来访问。可变属性名将在该调用所处的范围内被解析,例如,对于$ foo→美元酒吧表达式,则会在本地范围来解析酒吧美元并且其值将被用于$ foo的属性名。对美元于酒吧是数组单元时也是一样。
也可使用花括号来给属性名清晰定界。最有用是在属性位于数组中,或者属性名包含有多个部分或者属性名包含有非法字符时(例如来自json_decode()或SimpleXML)。
<强>示例# 1可变属性示例强>
& lt; php ? class foo  { var 才能;bar 美元;=,& # 39;小姐:am 酒吧强生# 39;; var 才能;arr 美元;=,数组(& # 39;小姐:am 强生# 39;,,& # 39;小姐:am B强生# 39;,,& # 39;小姐:am C # 39;公司); var 才能;r 美元,=,& # 39;小姐:am 18 # 39;; } foo 美元;=,new foo ();=$ bar & # 39;酒吧# 39;; baz 美元;=,阵列(& # 39;foo # 39;,, & # 39;酒吧# 39;,,& # 39;巴兹# 39;,,& # 39;quux& # 39;); echo $ foo→bar 美元;只“\ n"; echo $ foo→美元巴兹[1],只“\ n";=$ start & # 39; b # 39;; 最终获得美元,=,& # 39;ar # 39;; echo $ foo→{start 美元;只$结束},只“\ n"; 时间=美元arr & # 39; arr # 39;; echo $ foo→美元arr[1],只“\ n"; echo $ foo→{$ arr}[1],只“\ n"; 祝辞;
以上例程会输出:
我酒吧。
我酒吧。
我酒吧。
我是r。
我是B。
<>强例2可变属性示例强>
& lt; php ? ,//你还要even add more Dollar 迹象=,美元Bar “a";=,美元Foo “Bar";=,美元World “Foo";=,美元Hello “World";=,美元a “Hello"; ,一个美元;//Returns ,你好 ,$ $;//Returns 世界 ,$ $ $;//Returns Foo ,$ $ $ $;//Returns 酒吧 ,$ $ $ $ $;//Returns ,$ $ $ $ $ $;//Returns ,你好 ,$ $ $ $ $ $ $;//Returns 世界 ,//约皊o 提醒…//?在
<强> # 3例子可变属性示例强>
& lt; php ?//,Given these  variables … 美元nameTypes ,=,阵列(“至上”,,“last",,“company"); 美元name_first ,=,“John"; 美元name_last ,=,“Doe"; 时间=美元name_company “PHP.net";//,Then 却;能够loop is … foreach (nameTypes 美元;as $类型) ,print $ {“name_ type"美元;},只“\ n";//,,,equivalent 用却;能够print 语句。 print “name_first \ n name_last美元\ n name_company \ n"美元;; ?在
以上例程会输出:
约翰多伊
PHP.net
约翰
能源部PHP.net
ps: PHP可变参数入门详解
本文主要针对于PHP学习入门者,因此我们以一个具体的例子来代入讲解。
首先,我们需要编写一个PHP函数来计算两个数的和,可以如下编写: