博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【荐】如何正确理解PHP之include,include_once,require,require_once等包含作用域
阅读量:5806 次
发布时间:2019-06-18

本文共 1011 字,大约阅读时间需要 3 分钟。

我们为大家总结的PHP include作用域的问题包括:PHP include 变量作用域和函数的作用域等方面的问题。希望对大家有所帮助。

很多程序员在使用PHP语言进行实际编程时,通常只会关注PHP函数能实现什么功能,但是都不会去深入的了解这个函数的具体含义及隐含的问题。我们今天就为大家介绍PHP include作用域的相关问题。

注意:本文档基于include叙述,但也适用于require。这两种结构除了在如何处理包含失败之外,其他完全一样:在包含失败 时,include()产生一个警告并继续执行,而require()则导致一个致命错误。换句话说,如果想在遇到丢失文件时停止处理页面就用 require(),否则就用include()。

PHP include作用域1:变量的作用域

由此例可看出:

(1). 被包含文件的变量的PHP include作用域遵从包含文件所在处的作用域。即在函数里使用include将其他文件的变量包含进来,这些变量的作用域为该函数内

(2). foo()函数外能打印出$color的值,并没有违反(1)的规定。那是因为函数开始已经声明$color为global (尽管foo()函数外并没有$color变量,此时的$color变量并不是vars.php里面的$color变量,而是一个强制声明为“全局”的新 变量,这时它还没有被赋值,当下面包含进vars.php后,根据(1)的原则,vars.php中的$color变量自动享有函数内的作用域,所以它的 值就是全局变量$color的值)

PHP include作用域2:函数、类的作用域

'; }}function show_func_included() { echo 'show_func_included
';}?>
printit(); // print it in ClassB.show_func_included() // show_func_included?>

所有在被包含文件中定义的函数在被包含后,在包含文件里都具有全局作用域(相当于把“函数”、“”的代码附加到包含文件的头部)。

结论:
1、被包含文件的
变量的PHP include作用域遵从(不改变)包含文件所在处的作用域。
2、所有在被包含文件中定义的
函数
在被包含后,在包含文件里都具有全局作用域。

 

转载地址:http://ygkbx.baihongyu.com/

你可能感兴趣的文章
生产制造追溯系统
查看>>
4.3. 键盘设置
查看>>
iOS - UIViewController
查看>>
MYSQL子查询与连接
查看>>
Appium+python自动化20-查看iOS上app元素属性
查看>>
准备 overlay 网络实验环境 - 每天5分钟玩转 Docker 容器技术(49)
查看>>
论文笔记之:Large Scale Distributed Semi-Supervised Learning Using Streaming Approximation
查看>>
IntPtr 转 string
查看>>
一文搞懂各种 Docker 网络 - 每天5分钟玩转 Docker 容器技术(72)
查看>>
学生名单
查看>>
用 C# 轻松读取、改变文件的创建、修改、访问时间
查看>>
(转) 多模态机器翻译
查看>>
【官方文档】Nginx负载均衡学习笔记(三) TCP和UDP负载平衡官方参考文档
查看>>
opencv安装指南
查看>>
矩阵常用归一化
查看>>
Oracle常用函数总结
查看>>
Linux共享内存使用常见陷阱与分析
查看>>
How to recover from 'programmers burnout(转)
查看>>
SpringCloud实战小贴士:Zuul的路径匹配
查看>>
【聚能聊有奖话题】Boring隧道掘进机完成首段挖掘,离未来交通还有多远?
查看>>