0
새로운 응용 프로그램을 만드는 데 ZF2가 사용되었습니다. 컨트롤러 및 모델 파일에서 db 연결에 관한 몇 가지 문제가 있습니다.Zend Framework 2 데이터베이스 연결 문제
모든 데이터베이스 자격 증명을 "global.php"및 "db.local.php"에 넣었으며 "Module.php"파일에서 db 어댑터 액세스를 가져 왔지만 컨트롤러 및 모델 파일에서 데이터베이스 연결을 가져 오지 않았습니다 컨트롤러 및 모델에서 쿼리를 실행하지 마십시오.
**global.php :**
return array(
'db' => array(
'driver'=> 'Pdo',
'dsn'=> 'mysql:dbname=pick_fire;host=localhost',
'driver_options' => array(
PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES UTF8'
),
),
'service_manager' => array(
'factories' => array(
'Zend\Db\Adapter\Adapter'=> 'Zend\Db\Adapter\AdapterServiceFactory',
),
),
);
**db.local.php :**
<?php
return array(
'db' => array(
'driver' => 'Pdo',
'dsn' => 'mysql:dbname=pick_fire;host=localhost',
'username' =>'root',
'password' =>'123456',
'driver_options'=> array(
PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES UTF8'
),
),
'service_manager' => array(
'aliases' => array(
'db' => 'Zend\Db\Adapter\Adapter',
),
),);
----------------------------------------------
**Module.php :**
public function getServiceConfig()
{
return array(
'factories' => array(
'mail.transport' => function (ServiceManager $serviceManager) {
$config = $serviceManager->get('Config');
$transport = new Smtp();
$transport->setOptions(new SmtpOptions($config['mail']['transport']['options']));
return $transport;
},
),
);
return array(
'factories' => array(
'adapter' => function($serviceManager) {
$config = $serviceManager->get('config');
$dbAdapter = new \Zend\Db\Adapter\Adapter($config['db']);
return $dbAdapter;
}
),
);
}
----------------------------------------------
우리가 데이터베이스 연결을 가져 얼마나 저를 제안하고 우리의 컨트롤러와 모델 파일에 쿼리를 실행하십시오 :
여기 내 코드입니다.
고맙습니다.