关于PHP语言构造器介绍


Posted in PHP onJuly 08, 2013

PHP里有echo、print、die、require等几个特殊的关键字,虽然它们用起来像是函数,但实际上更类似于if、while这样控制语句,而不是一个函数。也就是说,当解释器遇到:

print 'Hello world';

这样的一个表达式的时候,并不会把它转换成函数调用,而是直接映射到一系列预先定义好的操作。使用语言构成的时候可以加括号,也可以不加括号,但是使用函数的时候必须加括号。

你提到的“可变函数”,英文是”variable function”,变量函数的意思,翻译成“可变函数”也有点扭曲原义,把variable(变量)这个名词按形容词(可变)的含义来翻译了。PHP里的Variable function是指如果在一个变量后面加上一对括号,那么解释器会试图寻找名字和这个变量的值一样的一个函数,如果找到了就执行它。例如,有一个函数foo(),那么可以用下面这种方式调用这个函数:

// 初始化一个字符串变量 
$func = 'foo'; // 找到名字和这个字符串一样的函数,并且执行它 
$func();

所以,你提到的这句话的含义就是,使用变量函数这种方式来调用一个语言构成是不允许的,例如下面这样:

$func = 'print'; // 这样做会产生异常,因为print不是一个函数,而是语言的构成部分 
$func('hello world');

执行这段代码,会产生一个异常,函数print没有定义。

PHP 相关文章推荐
PHP 编程请选择正确的文本编辑软件
Dec 21 PHP
很好用的PHP数据库类
May 27 PHP
PHP MVC模式在网站架构中的实现分析
Mar 04 PHP
使用PHP实现Mysql读写分离
Jun 28 PHP
php页码形式分页函数支持静态化地址及ajax分页
Mar 28 PHP
php过滤所有的空白字符(空格、全角空格、换行等)
Oct 27 PHP
PHP截取IE浏览器并缩小原图的方法
Mar 04 PHP
PHP搭建大文件切割分块上传功能示例
Jan 04 PHP
Zend Framework数据库操作技巧总结
Feb 18 PHP
PHP将数据导出Excel表中的实例(投机型)
Jul 31 PHP
PHP实现可精确验证身份证号码的工具类示例
May 31 PHP
Laravel实现批量更新多条数据
Apr 06 PHP
php5.5新数组函数array_column使用
Jul 08 #PHP
PHP 关于访问控制的和运算符优先级介绍
Jul 08 #PHP
解析将多维数组转换为支持curl提交的一维数组格式
Jul 08 #PHP
php采集文章中的图片获取替换到本地(实现代码)
Jul 08 #PHP
php打开文件fopen函数的使用说明
Jul 05 #PHP
解析PHP中$_FILES的使用以及注意事项
Jul 05 #PHP
如何利用PHP执行.SQL文件
Jul 05 #PHP
You might like
PHP 向右侧拉菜单实现代码,测试使用中
2009/11/03 PHP
详解laravel安装使用Passport(Api认证)
2018/07/27 PHP
PHP DB 数据库连接类定义与用法示例
2019/03/11 PHP
php回调函数处理数组操作示例
2020/04/13 PHP
百度 popup.js 完美修正版非常的不错 脚本之家推荐
2009/04/17 Javascript
javascript实现的图片切割多块效果实例
2015/05/07 Javascript
jQuery插件开发汇总
2016/05/15 Javascript
使用JQuery中的trim()方法去掉前后空格
2016/09/16 Javascript
Java中int与integer的区别(基本数据类型与引用数据类型)
2017/02/19 Javascript
javascript定时器取消定时器及优化方法
2017/07/08 Javascript
Express使用html模板的详细代码
2017/09/18 Javascript
解读ES6中class关键字
2017/11/20 Javascript
关于jquery layui弹出层的使用方法
2018/04/21 jQuery
Vue2.0 v-for filter列表过滤功能的实现
2018/09/07 Javascript
微信小程序实现时间预约功能
2018/11/27 Javascript
vue-music 使用better-scroll遇到轮播图不能自动轮播问题
2018/12/03 Javascript
五句话帮你轻松搞定js原型链
2020/12/09 Javascript
讲解Python的Scrapy爬虫框架使用代理进行采集的方法
2016/02/18 Python
浅谈Python使用Bottle来提供一个简单的web服务
2017/12/27 Python
对Python中一维向量和一维向量转置相乘的方法详解
2019/08/26 Python
在tensorflow中实现屏蔽输出的log信息
2020/02/04 Python
python3格式化字符串 f-string的高级用法(推荐)
2020/03/04 Python
Jupyter notebook命令和编辑模式常用快捷键汇总
2020/11/17 Python
基于DOM+CSS3实现OrgChart组织结构图插件
2016/03/02 HTML / CSS
HTML5+CSS3:3D展示商品信息示例
2017/01/03 HTML / CSS
浅谈html5与APP混合开发遇到的问题总结
2018/03/20 HTML / CSS
美国摄影爱好者购物网站:Focus Camera
2016/10/21 全球购物
XMLHttpRequest对象在IE和Firefox中创建方式有没有不同
2016/03/23 面试题
证婚人搞笑证婚词
2014/01/10 职场文书
初中新生军训方案
2014/05/13 职场文书
社区志愿者培训方案
2014/06/10 职场文书
环境监测与治理技术专业求职信
2014/07/06 职场文书
网络营销计划书
2015/01/17 职场文书
2015年党员承诺书
2015/01/21 职场文书
统计员岗位职责范本
2015/04/14 职场文书
严以修身专题学习研讨会发言材料
2015/11/09 职场文书