2013-02-18 54 views
0

我剛剛安裝了Symfony 2,並且正在考慮將我自己的類包括到我的項目中,但是我無法獲得後續結果。包括自定義類

我想要一個控制器能夠調用「MyClass.php」並運行它的功能,而不使用包含。經過一番搜索之後,似乎這些類需要放置在特定的文件夾中,以便它們自動被「應用程序」使用。我目前相信它是項目包根目錄下的「lib」文件夾。

目前我的項目位於src/Bundle/ProjectBundle內。

我試過將Test類存儲在ProjectBundle/lib內部的Test.php中,並嘗試命名爲'Test.php'和Test.class.php,但我的控制器仍然無法找到文件/類。

我在哪裏放置課堂文件?

我該如何命名我的類文件? (除了標準的命名約定)

我是否完全錯誤地咆哮着樹?

編輯:要調用的類。

<?php 
class Test 
{ 
    public function callMe() 
    { 
     return "FUNCTION 1 SUCCESSFULLY CALLED"; 
    } 
} 
?> 

回答

2

您可以執行以下操作。放置類項目的子目錄,並在控制器中使用use註冊命名空間是這樣的:

// the last part is the class name you want to include 
use Vendor\BundleNameBundle\Utility\Factory; 

類將位於:src/Vendor/BundleNameBundle/Utility/Factory.php

+0

這是更接近,但現在我得到「它被發現的文件,但類定義有問題」 我已更新帖子以包含類定義。 – 2013-02-18 14:38:36

+1

你必須在你的類'test'中設置命名空間 - 就在'class Test'之前。根據我的示例,它將是:'namespace Vendor \ BundleNameBundle \ Utility;' – insertusernamehere 2013-02-18 14:46:27

+1

非常感謝。得到這一切和跑步隊感謝你。 – 2013-02-18 15:51:28