php 怎么使用流程下面require定义的函数

WBOY
發布: 2016-06-13 13:37:12
原創
849 人瀏覽過

php 如何使用流程下面require定义的函数
这样能成功
$test = 'yes';
fna($test);
function fna($a)
{
  echo $a;
}
?>

但是这样就不能调用了
a.php
----
$test = 'yes';
fna($test);
require('b.php');
?>

b.php
----
function fna($a)
{
  echo $a;
}
?>

1,我知道把require放在前面就可以了直接调用了
2,google了一会还有一个解决办法使用 autoload机制

没有 "声明" 的办法解决吗


------解决方案--------------------
autoload只适用于自动加载类文件,对函数不行
“没有 "声明" 的办法解决吗” 这话什么意思? 你都知道require放在前面就好了,为什么还要走弯路呢?
------解决方案--------------------
用function_exists判断是否存在,不存在包含指定文件
------解决方案--------------------
“要先定义,后使用”这是批评 PHP 的主要论据之一
不是都说 php 草根吗?不规范吗?居然可以使用未经声明的变量,真是大逆不道!

于是 php 的开发者们就听取了你们的意见,放弃了 require 在编译期间的优先级
于是 require 和 include 就没有了质的区别

既然你们都坚持要“要先定义,后使用”,他又何必要维持灵活性呢?毕竟php是给你们当工具用的

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板