【发布时间】:2013-09-02 04:59:11
【问题描述】:
我已经添加了
app_path().'/classes',
到 ClassLoader::addDirectories 数组中的 global.php。在 app/classes/helpers/Url.php 我有:
<?php namespace Helpers;
class Url {
public static function prep($str)
{
if ($str == 'http://' OR $str == '')
{
return '';
}
$url = parse_url($str);
if ( ! $url OR ! isset($url['scheme']))
{
$str = 'http://'.$str;
}
return $str;
}
}
然后在一个视图中我有:
{{HTML::link(Helpers\URL::prep($place->url), $place->url, array('target' => '_blank'))}}
这在本地运行良好,但在我的服务器上出现错误:找不到类“Helpers\URL”。我尝试通过these steps,但它也没有工作。有什么想法吗?
【问题讨论】:
-
你运行 composer dump-autoload 了吗?
-
是的,但由于它没有加载到作曲家中,它没有做任何事情。我什至在 composer 中添加了 classes 目录,然后转储,仍然得到相同的结果。
-
Class Url {}或Class URL {}? -
但是在 composer.json - 在“autoload”/“classmap”下 - 你添加了“app/classes”吗?
-
当您尝试在 global.php 中使用
app_path()加载类时,namespace将不起作用。如果你需要namespace那么你必须使用 composer.json 自动加载。
标签: php oop laravel laravel-4 composer-php