我遇到字符编码问题。我从Oracle DB读取数据,其中我的字符集编码为:
SELECT value$ FROM sys.props$ WHERE name = 'NLS_CHARACTERSET';
AL32UTF8
在src / Kernel.php中我添加了:
public function getCharset()
{
return 'UTF-8';
}
我的base.html.twig是
<meta charset="UTF-8">
在调试控制台中写这个:
[debug] Warning: oci_connect(): Invalid character set name: utf8mb4
如何为oci_connect设置正确的值?
我对DB的查询是由SecurityRepository.php完成的,这是由LoginController.php调用的
//SecurityRepository.php
public function checkLoginCredentials($username, $password): array {
$conn = $this->getEntityManager()->getConnection();
$sql = "SELECT surna, name, login FROM personal WHERE login = '" . $username . "' AND passw_coded = '" . $password . "'";
$stmt = $conn->prepare($sql);
$stmt->execute();
return $stmt->fetchAll();
}
如果我在编辑器中写东西,我的追逐者就可以了,但是当我从DB读取内容时,我的角色集就被打破了。我使用Symfony 4.0.4。