仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 744|回复: 19
打印 上一主题 下一主题

[学习教程] PHP编程:进修PHP:详解mysql4.0今后的编码设置装备摆设

[复制链接]
分手快乐 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-3 23:59:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
因为函数实在是太多了,慢慢的你就会知道,知道有这个函数就可以。   扼要说一下mysql4.1今后的成绩
第一:mysql4.1的存储体例已是utf8的了。。也就是说他的文件编码是utf8格局,咱们不需求忧虑会有存储不了的字符
第二:mysql办事器需求以一种编码体例来启动,设定毗连(通信)过去的字符编码是甚么,就是所谓的咱们的交换言语
第三:mysql的client端,需求设定一种编码去和mysql的办事器端通信,也是交换言语
那末为何回呈现乱码哪?
就是出在这个毗连的过程当中,试想一团体用英文和你措辞,而你只分明中文,真的和小燕子一样,三块肉喂了马吃了。。
那末若何处理乱码的成绩哪?
有几个举措:
第一,办事器端mysql和客户端mysql编译时分用不异的charset
./configure --with-extra-charsets=big5,gbk,gb2312,utf8 --with-charset=utf8
个中--with-charset=utf8就是设定办事器或客户真个默许毗连体例中的编码,固然你可以用各类编码,只需一致就能够。
(我感到这个是恐吓人的,由于就算你用--with-charset=gbk,在日文或其他文字中也不会呈现乱码)
第二,在编译落后行设置,这个也有两种体例,读设置装备摆设文件,或直接加参数
先说直接加参数的体例:
以下是我用的一个办事器剧本,用来启动mysql
CODE:
#!/bin/sh
rundir=`dirname "$0"`
echo "$rundir"
/usr/local/soft/mysql4112/bin/mysqld_safe --user=mysql --pid-file="$rundir"/mysql.pid --datadir="$rundir"/var "$@"\-O max_connection
s=500 -O wait_timeout=60 -O key_buffer=32M --port=6000 --socket="$rundir"/mysql.sock --default-character-set=utf8 &

个中可以看到办事器启动的毗连编码为utf8,固然你可以用其余体例好比gbk
客户端那更轻易了
/$mysqlpath/bin/mysql -hxxxx -uxxx -pxxx -P6000 --default-character-set=utf8
呵呵,然后你在mysql中看到mysql>show variables;
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8
说一下参数
character_set_system | utf8 这个是体系的文件编码,一切的都是utf8
| character_set_database | utf8 这个就是咱们办事器的启动的时分设置的编码
其他几项是客户真个毗连编码
然后说经由过程my.cnf设置的办法,这个也分办事器和客户真个体例
编译的时分咱们可以经由过程--sysconfdir=/etc的体例设置my.cnf的读取目次
my.cnf的设置装备摆设,cnf在client端和server真个设置是一样的,地位分歧
以下是client端my.cnf一脚
CODE:
[client]
#password = your_password
port = 3306
socket = /tmp/mysql.sock
default-character-set=utf8

看一下就分明了,办事器端同理,不外是在[mysqld]下。
ps:my.cnf的地位是个成绩,假如编译的时分不设置sysconfdir的话,默许是在mysql的装置目次下的etc上面,这个目次需求你本人建一个,利用client端毗连既可以读取。
php有个成绩,他的mysql毗连不会读取mysql目次下的,而是读取/etc的根目次中的设置装备摆设文件,不晓得是否是个bug
ps:若何找到合适我本人的my.cnf文件那,这个是在mysql装置目次下的share/mysql/中,个中有
my-small.cnf
my-medium.cnf
my-large.cnf
my-huge.cnf
my-innodb-heavy-4G.cnf
分离对应数据库的巨细设置响应的设置装备摆设文件,这些设置的分歧只对server端起感化。
不断巩固,摸透大部分PHP常用函数,并可理解OOP,MYSQL优化,以及模板
活着的死人 该用户已被删除
沙发
发表于 2015-2-4 07:55:21 | 只看该作者
Apache不是非得用80或者8080端口的,我刚开始安得时候就是80端口老占用,就用了个 81端口,结果照常,就是输localhost的时候,应该输入为 localhost:81
兰色精灵 该用户已被删除
板凳
发表于 2015-2-5 23:57:24 | 只看该作者
再就是混迹于论坛啦,咱们的phpchina的论坛就很强大,提出的问题一般都是有达人去解答的,以前的帖子也要多看看也能学到不少前辈们的经验。别的不错的论坛例如php100,javaeye也是很不错的。
第二个灵魂 该用户已被删除
地板
发表于 2015-2-15 16:11:24 | 只看该作者
如果你可以写完像留言板这样的程序,那么你可以去一些别人的代码了,
山那边是海 该用户已被删除
5#
发表于 2015-2-26 00:07:17 | 只看该作者
最后介绍一个代码出错,但是老找不到错误方法,就是 go to wc (囧),出去换换气没准回来就找到错误啦。
蒙在股里 该用户已被删除
6#
发表于 2015-3-8 10:17:09 | 只看该作者
先学习php和mysql,还有css(html语言很简单)我认为现在的效果比以前的方法好。
分手快乐 该用户已被删除
7#
 楼主| 发表于 2015-3-12 11:42:51 | 只看该作者
