[英]Calling a function that is inside another function
我有以下文件:
arrayLoader.php
chooseProgram.php
我想打电话从一个函数chooseProgram.php
是在另一个函数内部arrayLoader.php
。
这是我收到的错误消息:
致命错误:在第6行的C:\\ xampp \\ htdocs \\ testing \\ chooseProgram.php中,调用成员函数loadTitles()为null
arrayLoader.php
function arrayLoader() {
$arrayLoad = (file_get_contents("../files/TEMP_Array"));
function loadTitles() {
return $arrayLoad;
}
return;
}
选择程序.php
require('../tools/arrayLoader.php');
print "<pre>";
print_r(arrayLoader()->loadTitles());
print "</pre>";
我已经在Google上搜索了,但是我要么不明白发生了什么,要么我尝试了什么都不起作用。
有人可以帮忙吗? 谢谢。
函数loadTitles依赖于arrayLoader,因此您应该先调用arrayLoader,然后再调用loadTitles。
即。 它会工作。
<?php
abc();
xyz();
function abc(){
echo "abc";
function xyz(){
echo "xyz";
}
}
?>
它不会工作
<?php
xyz();
function abc(){
echo "abc";
function xyz(){
echo "xyz";
}
}
?>
因为直到调用abc才定义xyz。
我不知道具有嵌套函数的意义是什么,但是可以通过将父函数更改为类来实现:
arrayLoader.php
class arrayLoader {
function loadTitles() {
$arrayLoad = (file_get_contents("../files/TEMP_Array"));
return $arrayLoad;
}
}
选择程序.php
require('../tools/arrayLoader.php');
$obj=new arrayLoader;
$result=$obj->loadTitles();
print "<pre>";
print_r($result);
print "</pre>";
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.