首页 > 可否直接使用自定义函数

可否直接使用自定义函数


function myfun(a,b){

return a+b;
}


这个简单的自定义函数,可否不通过require的方法,将它变成一个系统内部函数?
也就是我进入php -a 后,可以直接输入 echo myfun(3,4);
python可以把自定义函数放在一个专门放置系统函数的文件夹内,
这个自定义函数就和语言本身的内置函数一样使用了, php可否做到?

@brook我这么做了
vim   /etc/php5/apache2/php.ini
auto_prehend_file=/tmp/myFun.php
vim  /etc/php5/cli/php.ini
auto_prehend_file=/tmp/myFun.php

php -a 可以导入它,但是我正式引用它的时候,报错
php -a

Interactive mode enabled
function myFun(x,y){

return x+y;

}
php > echo myFun(3,5);
PHP Fatal error: Call to undefined function myFun() in php shell code on line 1


当然可以啦。你创建一个公共php文件,里面定义n个方法,引用好之后,掉用任意一个都可以这么写的。你可以参考tp框架里面有个common.php或者function.php方法文件。就是这么用的


mgajnpwmdgw


Add auto_prepend_file = /path/to/you/myFun.php to your php.ini file;

PS: php -a 和网页里用的不同的 php.ini,在网页里输出 phpinfo()查看正在使用的是 php.ini 路径,添加上面的一句就行了


  1. 专门准备一个php文件全部放这样的全局函数,

  2. 框架文件的头部 require_once 这个全局函数文件(比较灵活,且只对当前项目影响),

  3. 楼上的做法也是可以的,但除非你是一些方法每个项目都需要, 否则不推荐,并且这个文件也不建议放在项目文件夹下.


两个错误
vim /etc/php5/cli/php.ini
auto_prepend_file=/tmp/myFun.php

vim /tmp/myFun.php
<?php
function myfun($a,$b){
return $a+$b;
}

【热门文章】
【热门文章】