2014-01-10 63 views
0

Laravel 4.x 嗨,我正在學習幫手。我有一個Helper(helpers.php),我想加載,所以我的View中的函數將能夠處理數據。laravel自動加載作曲家的幫手

我composer.json

... 
}, 
    "autoload": { 
     "classmap": [ 
      "app/commands", 
      "app/controllers", 
      "app/models", 
      "app/database/migrations", 
      "app/database/seeds", 
      "app/tests/TestCase.php" 
     ], 
     "files" : [ 
      "app/helpers.php" 
     ] 
    }, 
... 

而是通過運行:composer dump-autoload --optimize 我沒有錯誤,但我認爲不處理數據

查看

<img src="foo($photo->user->name) }}.jpg" alt="" > 

我helpers.php

function foo($email) 
{ 
    //process some data here that will return the name 
    return "john"; 

} 

回答

4

如果你沒有得到關於一個不存在的函數的錯誤,我認爲你可能是錯的。

你有這樣的:

<img src="foo($photo->user->name) }}.jpg" alt="" > 

但應該有這樣的:

<img src="{{ foo($photo->user->name) }}.jpg" alt="" > 
3

app/

修改app/start/global.php作爲

ClassLoader::addDirectories(array(
    app_path().'/commands', 
    app_path().'/controllers', 
    app_path().'/models', 
    app_path().'/database/seeds', 
    app_path().'/classes', //add this 
)); 
創建 classes目錄

在新建的classes目錄中創建您的Helpers.php文件。

<?php 
class Helpers { 
    public static function myCoolFunction() { 
     return "so cool"; 
    } 
} 

有時您可能需要運行composer dump-autoload

在這裏你去:Helpers::myCoolFunction();

加成

也是另一種快速的方法(有幾種方式其實),但不推薦,把你的功能boostrap/start.php。你可以打電話到任何你想要的地方。

+0

thok Metude 4 this answer! –

+0

不客氣,是否有另一個不作爲檢查的理由? – metude

+0

Melude。我兩個小時前投了票。還有其他人在你面前就我投了反對票。 –

相關問題