0

私はZF2で次のことを試しましたが、ZF1が機能し、ZF2が機能しないというクエリ結果が得られません。ZF2 データベース アダプタは不完全で、ZF2 自体によって解決されないバグとして残されていますか? ドキュメントにはそうするように指示されていますが、単に機能していません。ZF2 アダプターは動作しますか?

TestController.php

<?php
namespace Application\Controller;
//namespace Application\Model;
use Zend\Mvc\Controller\AbstractActionController;
use Zend\View\Model\ViewModel;
use Zend\Db\Adapter\Adapter;
use Zend\Debug\Debug;

class TestController extends AbstractActionController {

  public function indexAction() {
    $sql = "SELECT * FROM stackoverflow";
    $statement = $this->adapter->query($sql);
    $res =  $statement->execute();
    Debug::dump( $res );
    exit;
  }
}

Module.php

<?php
namespace Application;
use Zend\Mvc\ModuleRouteListener;
use Zend\Mvc\MvcEvent;
use Zend\Mvc\Router\Http;
class Module {

  public function getServiceConfiguration()
  {
      return array(
          'factories' => array(
              'adapter' =>  function($sm) {
                  $config = $sm->get('config');
                  $dbAdapter = new \Zend\Db\Adapter\Adapter($config['db']);
                  return $dbAdapter;
              }
          ),
      );
  }
}

グローバル.php

<?php
return array(
//    'di' =>array(
//        'instance' =>array(
//            'PDO' => array(
//                'parameters' => array(
//                  'dsn'            => 'mysql:dbname=mydb;host=localhost',
//                  'username'       => 'mydb',
//                  'password'       => '',
//                )
//            ),
//            
//            'User' => array(
//                'parameters' => array(
//                    'pdo' => 'PDO'
//                )
//            )
//        )
//    ),


    'db' => array(
      'driver' => 'Pdo',
      'dsn'            => 'mysql:dbname=mydb;host=localhost',
      'username'       => 'mydb',
      'password'       => '',
//      'driver_options' => array(
//          PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES \'UTF8\''
//      ),
    ),


//    'service_manager' => array(
//        'factories' => array(
//            'Zend\Db\Adapter\Adapter' => 'Zend\Db\Adapter\AdapterServiceFactory',
//        ),
//    ),
);
4

2 に答える 2

4

$res結果セットです。結果セットからデータを抽出する方法の詳細については、ZF マニュアルを参照してください。

于 2013-01-14T18:26:23.353 に答える
1

//自分でzf2を始めたばかりですが、こんな感じでデータを取り出せそうです。

public function fetchAll() {

 $resultSet = $this->tableGateway->select();

 return $resultSet;

}

于 2014-03-24T03:57:11.630 に答える