我面临mysql数据库的问题。即使我将排序规则更改为cp1256_general_ci并尝试其他排序规则,我也无法将阿拉伯文本保存到mysql数据中。我找不到太多帮助。
任何能帮助我的人请帮助
对于一些字段,我已经将数据库级别和列级别的排序规则更改为cp1256_general_ci。
请建议我应该如何设置,因为我是新的PHP和MySQL
我还写了一个简单的INSERT语句来在mysql中插入输入数据。如果数据是阿拉伯,我在将数据插入mysql时是否必须采取任何情况?
简单的答案是:到处使用UTF-8。"无处不在"是指
- 在用于在数据库中存储数据的所有表单中
- 数据库连接
- 数据库表和列
- 在从数据库输出数据的所有页面中
如果您有现有的CP-1256数据(或该字符集中无法更改的传入数据),则可以使用iconv()
将其转换为UTF-8。
请注意,如果使用UTF-8,则需要确保使用多字节安全字符串函数。这种情况通常已经发生了,因为像strlen()
这样的标准函数被映射到mb_strlen()
。要了解服务器上是否存在这种情况,请参阅有关该问题的手动条目。