至于模板嘛,各位高人一直以来就是争论不休,我一只小菜鸟就不加入战团啦,咱们新手还是多学点东西的好。
若相依 该用户已被删除
8#
发表于 2015-3-15 05:02:58 | 只看该作者
建数据库表的时候,int型要输入长度的,其实是个摆设的输入几位都没影响的,只要大于4就行,囧。
乐观 该用户已被删除
9#
发表于 2015-3-17 20:08:20 | 只看该作者
php里的数组为空的时候是不能拿来遍历的;(这个有点低级啊,不过我刚被这个边界问题墨迹了好长一会)
再现理想 该用户已被删除
10#
发表于 2015-3-24 23:12:51 | 只看该作者
多看优秀程序员编写的代码,仔细理解他们解决问题的方法,对自身有很大的帮助。
只想知道 该用户已被删除
11#
发表于 2015-3-27 02:11:19 | 只看该作者
php里的数组为空的时候是不能拿来遍历的;(这个有点低级啊,不过我刚被这个边界问题墨迹了好长一会)
小女巫 该用户已被删除
12#
发表于 2015-3-27 18:08:34 | 只看该作者
使用zendstdio 写代码的的时候,把tab 的缩进设置成4个空格是很有必要的
柔情似水 该用户已被删除
13#
发表于 2015-4-6 20:08:52 | 只看该作者
本文当是我的笔记啦,遇到的问题随时填充
小魔女 该用户已被删除
14#
发表于 2015-4-14 16:40:55 | 只看该作者
写的比较杂,因为我也是个新手,不当至于大家多多指正。
灵魂腐蚀 该用户已被删除
15#
发表于 2015-4-16 17:10:57 | 只看该作者
写js我最烦的就是 ie 和 firefox下同样的代码 结果显示的结果千差万别,还是就是最好不要用遨游去调试,因为有时候遨游是禁用js的,有可能代码是争取结果被遨游折腾的认为是代码写错。
若天明 该用户已被删除
16#
发表于 2015-4-24 15:29:57 | 只看该作者
如果你可以写完像留言板这样的程序,那么你可以去一些别人的代码了,
精灵巫婆 该用户已被删除
17#
发表于 2015-4-28 22:51:33 | 只看该作者
作为一个合格的coder 编码的规范是必须,命名方面我推崇“驼峰法”,另外就是自己写的代码最好要带注释,不然时间长了,就算是自己的代码估计看起来都费事,更不用说别人拉。
因胸联盟 该用户已被删除
18#
发表于 2015-5-1 06:16:26 | 只看该作者
首推的搜索引擎当然是Google大神,其次我比较喜欢 百度知道。不过搜出来的结果往往都是 大家copy来copy去的,运气的的概率很大。
透明 该用户已被删除
19#
发表于 2015-5-2 07:14:45 | 只看该作者
我还是推荐用firefox ,配上firebug 插件调试js能省下不受时间。谷歌的浏览器最好也不少用,因为谷歌的大侠们实在是太天才啦,把一些原来的js代码加了一些特效。
金色的骷髅 该用户已被删除
20#
发表于 2015-5-2 11:48:16 | 只看该作者
在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-6-19 21:18

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表