我正在构建一个类,它的一些方法的主体在其他 php 文件中定义。我必须这样做,因为尽管大多数函数都很小、很健全并且是手工编写的,但有几个函数需要由我制作的另一个脚本自动生成。问题是虽然方法被调用,但这些方法中的返回语句似乎没有执行。一般结构是这样的:
MyClass.php:
<?php
class MyClass
{
public function foo()
{
include "myclass-foo-body.php";
}
}
?>
myclass-foo-body.php:
<?php
echo "foo()"; // This executes and outputs as normal.
return 42; // This does not appear to actually execute or return anything.
?>
测试.php:
<?php
include_once "MyClass.php";
$bar = new MyClass();
$foo = $bar->foo();
var_dump($foo); // Ends up being NULL instead of 42.
?>
那么,我在这里做错了什么?函数/方法体实际上不应该包含在另一个 php 文件中吗?我似乎已经遵循了php 的 include文档,但我似乎缺少重要信息。(我找不到关于这个主题的任何现有问题,所以希望这不是一个骗局!)
谢谢!