我希望在类中使用sluggerInterface。但我希望保留:
public function __construct()
{
}
所以我想在我的类中使用sluggerInterface,而不在我的构造函数中添加任何参数。(这是为了在创建对象时自动创建1个slug)。
所以我想要一个不同于这个的代码:
use Symfony\Component\String\Slugger\SluggerInterface;
class MyService
{
private $slugger;
public function __construct(SluggerInterface $slugger)
{
$this->slugger = $slugger;
}
public function someMethod()
{
$slug = $this->slugger->slug('...');
}
}
谢谢你,谢谢你
1条答案
按热度按时间lymnna711#
您不想在构造函数中使用自动装配吗?
您可以创建一个新的强击手,例如使用
Symfony\Component\String\Slugger\AsciiSlugger;
或者,您也可以使用
@required
注解(或PHP 8+的属性#[Required]
)将自动装配与另一个方法一起使用这是为了在创建对象时自动创建1个嵌条
您可能还希望查看事件侦听器,使用doctrine事件
prePersist
在持久化时对实体进行重命名可能是另一种想法。最后,您可能也会对gedmo doctrine-extensions sluggable感兴趣。