关于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 相关文章推荐
phpmyadmin 常用选项设置详解版
Mar 07 PHP
PHP写的加密函数,支持私人密钥(详细介绍)
Jun 09 PHP
php实现计数器方法小结
Jan 05 PHP
php删除文本文件中重复行的方法
Apr 28 PHP
PHP借助phpmailer发送邮件
May 11 PHP
详解PHP中的PDO类
Jul 06 PHP
ThinkPHP在Cli模式下使用模板引擎的方法
Sep 25 PHP
利用php做服务器和web前端的界面进行交互
Oct 31 PHP
php 截取GBK文档某个位置开始的n个字符方法
Mar 08 PHP
tp框架(thinkPHP)实现三次登陆密码错误之后锁定账号功能示例
May 24 PHP
PHP赋值的内部是如何跑的详解
Jan 13 PHP
Laravel-添加后台模板AdminLte的实现方法
Oct 08 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/10/30 PHP
PHP插入排序实现代码
2013/04/04 PHP
PHP使用PDO调用mssql存储过程的方法示例
2017/10/07 PHP
PHP实现Huffman编码/解码的示例代码
2018/04/20 PHP
JS实现定时自动关闭DIV层提示框的方法
2015/05/11 Javascript
如何实现移动端浏览器不显示 pc 端的广告
2015/10/15 Javascript
JavaScript中数组去除重复的三种方法
2016/04/22 Javascript
全面解析jQuery $(document).ready()和JavaScript onload事件
2016/06/08 Javascript
javascript入门之string对象【新手必看】
2016/11/22 Javascript
jquery.Callbacks的实现详解
2016/11/30 Javascript
JavaScript实现的商品抢购倒计时功能示例
2017/04/17 Javascript
vue组件Prop传递数据的实现示例
2017/08/17 Javascript
实例详解ztree在vue项目中使用并且带有搜索功能
2018/08/24 Javascript
微信小程序canvas绘制圆角base64图片的实现
2019/08/18 Javascript
vue 中this.$set 动态绑定数据的案例讲解
2021/01/29 Vue.js
python分割和拼接字符串
2013/11/01 Python
Python中的MongoDB基本操作:连接、查询实例
2015/02/13 Python
Python函数可变参数定义及其参数传递方式实例详解
2015/05/25 Python
python字符串常用方法
2018/06/14 Python
python中单下划线_的常见用法总结
2018/07/10 Python
Python监控服务器实用工具psutil使用解析
2019/12/19 Python
python GUI库图形界面开发之PyQt5控件QTableWidget详细使用方法与属性
2020/02/25 Python
python 监控服务器是否有人远程登录(详细思路+代码)
2020/12/18 Python
CSS3田字格列表的样式编写方法
2018/11/22 HTML / CSS
一篇文章带你学习CSS3图片边框
2020/11/04 HTML / CSS
使用jTopo给Html5 Canva中绘制的元素添加鼠标事件
2014/05/15 HTML / CSS
奢华时尚的独特视角:La Garçonne
2018/06/07 全球购物
Hanro官网:奢华男士和女士内衣、睡衣和家居服
2018/10/25 全球购物
海蓝之谜英国官网:La Mer英国
2020/01/15 全球购物
2014年圣诞节促销方案
2014/03/14 职场文书
环保倡议书
2014/04/14 职场文书
公司捐款倡议书
2014/05/14 职场文书
股指期货心得体会
2014/09/13 职场文书
工作业绩不及格检讨书
2014/10/28 职场文书
2014年幼儿园小班工作总结
2014/12/04 职场文书
tensorflow学习笔记之tfrecord文件的生成与读取
2021/03/31 Python