Я пытаюсь получить Binary(12)
Значение из базы данных Sybase ASE с Symfony2 и php 5.6, я прочитал документ и попробовал много методов, но все еще не могу заставить это работать.
Я изо всех сил пытался заставить соединение работать, теперь оно работает с использованием FreeTDS, но когда я делаю простой запрос на выборку с php, я получаю искаженную строку ÿÿÿÿ????X
(Я ожидаю получить шестнадцатеричное число как ffffffff000000000001587f
) хотя, когда я делаю тот же запрос с isql, я получаю правильный вывод.
Я не уверен, что проблема заключается в разной кодировке между базой данных и PHP, потому что и PHP, и TSQL используют протокол TDS с кодировкой UTF-8.
Код, который я использую в своем проекте для получения данных:
$em = $this->get('doctrine')->getManager('qualif');
$connection = $em->getConnection();
$statement = $connection->prepare("select max(account_oidval) from ACCOUNT");
$statement->execute();
$results = $statement->fetchColumn();
Я пытался преобразовать кодировку с этим, но все еще не может получить правильный формат
$resultInUTF8 = mb_convert_encoding($results,"UTF-8","ISO-8859-1");
Попробуй это:
"select bintostr(max(...)) ....".
Других решений пока нет …