これはあなたがサービスに入れるタイプのものかもしれません。次のようなクラスを作成します。
class ArrayUtils
{
function array_duplicates($array)
{
...
return $duplicates;
}
}
そして、それをサービスとして定義します。YAMLを使用している場合は、次のようなものをconfig.ymlファイルに配置します。
services:
arrayUtils:
class: Full\Path\To\ArrayUtils
この設定では、SymfonyはArrayUtilsの単一のインスタンスを作成し、すべてのコントローラーにそのインスタンスへのアクセスを許可します。次に、次のように呼び出すことができます。
class SomeController
{
public function someAction()
{
...
$duplicates = $this->get("arrayUtils")->array_duplicates($array);
...
}
}
これはすべてSymfonyの依存性注入フレームワークの一部です。それはかなりクールです、そして私はここでそれを読むことをお勧めします:http ://symfony.com/doc/2.0/book/service_container.html
代替オプション
さて、それはそのような小さなコードのチャンクにとっては少しやり過ぎかもしれません。これを単一のバンドルでのみ使用する場合は、ベースコントローラーに配置し、他のすべてのコントローラーにそのベースコントローラーを拡張させることをお勧めします。
class BaseController
{
function array_duplicates($array)
{
...
}
}
class SomeController extends BaseController
{
function someAction()
{
$this->array_duplicates($array);
}
}