Character setsIdeally a proper character set will be set at the server level, and doing this is described within the » Character Set Configuration section of the MySQL Server manual. Alternatively, each MySQL API offers a method to set the character set at runtime. Caution
The character set and character escapingThe character set should be understood and defined, as it has an affect on every action, and includes security implications. For example, the escaping mechanism (e.g., mysqli_real_escape_string for mysqli, mysql_real_escape_string for mysql, and PDO::quote for PDO_MySQL) will adhere to this setting. It is important to realize that these functions will not use the character set that is defined with a query, so for example the following will not have an effect on them: Example #1 Problems with setting the character set with SQL
<?php Below are examples that demonstrate how to properly alter the character set at runtime using each each API. Example #2 Setting the character set example: mysqli
<?php Example #3 Setting the character set example: pdo_mysql Note: This only works as of PHP 5.3.6.
<?php Example #4 Setting the character set example: mysql
<?php |