<?php
/******************************
* -- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `b`
--
CREATE TABLE IF NOT EXISTS `b` (
`a` int(11) NOT NULL AUTO_INCREMENT,
`t` varchar(100) NOT NULL,
PRIMARY KEY (`a`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ;
--
-- Daten für Tabelle `b`
--
INSERT INTO `b` (`a`, `t`) VALUES
(1, 'äüöß');
*/
error_reporting(E_ALL|E_STRICT);
ini_set('display_errors', 1);
class BTable
{
private $a;
private $t;
public function getA()
{
return $this->a;
}
public function getT()
{
return $this->t;
}
}
try
{
$db = new PDO('mysql:dbname=test;host=127.0.0.1', 'test', '',
array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'UTF8'",
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION)
);
$statement = $db->prepare('SELECT `t` FROM `b`');
if(!$statement->execute())
{
throw new Exception("Executing statement failed!");
}
$result = $statement->fetchObject('BTable');
assert( $result instanceof BTable );
$fp = fopen( dirname(__FILE__) . '/encoding.txt', 'w');
if($fp)
{
fprintf($fp, "%s\n", $result->getT());
fclose($fp);
}
else
{
throw new Exception("Could not open file!");
}
echo "Success!";
}
catch(Exception $exception)
{
echo $exception->getMessage();
}