gpt4 book ai didi

php - 我是否需要在主类之前先在 symfony2 中创建接口(interface)

转载 作者:搜寻专家 更新时间:2023-10-31 20:47:48 24 4
gpt4 key购买 nike

我正在尝试实现我自己的 userBundle,并且我从 FOSUSerBunle 那里得到了一些想法。当我看到代码时,我注意到他首先创建了 UserInterface,然后在用户实体上实现了该接口(interface)。

我想知道 userInterface 有什么用,为什么我不能直接创建 UserClass

最佳答案

接口(interface)是一种面向对象的编程概念。在 PHP 中,它声明(而不是定义)一组公共(public)方法。任何实现接口(interface)的类都需要定义接口(interface)中声明的方法。您可以将接口(interface)视为契约(Contract)。

使用接口(interface)可以让你' program to an interface '.

在 FOSUserBundle 的情况下,UserInterface 的用途是让您的用户实体实际与 bundle 的其余部分一起工作。通过同意 UserInterface 的契约,您的用户实体将包含 FOSUserBundle 要求的必要方法。此外,您可能会看到 FOSUserBundle 中使用了类型提示,它专门引用 UserInterface,而不是具体的用户类。

如果您要推出自己的用户包,则无需实现任何接口(interface),因为设计完全由您决定。但是,这听起来像是在重新发明轮子,所以我建议只使用 FOSUserBundle。

关于php - 我是否需要在主类之前先在 symfony2 中创建接口(interface),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11428057/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com