小编tdb*_*i22的帖子

带接口的PHP多重继承

我试图理解使用接口如何给我多重继承,因为我一直在谷歌上搜索.

class A
{
 function do1(){}
 function do2(){}
 function do3(){}
}

class B extends A
{
 function do4(){}
 function do5(){}
 function do6(){}
}

class C extends B
{
}
Run Code Online (Sandbox Code Playgroud)

在上面的例子中,类C具有来自类A和B的所有方法.但是,类B也具有类A的所有方法,这是不必要的.

我的搜索已经出现使用接口来解决这个问题,方法是将方法移动到类并创建接口,如下所示.

interface A
{
     function do1();
     function do2();
     function do3();
}

interface B
{
     function do4();
     function do5();
     function do6();
}

class C implements A, B
{
     function do1(){}
     function do2(){}
     function do3(){}
     function do4(){}
     function do5(){}
     function do6(){}
}
Run Code Online (Sandbox Code Playgroud)

我真的没有看到这是如何解决这个问题的,因为所有代码都在新类中.如果我只想最初使用类A,我将不得不创建一个实现接口A的新类,并将相同的代码复制到新类.

有什么我想念的吗?

php oop inheritance interface

15
推荐指数
4
解决办法
4万
查看次数

Silex将app和请求传递给控制器​​类

我想要一个简单的方法来访问我的控制器类中的$ app和$ request.该文件说这样做,

public function action(Application $app, Request $request) {
 // Do something.
}
Run Code Online (Sandbox Code Playgroud)

但是向每个方法注入$ app和$ request似乎并不正确.有没有办法默认包含$ app和$ request到每个控制器,也许使用构造函数?我希望能够将它用作$ this-> app.

谢谢.

silex

8
推荐指数
1
解决办法
8517
查看次数

Symfony2测试参数

有没有办法用Symfony2配置测试参数?

我尝试从config_test.yml文件导入parameters_test.yml,但变量仍然来自parameters.yml文件,该文件由config.testl导入,由config_test.yml导入的config_dev.yml导入.

基本上我想在测试参数文件中设置不同的变量,这样我就可以访问这些值并在配置文件中使用它们.如果我将变量直接硬编码到config_test.yml中,我就无法访问它们.

我特别感兴趣的变量是database_name或doctrine-> dbal-> dbname.

谢谢

symfony

2
推荐指数
1
解决办法
1623
查看次数

Symfony嵌入式表单具有多个按钮

我有2个实体,并为它们创建了2个单独的表单类型。每种表单类型都有一些字段和一个提交按钮。

实体之一只是一个基本表(地址),其表单类型在页面上独立使用,并按预期工作,显示其所有字段和提交按钮。

另一个实体与地址表有关系。表单类型将嵌入地址表单类型及其一些自己的字段和一个提交按钮。问题是这种形式的类型在视图中显示时会显示2个不需要的按钮。而且我假设如果我嵌入多个表单类型,那么也会为每个表单类型显示一个按钮。

是否可以隐藏嵌入式表单类型的按钮,以便仅显示当前表单类型的按钮?

php forms symfony

0
推荐指数
1
解决办法
744
查看次数

标签 统计

php ×2

symfony ×2

forms ×1

inheritance ×1

interface ×1

oop ×1

silex ×1