Maison > Article > développement back-end > Solution au problème du stockage tronqué dans la base de données PHP
PHP est un puissant langage de script côté serveur largement utilisé dans le domaine du développement Web. Lorsque vous utilisez PHP pour des opérations de base de données, vous rencontrez parfois le problème des caractères tronqués stockés dans la base de données, en particulier lorsqu'il s'agit de données chinoises. Cet article expliquera comment résoudre le problème des caractères tronqués stockés dans les bases de données PHP et joindra des exemples de code spécifiques.
Tout d'abord, assurez-vous que le jeu de caractères de la table de base de données est défini sur UTF-8, afin de garantir que la base de données peut stocker correctement les caractères chinois. Vous pouvez définir le jeu de caractères de la base de données et de la table via l'instruction SQL suivante :
ALTER DATABASE your_database_name CHARACTER SET utf8 COLLATE utf8_unicode_ci; ALTER TABLE your_table_name CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
Lorsque PHP se connecte à la base de données, vous devez définir le jeu de caractères de connexion sur UTF-8 pour garantir une transmission correcte des données dans la base de données. Vous pouvez définir le jeu de caractères lorsque PHP se connecte à la base de données via l'exemple de code suivant :
$host = "localhost"; $username = "your_username"; $password = "your_password"; $dbname = "your_database_name"; $conn = new mysqli($host, $username, $password, $dbname); if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } // 设置连接字符集为UTF-8 $conn->set_charset("utf8");
Avant d'exécuter l'instruction SQL, vous devez définir le jeu de caractères pour PHP. pour envoyer des instructions SQL vers UTF-8. Assurez-vous que les données chinoises sont transmises correctement. Vous pouvez définir le jeu de caractères pour que PHP envoie des instructions SQL via l'exemple de code suivant :
// 设置发送SQL语句的字符集为UTF-8 mysqli_query($conn, "SET NAMES utf8"); // 执行SQL语句 $sql = "INSERT INTO your_table_name (column_name) VALUES ('中文数据')"; $result = mysqli_query($conn, $sql); if ($result) { echo "数据插入成功"; } else { echo "数据插入失败: " . mysqli_error($conn); }
Grâce à la méthode ci-dessus, vous pouvez résoudre efficacement le problème des caractères tronqués stockés dans la base de données PHP et garantir que les données chinoises peuvent être correctement stockées dans la base de données. J'espère que le contenu ci-dessus vous sera utile.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!