PHP $$符号的作用与使用方法
php中$$符号的定义与作用
在PHP中单个美元符号变量($str),表示一个名为str的普通变量,它可以存储字符串、整数、数组、布尔等任何类型的值。
双美元符号的变量($$str):表示一个可变变量(也可叫做引用变量),用于存储$str的值。
可变变量:指一个变量的变量名可以动态的设置和使用,利用一个普通的变量通过声明来设置。
注意:PHP 的函数和类的方法中,超全局变量不能用作可变变量。$this变量也是一个特殊变量,不能被动态引用。
例:
$$str;
php中$$符号的使用方法
示例代码:
<?php
$var = 'hello word !';
$str = 'var';
echo $str;
echo $$str;
?>
输出结果:
var
hello word !
说明:
1、$str的变量的值为字符串 var
2、$$str为一个可变变量,$str的值为 var 则 $$str 等同于 $var
示例2:
<?php
$a = 'b';
$b = 'c';
$c = 'a';
echo $a; //输出 :b
echo $b; //输出 :c
echo $c; //输出 :a
echo $$a; //输出 :c
echo $$$a; //输出 :a
echo $$$$a; //输出 :b
?>
示例3:
类的动态实例化
<?php
class data_user {
function age(){
return '10';
}
}
$var = 'data_user';
$a = new $var;
echo $a->age();
?>
//输出结果:10
随机推荐
- Mysql insert on update
数据库 Mysql INSERT INTO table (column_list) VALUES (value_list) ON DUPLICATE KEY UPDATE c1 = v1, c2 = ...
- 实验十四:团队项目评审&课程学习总结
项目 内容 作业所属课程 所属课程 作业要求 作业要求 课程学习目标 (1)掌握软件项目评审会流程:(2)反思总结课程学习内容 任务一:团队项目审核已完成.项目验收过程意见表已上交. 任务二:课程学习 ...
- 2019牛客暑期多校训练营(第六场) H:Train Driver (最短路+概率)
题意:给定无向图,Alice在A集合选一个点,Bob在B集合选一个点,CXK在全集里选择一个点. 然后问“三人到某一点集合打篮球的最小距离”的期望. 思路:做过一个裸题,就是给定三人位置,问去哪里集合 ...
- wordpress调用置顶文章sticky_posts的三种方法
有时我们在开发wordpress时需要调用置顶文章sticky_posts,怎么调用呢?几种写法,有用到query_post的,有用到WP_Query,也有用到is_sticky(),下面随ytkah ...
- 关于springboot项目的jar和war两种打包方式部署的区别
关于springboot项目的jar和war两种打包方式部署的区别 关于springboot项目的jar和war两种打包方式部署的区别? https://bbs.csdn.net/topics/392 ...
- C++ auto 完成类型自动推导与使用
c++11 允许声明一个变量或对象(object)而不需要指明其类型,只需说明它是auto. 1.如: auto i = 42: //i是整型 double f(); auto d=f(); // ...
- Cookie实现购物车功能
这里的购物车暂时存放书,后期把参数改成Object,把方法抽取成接口,只要实现了接口的Object类都可以放进购物项,这样就实现了购物任何物品 使用购物项因为一个购物项可以包含某种商品的数量,总价等, ...
- Linux安全加固(二)禁止普通用户su到root/设置SSH终端接入白名单/修改history条数
一.禁止普通用户su到root管理员.设置可以su到root的白名单 1.首先看一下正常情况 2.可以看到普通用户使用su root命令,输入密码即可登录到root用户 3.下面开始配置禁止所有普通用 ...
- Micro Benchmark Framework java 基准测试类库
Micro Benchmark Framework 框架主要是method 层面上的 benchmark,精度可以精确到微秒级 比较典型的使用场景还有: 想定量地知道某个函数需要执行多长时间,以及执行 ...
- Java实现PV操作 | 哲学家进餐问题
运行结果: Java代码: public class Main { public static void main(String[] args) { Global global=new Global( ...