php的iconv函数只支持对字符串的转换编码,如果是数组,就要自己遍历转换了,因此写如上的函数,对任意维数组进行转换,同时转换下标(索引)及值。
注意:不转对象。
function mult_iconv($in_charset,$out_charset,$data)
{
阅读全文——共1501字
分类存档: 未分类 - 第9页
php+MSSQL的坑:(n)varchar型字段被截断
很自虐的搭配php+MSSQL,太多的坑,就不说text型被截断了。
受限于现有的asp+mssql应用,新增的部分功能使用php开发。对一个表的读写,后台使用asp,读写都很正常。前台一个调用是php写的,但就是遇到一个诡异的问题,要对数据做一个很复杂的解析处理,结果是数据丢失一部分。一层一层的输出,最后才发现是从数据库读出来了数据就不完整,这可奇怪了。又不是text型的数据,加了ini_set()修正text型默认长度限制,也不行。
但被截断长度很奇怪,恰恰是254个字节,似乎正好是较老的mssql里varchar()的默认最大长度;而该字段的实际是varchar(1000);
难道是字段类型问题?
阅读全文——共533字
parted打开磁盘报错Invalid partition table on /dev/sdx — wrong signature 0/gparted显示硬盘未分区
因为硬盘空间不足,所以对其中一个分区进行扩容(当然,本磁盘有空闲的空间才能扩容),使用gpared,以前的经验是本分区工具非常稳定,无损的分区调整。不过这次把一个swap分区往后移动时,报错了,分区调整失败。,gparted重新载入磁盘,但显示磁盘没有分区,所以分区都不见了。
这下麻烦了,不过在gome磁盘实用工具里还是正常的,其它分区也都能正常工作。然而gparted里显示有误,总令人不安心。
到windows里,使用diskgen也没有查出分区表有错误。再回到centos里,gparted仍没有分区。使用parted命令行工具,看到了如标题里的一行错误消息:
Invalid partition table on /dev/sda — wrong signature 0
阅读全文——共825字
国内开启google位置记录功能/android版google maps 7+上,恢复位置记录功能在国内使用(需root)
android版google 地图在 7以后的版本上,位置记录功能在国内不能用了,提示本功能不能在中国使用。
至少对本人,“位置记录”功能是非常有用的功能,尤其是骑车出行时记录自己的路线。目前还没找到替代产品。之前一段时间内恢复回旧版本,以使用该功能。后来使用shlug用户组的高手kernel老兄提供的方案,成功启用了本功能。
方法如下:
让andorid系统启动后加载下面这段脚本:
阅读全文——共743字
ms sql server中获取上次插入记录的标识id号(类似mysql LAST_INSERT_ID)
在当前连接会话中执行sql语句 SELECT LAST_INSERT_ID=@@IDENTITY
php5.3下安装ms sql server函数库
参考
http://docs.moodle.org/22/en/Installing_MSSQL_for_PHP
附件:
DBLIB_TS_for_php5.3.x
阅读全文——共146字
折腾:vps上php环境升级为php5.5
php5.5出来很久了,一直没应用,vps上还是5.3,折腾一番尝试一下看5.5效果如何。
查阅了官方的升级说明,从5.3到5.5变化不大,而且vps上主要跑的wordpress,drupal,phpmyadmin等应用,它们的开发理论是是比较规范的,估计问题不大。
原环境,php-fpm, nginx, 其中php安装了apc, memcache两个附加模块。
下载php5.3源码,解压,参考5.3的配置参数,改了下安装目录到/usr/local/php55,编译安装,很顺利。
阅读全文——共1532字
CentOS6.x下安装python2.7
CentOS6.x自带的python是2.6.x版,一直没有更新到2.7,其上游发行版redhat太过保守了。goagent的新版本已经要求python2.7以上版本了,为了升级goagent,决定安装python2.7.
一个原则:不要去改动系统自带的东西,除非你知道所有不得影响。
考虑到默认位置下的python是系统运行所需,覆盖升级有可能影响一些功能;并且yum update时,可能新装的python会被再次覆盖。所以计划将python2.7装到/opt/python2.7目录下。
在普通用户下下载编译python2.7,个人习惯,软件包都在 ~/optdata/software/build下编译,原源tar包放在 ~/optdata/software/source/下
阅读全文——共1357字