首页 > 后端开发 > 正文

php 什么是可变变量

2024-07-25 03:07:35 | 我爱编程网

今天我爱编程网小编整理了php 什么是可变变量相关内容,希望能帮助到大家,一起来看下吧。

本文目录一览:

php 什么是可变变量

php 什么是可变变量

可变变量
有时候使用可变变量名是很方便的。就是说,一个变量的变量名可以动态的设置和使用。一个普通的变量通过声明来设置,例如:
<?php
$a = 'hello';
?>
一个可变变量获取了一个普通变量的值作为这个可变变量的变量名。在上面的例子中 hello 使用了两个美元符号($)以后,就可以作为一个可变变量的变量了。例如:
<?php
$$a = 'world';
?>
这时,两个变量都被定义了:$a 的内容是“hello”并且 $hello 的内容是“world”。因此,以下语句:
<?php
echo "$a ${$a}";
?>
与以下语句输出完全相同的结果:
<?php
echo "$a $hello";
?>
它们都会输出:hello world。
要将可变变量用于数组,必须解决一个模棱两可的问题。这就是当写下 $$a[1] 时,解析器需要知道是想要 $a[1]作为一个变量呢,还是想要 $$a 作为一个变量并取出该变量中索引为 [1] 的值。解决此问题的语法是,对第一种情况用 ${$a[1]},对第二种情况用 ${$a}[1]。
类的属性也可以通过可变属性名来访问。可变属性名将在该调用所处的范围内被解析。例如,对于 $foo->$bar 表达式,则会在本地范围来解析 $bar 并且其值将被用于 $foo 的属性名。对于 $bar 是数组单元时也是一样。
也可使用花括号来给属性名清晰定界。最有用是在属性位于数组中,或者属性名包含有多个部分或者属性名包含有非法字符时(例如来自 json_decode() 或 SimpleXML)。
Example #1 可变属性示例
<?php
class foo {
var $bar = 'I am bar.';
var $arr = array('I am A.', 'I am B.', 'I am C.');
var $r = 'I am r.';
}

$foo = new foo();
$bar = 'bar';
$baz = array('foo', 'bar', 'baz', 'quux');
echo $foo->$bar . "\n";
echo $foo->$baz[1] . "\n";

$start = 'b';
$end = 'ar';
echo $foo->{$start . $end} . "\n";

$arr = 'arr';
echo $foo->$arr[1] . "\n";
echo $foo->{$arr}[1] . "\n";

?>
以上例程会输出:

I am bar.
I am bar.
I am bar.
I am r.
I am B.

Warning
注意,在 PHP 的函数和类的方法中,超全局变量不能用作可变变量。$this 变量也是一个特殊变量,不能被动态引用。

php 什么是可变变量我爱编程网

PHP中,参数调用相应函数是如何实现的?

symfony 里面的 Action 是这样做的 所有函数都有前缀execute

加入你传入的是

那么就是调用mymod 模块的 myfunc 函数

具体可能是这样的意思

通过 URI 分析获取 mod 和 相应的 函数
$modules = "mymod";
$method = "myfunc"

$action = new $$modules();
$action->$method();

也就是 PHP 里比较喜欢人的 可变函数 以及 可变变量的 应用.

php 什么是可变变量

php中echo 与print 的区别

