帅singwa老师看这里~请说一下php中什么时候该用双引号,什么时候该用单引号,什么时候不用?

来源:5-4 利用tp5分页机制处理列表页

谁与共少年

2017-04-19

如题。

我知道双引号里面的内容会经过解释再输出,单引号里面的不会进行解释,直接输出。

但是很多情况下我分不清引号的用法。

比如说使用fetch方法进行模板渲染,里面的第二个参数传入模板变量:

手册里面是这样的:

public function index()
    {        return $this->fetch('index', [            
                        'name'  => 'ThinkPHP',            
                        'email' => 'thinkphp@qq.com'
        ]);
    }

但是我在看视频时,您是这样写的:

public function add()
{
    $categorys = $this->obj->getNormalFirstCategory();
    return $this->fetch('', [
            'categorys'=>$categorys,
            ]);
}

那为什么这里的$categorys变量就不用加引号呢?

麻烦您和我详细的说说,谢谢~

写回答

3回答

菜鸟猴子

2017-04-21

public function index()

    {        return $this->fetch('index', [            

                        'name'  => 'ThinkPHP',            

                        'email' => 'thinkphp@qq.com'

        ]);

    }

手册中这样写是的意思是把thinkphp这个字符串赋值给下标为name的数组元素,把thinkphp@qq.com 这个字符串赋值给下标为email的数组元素。该数组是一个一维数组。

public function add()

{

    $categorys = $this->obj->getNormalFirstCategory();

    return $this->fetch('', [

            'categorys'=>$categorys,

            ]);

}

视频中这样写 是因为 $categorys 是查询到的数组 而不是字符串 意思是将查询到的结果集数组$categorys赋值数组中下标为categorys的数组元素。视频中这里数组是一个二维数组。

1
1
谁与共少年
明白了,非常感谢!
2017-04-22
共1条回复

菜鸟猴子

2017-04-20

$category是查询的数组,在这里只需要把查询的数组数据赋值给一个数组元素即可,所以不用引号即可

1
1
谁与共少年
感谢!
2017-04-20
共1条回复

菜鸟猴子

2017-04-20

php中双引号和单引号的区别是:双引号可以进行解释,单引号不能进行解释。如果需要解读变量就需要用双引号,否则用单引号。另外,在双引号中可以用单引号,单引号中可以用双引号;双引号中不能用双引号,单引号中不能用单引号这一点需要明确。了解了这些,就可以根据情况来使用单引号和双引号了

1
0

Thinkphp5.0仿百度糯米开发多商家电商平台

【毕设】BAT大牛亲授ThinkPHP 5.0,实战中学透新技能,应用于工作

2439 学习 · 1712 问题

查看课程