Php 找不到Zend框架表单
在我的Php 找不到Zend框架表单,php,zend-framework,zend-form,Php,Zend Framework,Zend Form,在我的public/index.php中,我定义了包含路径: // Ensure library/ is on include_path set_include_path(implode(PATH_SEPARATOR, array( '/var/www/php_include/zend/1.11.7/library', '/var/www/php_include/application', get_include_path(), ))); 在我的IndexControl
public/index.php
中,我定义了包含路径:
// Ensure library/ is on include_path
set_include_path(implode(PATH_SEPARATOR, array(
'/var/www/php_include/zend/1.11.7/library',
'/var/www/php_include/application',
get_include_path(),
)));
在我的IndexController中,我希望使用
new Form_Login();
但在那里我收到了错误:
致命错误:在第31行的/var/www/php\u include/application/controllers/LoginController.php中找不到类“LoginForm”
表单位于应用程序/forms/Login.php
下:
class Form_Login extends Zend_Form
{
public function init()
{
get\u include\u path()
在使用new LoginForm()之前抛出:
/var/www/php_include/application/。/library:/var/www/php_include/zend/1.11.7/lib稀有:/var/www/php_include/application:/var/www/php_include/application/forms:。:/var/www/php_include:/usr/share/pear/pear
有人知道如何让它工作吗?应该给你的班级打电话
自动加载器将找到表单\u LoginForm
但是您应该将其更改为Form\u Login
和forms/Login.php
您的类应该被调用
自动加载器将找到表单\u LoginForm
但是您应该将其更改为Form\u Login
和forms/Login.php
试试
new Default_Form_LoginForm();
试一试
自动装弹机找不到我斯芬克斯。只需将表单/
路径添加到include路径
// Ensure library/ is on include_path
set_include_path(implode(PATH_SEPARATOR, array(
'/var/www/php_include/zend/1.11.7/library',
'/var/www/php_include/application',
'/var/www/php_include/application/forms',
get_include_path(),
)));
现在将文件重命名为LoginForm.php
,将类名重命名为LoginForm
然后使用
new LoginForm();
这与我在项目中使用的方法完全相同,只是我的forms目录放在视图中,includepath用application.ini设置
更新
这是我的引导类的一部分:
function _initAutoloader() {
$autoloader = Zend_Loader_Autoloader::getInstance();
$autoloader->setFallbackAutoloader(true);
return $autoloader;
}
自动装弹机找不到我斯芬克斯。只需将表单/
路径添加到include路径
// Ensure library/ is on include_path
set_include_path(implode(PATH_SEPARATOR, array(
'/var/www/php_include/zend/1.11.7/library',
'/var/www/php_include/application',
'/var/www/php_include/application/forms',
get_include_path(),
)));
现在将文件重命名为LoginForm.php
,将类名重命名为LoginForm
然后使用
new LoginForm();
这与我在项目中使用的方法完全相同,只是我的forms目录放在视图中,includepath用application.ini设置
更新
这是我的引导类的一部分:
function _initAutoloader() {
$autoloader = Zend_Loader_Autoloader::getInstance();
$autoloader->setFallbackAutoloader(true);
return $autoloader;
}
更改为“class Form_Login”并重命名为/forms/Login.php不起作用:/forms目录中的“s”不会把事情搞砸吗?如果您将forms/
重命名为form/
,会怎么样?这无关紧要。同样的问题。更改为“class Form_Login”并重命名为/forms/Login.php不起作用:/forms目录中的“s”不会把事情搞砸吗?如果您将forms/
重命名为form/
,会怎么样?这无关紧要。同样的问题。您可以添加LoginForm的定义吗?您可以添加LoginForm的定义吗?表单位于“forms/LoginForm.php”下,以“class LoginForm Extendes Zend_form”开头。将“/var/www/php_include/application/forms”添加到public/index.php。正在使用“new LoginForm();”获取它。。。仍然->致命错误:在第31I行的/var/www/php\u include/application/controllers/LoginController.php中找不到类“LoginForm”,我没有收到来自消息堆栈的错误,只有来自php的错误。在使用新的LoginForm()抛出之前,先获取包含路径::/var/www/php包含/application/。/library:/var/www/php包含/zend/1.11.7/library:/var/www/php包含/application:/var/www/php包含/application/forms:。:/var/www/php包含:/usr/share/pear/pear可能问题出在application.ini?Hmm中。。也许我的自动加载器已经生效了,所以它对我有效。可能你的自动装弹机工作不正常。我更新了我的答案,加入了我的引导课程。就是这样:)非常感谢!我真的需要看看表单在“forms/LoginForm.php”下,从“classloginformextensedzend_form”开始。将“/var/www/php_include/application/forms”添加到public/index.php。正在使用“new LoginForm();”获取它。。。仍然->致命错误:在第31I行的/var/www/php\u include/application/controllers/LoginController.php中找不到类“LoginForm”,我没有收到来自消息堆栈的错误,只有来自php的错误。在使用新的LoginForm()抛出之前,先获取包含路径::/var/www/php包含/application/。/library:/var/www/php包含/zend/1.11.7/library:/var/www/php包含/application:/var/www/php包含/application/forms:。:/var/www/php包含:/usr/share/pear/pear可能问题出在application.ini?Hmm中。。也许我的自动加载器已经生效了,所以它对我有效。可能你的自动装弹机工作不正常。我更新了我的答案,加入了我的引导课程。就是这样:)非常感谢!我真的需要看一看