我爱编程网(https://www.52biancheng.com)小编还为大家带来php中echo 与print 的区别的相关内容。

echo 是语法结构,也就是关键字,不是函数。使用的时候不用加括号,加上也可以。显示多个值的时候可以用逗号隔开。只支持基本类型,布尔型除外,echo true的时候显示1,echo false的时候啥都没有。

print 和 echo 基本一致。但是print 不支持逗号分隔多个显示变量的语法。

print_r 是函数,不仅可以打印变量的的值,还能显示变量类型,而且也可以显示数组和对象这样复杂的变量类型。print_r() 将把数组的指针移到最后边。使用 reset() 可让指针回到开始处

以上就是php 什么是可变变量全部内容,更多相关信息,敬请关注我爱编程网。更多相关文章关注我爱编程网:www.52biancheng.com

免责声明:文章内容来自网络,如有侵权请及时联系删除。
与“php 什么是可变变量”相关推荐
Python中变量是什么意思
Python中变量是什么意思

Python中变量是什么意思变量在Python中,存储一个数据,需要定义一个变量number1=1#numbe1就是一个变量,用来保存数据:1number2=2#number2也是一个变量,用来保存数据:2sum=number1+number2#sum也是一个变量,用力保存1+2的值相关推荐:《Python视频教程》说明:所谓变量:就是可以

2024-02-11 07:42:47
变量命名的基本规则是什么?
变量命名的基本规则是什么?

python变量命名规则python变量命名需要遵循以下两个规则:1、变量名由英文字母、下划线_或数字组成,并且第一个字符必须是英文字母或下划线。2、变量名不能是Python关键字(又称关键词)。上面的两个原则很简单,却非常重要,一定要仔细理解。从第1个原则可以知道,变量只可以包含英文字母(大写和小写都行)、下划线或数字,不能包含这3种字符之外的其他字符(如空格

2024-03-04 18:58:00
PHP if函数里直接写一个变量是什么意思
PHP if函数里直接写一个变量是什么意思

php函数的变量和作用域&lt;?php$global_a="global";//这是一个全局变量。functionprivate_test(){$private_a="private";//这是一个局部变量,其有效范围就是这个函数内部。echo$private_a;}echo$private_a;//函数外部就不能再调用其局部变量了。PHPif函数里直接写一

2024-07-17 16:03:12
PHP 变量在哪里定义呢?
PHP 变量在哪里定义呢?

PHP变量在哪里定义呢?在你上述代码之前一般会有对$cookieusername和$cookiename的赋值语句,或者会有require或include语句,以引用其他php文件,而这两个变量恰好在其他文件中定义。如果你确定$cookieusername和$cookiename在第一行被引用,在他之前没有任何代码。那么还有一种可能的解释,那就是这个index.php文件被其他文件re

2024-07-22 04:59:43
php预定义变量有哪些
php预定义变量有哪些

php预定义变量有哪些PHP提供了大量的预定义变量。这些变量将所有的外部变量表示成内建环境变量,并且将错误信息表示成返回头。预定义变量又叫超全局变量,包括:(推荐学习:PHP视频教程)$_GET、$_POST、$_SERVER、$_REQUEST、$GLOBALS、$_COOKIE、$_SESSION、$_ENV、$_FILES、$php_errormsg、$HTTP_RAW_PO

2024-07-22 11:05:43
php中变量的后面跟一对小括号是什么意思
php中变量的后面跟一对小括号是什么意思

php中变量的后面跟一对小括号是什么意思实现动态调用函数。如functionaaa($data){echo'aaa';}$function='aaa';$function($data);//等价于调用aaa($data);在php中怎么用函数实现输出1-100中的质数(素数,只能被1和本身整除的数)用函数实现1-100中素数的算法如下:&lt;?p

2024-07-24 05:07:02
php中怎么调用方法中的静态变量?
php中怎么调用方法中的静态变量?

php中怎么调用方法中的静态变量?看看下面的实例:&lt;?phpfunctionTest(){$w3sky=0;echo$w3sky;$w3sky++;}?&gt;本函数每次调用时都会将$w3sky的值设为0并输出"0"。将变量加一的$w3sky++没有其到效果,因为一旦退出本函数则变量$w3sky就不存在了。要写一个不会丢失本次计数值的计数函数,

2024-07-24 12:10:47
win10java环境变量设置完后,但是eclipse打不开是为什么?
win10java环境变量设置完后,但是eclipse打不开是为什么?

win10java环境变量设置完后,但是eclipse打不开是为什么?这个问题可能有很多原因,以下是一些可能的解决方案:1.检查您的环境变量是否设置正确。您可以尝试在命令提示符中输入“java-version”和“javac-version”来检查Java是否已正确安装并配置。2.检查Eclipse是否正确配置了Java环境。您可以尝试在Eclipse中打开“Window”菜单

2024-06-25 21:43:33