小编opH*_*AME的帖子

PHP模式 - 服务/模型/映射器/ Dao示例?

是否有人知道使用以下4个"图层"的PHP应用程序的一些好例子

ServiceLayer --> Model --> DataMapper --> DAO

我不确定它是否有意义,但是当我使用这样的设计时,我必须执行以下操作以在我的数据库中创建新记录:

$servcie = new Service(new Mapper(new Dao));
$service->save($data)
Run Code Online (Sandbox Code Playgroud)

服务正在创建一个新的数据对象并将其传递给Mapper,Mapper将数据传递给提供的Dao ..

使用这种结构的意图是什么?

为什么不简单:

$model = new Model();
$model->save($data)
Run Code Online (Sandbox Code Playgroud)

模型正在保存到DB.

php design-patterns

5
推荐指数
1
解决办法
2084
查看次数

Oracle/SQL ORDER BY语句出现问题

我在varchar2列中有以下内容:

   10.1.2.3
   10.2.3.4
   8.3.4.1
   8.3.2.1
   4.2.1.3
   4.3.2.1
   9.3.1.2
Run Code Online (Sandbox Code Playgroud)

当我查询数据库时,我需要一个有序的结果:

4....
8....
9....
10...
Run Code Online (Sandbox Code Playgroud)

NLS_SORT参数设置为德语,简单的" order by COLUMN DESC/ASC" 不像excepted 一样工作.它回来了

10.....
8......
9......
Run Code Online (Sandbox Code Playgroud)

有什么建议?

sql sorting oracle ip-address

5
推荐指数
1
解决办法
2393
查看次数

Zend Framework中的UnitTest错误控制器

我是100%代码覆盖率的粉丝,但我不知道如何在Zend Framework中测试ErrorController.

测试404Action和errorAction没问题:

    public function testDispatchErrorAction()
    {
        $this->dispatch('/error/error');
        $this->assertResponseCode(200);
        $this->assertController('error');
        $this->assertAction('error');
    }

    public function testDispatch404()
    {
        $this->dispatch('/error/errorxxxxx');
        $this->assertResponseCode(404);
        $this->assertController('error');
        $this->assertAction('error');
    }
Run Code Online (Sandbox Code Playgroud)

但是如何测试应用程序错误(500)?也许我需要这样的东西?

public function testDispatch500()
{
    throw new Exception('test');

    $this->dispatch('/error/error');
    $this->assertResponseCode(500);
    $this->assertController('error');
    $this->assertAction('error');

}
Run Code Online (Sandbox Code Playgroud)

phpunit zend-framework

5
推荐指数
1
解决办法
1217
查看次数

昨天Facebook FXBML没有呈现(IFRAME Canvas)

因为昨天是我的应用程序没有呈现xfbml标签(名称和图片).我在Canvas-iframe应用程序中使用新的JavaScript SDK.

Firebug告诉我控制台内的以下内容:

Get: http://0.channel20.facebook.com/x/3332504234/true/p_1348362044=0
Run Code Online (Sandbox Code Playgroud)

过了一会儿:

 XFBML tags failed to render in 30000ms.
Run Code Online (Sandbox Code Playgroud)

有人有同样的问题,或者知道为什么会这样?

facebook

4
推荐指数
1
解决办法
4600
查看次数

PHP getter/setter to array

关注"问题"

PHP类具有很多属性.很多Getters/Setter.

有没有什么好的解决方案将所有属性转换为数组?

protected $name;
protected $date;

public function getName();
public function getDate();
public function asArray(); // call all getters?
Run Code Online (Sandbox Code Playgroud)

php oop

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

使用Zend Framework获取Cookie值

警告:非静态方法Zend_Controller_Request_Http :: getCookie()不应该静态调用..

我尝试以下方法来获取Cookie值:

$cookieData = Zend_Controller_Request_Http::getCookie($key, $default);
Run Code Online (Sandbox Code Playgroud)

有更好的方法吗?

cookies zend-framework http

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

单行子查询返回多行 - 如何查找副本?

我不是一个大的ORACLE - SQL专家,所以我希望有人知道找到"重复"记录的好方法,它导致:单行子查询返回多行错误.

这是我的声明:

    SELECT
    CAST(af.SAP_SID AS VARCHAR2(4000)) APP_ID,
    (SELECT DR_OPTION
       FROM
          DR_OPTIONS 
       WHERE DR_OPTIONS.ID = (
            select dr_option from applications where applications.sap_sid = af.sap_sid)) DR_OPTION
FROM
    APPLICATIONS_FILER_VIEW af
Run Code Online (Sandbox Code Playgroud)

它适用于我的测试系统,因此我"确定"可用数据记录中必定存在错误,但我不知道如何找到它们.

sql database oracle

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

使用Zend_Autoloader进行模型

有人知道如何使用"新"Zend Autoloader加载模型吗?在Moment中,我的配置如下所示:

的application.ini

# Autoloader Namespace
autoloadernamespaces.0 = "Sl_"
Run Code Online (Sandbox Code Playgroud)

bootstrap.php中

   /**
     * Start Autoloader
     *
     * @access protected
     * @return Zend_Application_Module_Autoloader
     */
    protected function _initAutoload()
    {
        $autoloader = new Zend_Application_Module_Autoloader(array(
            'namespace' => 'Sl_',
            'basePath'  => dirname(__FILE__),
        ));

        return $autoloader;
    } 
Run Code Online (Sandbox Code Playgroud)

所以当我在/Models/User.php中放置一个模型时

class Sl_Model_User{}
Run Code Online (Sandbox Code Playgroud)

并创建一个新对象,一切都像设计的一样.但是如何使用Autoloader加载位于/Models/Dao/UserDB.php中的模型?

class Dao_UserDB{}
Run Code Online (Sandbox Code Playgroud)

php zend-framework autoloader

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

Dojo禁用div容器中的所有输入字段

有没有办法禁用dojo的div容器中的所有输入字段?

就像是:

dijit.byId('main').disable -> Input
Run Code Online (Sandbox Code Playgroud)

dojo input

2
推荐指数
3
解决办法
3万
查看次数

PHPUnit与Zend Framework

我已经使用Zend Framework研究了PHPUnit的一些示例,但有一部分我不理解.

在大多数示例中,Application Bootstrap从setUp()Method中的某种baseClass运行.

为什么不__construct()呢?有什么好理由吗?

我正在谈论的例子

php phpunit zend-framework

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