Archives

Archive for March, 2009
image

Windows 7 有个贴心的小功能,默认的情况下,当系统检测到系统的某设备发出声音时,会自动调节其它的设备的音量,以防止你错过一些重要的东西,比如当你的 SKYPE 收到电话时,如果系统中正在播放音乐,那么音乐的音量会被自动降低。

当然很多人可能根本不需要这个功能,比如我,当我开着 QQ 时,QQ 的好友消息的声音提示,一样会触发这个功能,foobar 的音乐音量会被默认减少 80%,我不得不重新调节系统音量。功能虽好,但是如果你不需要,那么它就不叫“贴心”,而是“麻烦”。

进入控制面板,或者右键点击系统栏的音量图标,打开声音控制面板,选择 Communications 面板,可以看到四个单选选项,选择最后一项 “Do nothing”,即可关闭这个功能。 😳

Comments Off on 关闭 Windows7 的音量自动调节
Mar 25th, 2009 | Filed under Windows

Akra’s DevNotes 看到的这篇文章,刚好最近两篇文章都是将乱码的,于是也搬过来了。

问题:

存储多字节字符到 MySQL,或者从 MySQL 中读取类似的数据,出现乱码。

解决方法:

在任何地方都使用 UTF-8 编码。

> 浏览器

1
< ?php header("Content-type: text/html; charset=utf-8"); ?>

或者使用一个 meta 标签来设置HTTP协议的响应头报文:

1
<meta http-equiv="content-type" content="text/html; charset=utf-8" />

这行 HTML 代码会通知客户端浏览器,文件类型为 html,且使用了 utf-8 编码。
header()函数所发送的 HTTP,从优先级上面看,由于先一步被浏览器所接受,所以优先级更高(不知道可不可以这么说)。
Read more…

Mar 22nd, 2009 | Filed under PHP

基本思路就是向数据库发送 SQL “SET NAMES UTF8″,可根据不同的情况来编写代码。

如:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
< ?php
$params = array (
    'host'     => '127.0.0.1',
    'username' => 'verdana',
    'password' => '******',
    'dbname'   => 'phpvim'
);
 
try {
    $db = Zend_Db::factory('PDO_MYSQL', $params);
    $db->query("SET NAMES UTF8");
    Zend_Db_Table_Abstract::setDefaultAdapter($db);
} catch (Exception $e) {
    exit($e->getMessage());
}
 
Zend_Registry::set('dbAdapter', $db);
 
/* vim: set expandtab tabstop=4 shiftwidth=4: */
?>

这是早期的解决方法,其实并不推荐这么做,因为并不是所有页面都需要 SQL 查询,上述代码放在 bootstrap 中,在不需要 SQL 连接的页面中也会开启一次数据库连接并发送 SET NAMES UTF8 ,这就浪费了资源。
Read more…

Comments Off on 在 Zend_Db 中使用 UTF-8 编码
Mar 18th, 2009 | Filed under PHP
Tags: , ,

Zend_Filter_Input 可以用来获得安全可靠的用户数据,简单的来说这个类就像一个黑盒,原始数据输入后,经过过滤器过滤,然后再由校验器校验,若通过了原先设定的过滤及校验规则,则最后输出可用的数据,否则给出详细的错误报告。

为了数据安全,比如转义一些特定字符,默认情况下 Zend_Filter_Input 会使用 HtmlEntities Filter 过滤所有的数据,然而不幸的是,这个 HtmlEntities 使用默认编码 ISO-8859-1,如果是中文等多字节语种,那么最后数据就会出现乱码,面目全非。

最近我在自己的项目中就遇到这个问题,其实解决方法很多,多写几行代码而已,但是因为乱码的问题由来已久,而且造成乱码的原因也非常多,找不到问题所在,那就恼火的很了,这里简单总结了一下。
Read more…

Comments Off on Zend_Filter_Input 的乱码问题
Mar 18th, 2009 | Filed under PHP
Tags: , ,

以前在使用 xdebug 的时候,偶有崩溃现象,但并不是太频繁,但是自从换用 Apache2.2 以后,Apache 崩溃的频率大幅增加,换用了不同的 PHP 和 xdebug 的版本都是一样,不停的崩溃,正常的开发根本无法保证。

后来无意中发现是 php5apache2_2.dll 的问题,因为我一直使用 module 模式安装 PHP5,所以不管 PHP5 和 xdebug 换到什么版本,都没有意义,昨天将 php5 换到 CGI 模式后,配合 xdebug 一直使用到现在,Apache2 再也没有崩溃过。

Mar 4th, 2009 | Filed under PHP
Tags: ,