PHP 一个类里能直接调用类外部的函数吗?
PHP 一个类里能直接调用类外部的函数吗?
PHP 一个类里能直接调用类外部的函数吗?
PHP 一个类里能直接调用类外部的函数吗?
PHP 一个类里能直接调用类外部的函数吗?
PHP 一个类里能直接调用类外部的函数吗?为什么
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
5条回答 默认 最新
- hhm6621314 2015-01-01 15:38关注
在实验的时候发现是可以的,代码如下
<?php function func(){ echo "I'm a external function <br />"; } class Test { function doExternalFunction($_externalFunc, $_param){ func(); $_externalFunc($_param); } } function sayHello($_param){ echo "hello, $_param"; }; $name = "HanMeiMei"; $test = new Test(); $test->doExternalFunction("sayHello", $name); ?>
在调用Test类实例的doExternalFunction()方法时,外部的func()方法是可以运行的,因为它是全局的。但是建议不要这样使用,
因为Test::doExternalFunction()对func()函数有依赖,当项目比较大时,而func()和Test类没有同时引入到一个文件中来,会引
起错误。比较理想的情况是,使用回调函数的形式来调用外部函数,就像执行在Test::doExternalFunction()执行sayHello()一样解决 无用评论 打赏 举报