테스트 환경 클래스의 소멸자에서 테스트 데이터베이스를 삭제하려고합니다. 이 코드를 일반적인 방법으로 실행하면 문제가 없습니다.소멸자에서 PHP 프로세스를 호출하여 PDO :: exec() 호출
소멸자에 넣어 (또는 register_shutdown_function
사용) 잘 작동하지만 내 PHP 프로세스가 끝나지 않게합니다. xdebug가 코드를 조사하면 그 코드는 echo 'finished';
에 도달하지 않습니다.
이것이 PHP 프로세스가 멈추는 원인이되는 아이디어가 있습니까?
public function __destruct()
{
$config = $this->getConfiguration();
if ($config['dbtests']['autogenerate'] && $config['dbtests']['cleanup']) {
/** @var \PDO $dbh */
$dbh = new \PDO('mysql:host=' . $config['database']['host'], $config['database']['user'], $config['database']['password']);
$dbh->exec('DROP DATABASE ' . $config['database']['dbname']);
echo 'finished';
}
}