浏览模式: 描述 | 列表 2009年-12月的文章

再说php大整数问题

作者: 我不是鱼 (2009-12-29 13:37)分类: PHP   标签: php 大整数  

之前有说过大整数问题。http://www.phpfans.net/blog/2/article/33.html
在工作中又遇到了这个问题。

做相册时,falsh为了区分上传相片,传递一个微妙为单位的时间戳过去给php。参考相册视频的程序,将这个时间戳intval一个。不intval倒没问题,intval问题就来了:

时间戳类似于下面的id

PHP代码
  1. <?php    
  2. $id = '1259916810671';   
  3. $id2 = '1261993839812';   
  4. var_dump(intval($id));   
  5. var_dump(intval($id2));   
  6. ?>  


在 PHP 5.2.0 中输出结果是:(不同版本会有差异)

int(2147483647)
int(2147483647)

都是同一整数,所以后面在上传的相片用这个id去取的时候都是返回第一张。
又是超出了php integer 的范围。

还有就是,相册的相片是保存在100个表中,用通过用户id(之前的相册程序用户id是用整数而不是现在我们用的user_id)求模100得出。由于注册量比较多,用户id也是相当大

以下的程...

查看原文评论 (4) | 浏览 (9254)


phpMyAdmin查看latin1编码的表中文显示乱码的问题

作者: 我不是鱼 (2009-12-12 22:14)分类: PHP   标签: phpMyAdmin 中文乱码 mysql乱码  

mysql表默认是用latin1编码。像phpbb那样,虽然表是latin1编码,但内容一般都是gb2312编码插入的。直接在phpmyadmin上 语言:中文 - Chinese simplified 下查看是乱码

看起来乱码倒也没什么,有时想直接在上面修改一下就麻烦了。不知有无其他更好的方法,这里通过修改一下配置便可以正常显示
以 phpMyAdmin - 2.11.9.5 版本为例
打开 libraries/select_lang.lib.php 查找 PMA_langList() 可以看到返回一个数组,而数组中编码后面都紧接着utf-8。无论哪种编码,phpmyadmin在输出内容到页面时都是用 utf-8编码。现在要增加一个gb2312的编码,在数组最后加上

'zh-gb2312-utf-8' => array('zh|chinese simplified latin1', 'chinese_simplified-gb2312', 'zh', '中文'),

然后将gb2312输出对应的mysql字符集改成 latin1,查找 $GLOBALS['mysql_charset_map...

查看原文评论 (1) | 浏览 (7288)


博主


« 2019年-07月 »
30 1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31 1 2 3

分类


热门标签


最新评论


最近留言


概要

  • 文章数量: 41
  • 分类数量: 9
  • 标签数量: 73
  • 评论数量: 159
  • 浏览次数: 2973840

友情链接