![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
PHP
iteye_8106
这个作者很懒,什么都没留下…
展开
-
PHP UTF-8 等宽度截取中英文字符
网站需要截取等宽新闻标题,对于GB编码的截取函数网上很多,没找到有适合UTF-8编码的。 考虑到UTF-8是1-4字节变长编码,虽然中文都是3字节,为了以后方便决定自己写个。截取的变量是宽度width而不是长度length。不同中英文(包括数字)字型搭会有不同显示效果,在不同显示器上相同字型也可能会有不同效果。 需要根据实际修改 x3变量的值,x3越大则3字节编码(如中文)字符就取得越少。...原创 2010-01-28 11:17:18 · 224 阅读 · 0 评论 -
PHP JSON字符串赋值给JS变量的编码处理·更新最简单办法
B/S项目中PHP要实现如此功能:获得数据集json_encode为json字符串然后赋值给HTML页面中JS变量,再用parseJSON函数转换为JS对象供动态生成select下拉菜单条目。开始是这样实现的:前后台数据库全部采用UTF-8编码 <?php // 从数据库获得, 数值在入库前经过 htmlspecialchars($str) 编码过$arr = array...2010-10-27 19:49:36 · 576 阅读 · 0 评论 -
PHP PDO prepare/execute 对拼接字段的问题
修改DZ使用pgsql,数据库日志里面一个错误: 错误: 无效的整数类型输入语法: "192.168.0.5"语句: SELECT s.sid, s.styleid, ... FROM sessions s, members m WHERE m.uid=s.uid AND s.sid='A3RO' AND (s.ip1 || '.' || s.ip2 ||...2011-09-06 12:13:26 · 302 阅读 · 0 评论 -
Discuz 7.2坑爹集锦
Discuz是强大的论坛系统(以下简称DZ)使用广泛。目前Dz最新版本是 X2(20111221),虽然DZ 7.2版本比较老,中间尚有DZ X1,X1.5,但是使用7.2版本的网站还不少。并且7.2是论坛程序,而X系列添加了许多功能已经不限于论坛发帖而是扩展到社区社交功能的一个所谓云平台。功能丰富带来的是代码的庞大以及维护的困难。如果仅仅是建立一个普通论坛不需要过多花哨功能以及因此带来的性能下降...2012-01-12 17:16:00 · 151 阅读 · 0 评论 -
Discuz 7.2坑爹集锦-PHP篇 -update 20120525
Discuz 7.2坑爹集锦-PHP篇ucc代表uc_client目录ucs代表uc_server目录类型: 代码风格 坑爹指数: ☆点评: DZ代码不错,不过其代码风格对于维护来说比较痛苦。本来应该尽量避免在判断中赋值表达式避免习惯之后本意的逻辑比较操作误写成赋值操作符而加大debug困难,而DZ恰恰相反不喜欢使用中间变量往往是变量赋值...2012-01-12 17:32:34 · 419 阅读 · 0 评论 -
cgi.fix_pathinfo=1时终极解决Nginx文件类型错误解析漏洞的方法
关于漏洞原理参见 nginx文件类型错误解析漏洞 ,最开始是直接把php.ini中设置 cgi.fix_pathinfo = 0想一劳永逸解决。不过后来发现其导致PHP的超全局变量 $_SERVER['PHP_SELF']为空于是有些程序会出错(比如Discuz会拼接出错误图片头像路径)。于是考虑在保持 cgi.fix_pathinfo =1时如何避免漏洞。网上搜索到的解决办法挺多比如 再...2011-10-19 19:59:58 · 505 阅读 · 0 评论 -
CentOS5.5上编译安装 PHP 5.3.6
CentOS 5.6一直没发布,CentOS 5.5的PHP5.1.6不支持json/hash,因为正研究Postfix+Dovecot邮件系统,webmail采用的 RoundCube 新版本(v0.5)要求PHP版本不小于5.2.1,于是决定编译安装最新版PHP。PHP前几天被入侵据说v5.3.6代码被污染,不过用来做研究测试应该没问题。 先卸载本机已经安装的PHP包,这些软件...2011-04-06 19:11:38 · 221 阅读 · 0 评论 -
Discuz 7.2坑爹集锦-js篇
Discuz 7.2坑爹集锦-js篇在调试DZ过程中firebug经常提示common.js出错,什么“Error: s is null”,“$ is not defined”,“BROWSER not defined”。其实多半和XML有关:当ajax操作时后台PHP出现错误(包括notice)导致前台JS在解析期望中XML格式返回值时出错。也许是DZ的ajax调用对返回值处理不够完善。解决...2012-01-28 20:30:24 · 184 阅读 · 0 评论 -
Discuz 7.2坑爹集锦-SQL篇 -update 2012.02.09
Discuz 7.2坑爹集锦-SQL篇 DZ使用的是MySQL的MyISAM引擎,特点是简单快速,非常适合网络扁平数据。当数据量超过一定规模(大概300万),数据关联复杂(表连接增多)后性能急剧下降。并且在高读写并发时锁表严重(MyISAM是表锁,InnoDB有行锁),甚至导致表损坏。DZ7.2代码中SQL写法存在不标准的问题,虽然不影响执行但对维护迁移是个问题。对数据类型检查也...2012-01-28 20:54:22 · 323 阅读 · 0 评论