php开发

利用PHPMailer类发送邮件使用教程,支持smtp协议

利用phpmailer类发送邮件使用教程, 不具有任何牛逼的技术,呵呵~,只是自己的做一个记录罢了。

老外的PHPMailer邮件发送类还是很强大啊。

文件下载地址: https://github.com/PHPMailer/PHPMailer


» 阅读全文

关键词: phpmailer

php对控制数据输出表格的时候,相同的日期合并为一列

有时候,在用PHP控制数据的时候,我们需要进行判断对于相同的日期(或者其他的元素)我们相应的列进行合并。可能说的不是很明白,上图:

11.jpg - 大小: 48.48 KB - 尺寸: 228 x 185 - 点击打开新窗口浏览全图

代码也很简单,php对控制数据输出表格的时候,相同的日期合并为一列代码如下:

» 阅读全文

关键词: php合并列

php解决json中中文部分被替换为unicode编码

json_encode会将中文转换为unicode编码,例如:'胥'经过json_encode处理后变为'\u80e5',最终的json中 中文部分被替换为unicode编码。我们要解决的就是将对象转换为json并保证对象内部的中文在json中仍然是以正常的中文出现,现在看来只使用 json_encode是不能达到目的的。

我的解决方法:先将类中的中文字段进行url编码(urlencode),然后再对对象进行json编码(jsonencode),最后url解码(urldecode)json,即最终的json,里面的中文依旧是那个中文!

» 阅读全文

关键词: unicode编码

记一次发现省内某知名网站的PHP后门之旅【续】

自从上次了小黑的php后门发现之后,发觉今天再次露出马脚,我也通过日志发现小黑到底是通过什么漏洞入侵进来的。哈哈。。。。我抓紧修补漏洞吧。。。。

上一篇:记另一次发现省内某知名网站的PHP后门之旅

今天不仅仅发现小黑的入侵漏洞,而且发现小黑留下几个后门,尼玛,相当隐蔽。

现在的小黑的技术水平真是见长啊,我靠,你能简单看出以下代码是一个后门吗?其实,这就是一个很普通的代码。

» 阅读全文

关键词: php后门

记另一次发现省内某知名网站的PHP后门之旅


» 阅读全文

关键词: php后门

PHP性能调试神器:xhprof安装过程和使用教程(分析php执行性能)

XHProf是Facebook开发的性能调试工具,帮助我们的PHP程序性能调优,更加健壮。XHProf是PHP的PECL扩展。没有XDeBug那些耗费资源,更加的小巧。

PHP 性能测试大体流程是:程序开头打点,结尾打点。那么XHProf机会记录在两个点之间的所有代码响应时所耗费的时间、内存、CPU等各项指标,我们也可以 知道一次请求调用了多少次MySQL,多少次Memcache,更加直观的指明优化道路。更多各位去百度百科看吧。

xhprof安装过程

1、先找到我服务器上php的安装目录,phpize一般都是在安装目录中,如下:

/usr/local/php/bin/phpize

2、找出php-config在哪个目录(下面会用到),我的服务器在:

/usr/local/php/bin/php-config

» 阅读全文

关键词: xhprof安装 , php性能调试

最新phpcms v9.4/9.5版本tag的伪静态修改方法

最新phpcms v9.4/9.5版本tag的伪静态修改方法,很简单,直接贴出方法:

1、添加url规则

在后台->扩大->url规矩里添加一个新的规矩用于评论模块,如下所示:
tags-{$tag}-{$page}.html
添加完成跋文住前面的id号,比如31。

2、在代码里写入url规则
打开phpcms/modules/content/tag.php文件,找到:

$infos = $keyword_data_db->listinfo($where, '`id` DESC', $page, $pagesize);

» 阅读全文

关键词: 伪静态 , phpcms

深入挖掘Discuz Ucenter同步登录过程原理分析

深入挖掘discuz ucenter同步登录过程原理分析,哈哈,其实纯属标题党,主要就是做了一个思路分析而已。

Discuz是Ucenter的一个应用。

Ucenter包含Server和Client,Discuz2.5x 内置有Ucenter server。

下面用Login来讨论这是如何实现同步的。

【登录过程】

用户登录,Dz调用的是 class/class_member.php 中的 on_login()方法,用户输入的信息存在一个全局的$_G 数组中。核心内容是

$ucsynlogin = $this->setting['allowsynlogin'] ? uc_user_synlogin($_G['uid']) : '';

字面意思理解就是,检查ucenter中检查该应用是否开启同步登陆,开启则调用uc_user_synlogin().

有童鞋在debug时遇到DZ的$ucsynlogin为空(正常的话应该是一串JS代码), 请检查全局的数组的 allowsynlogin 字段内容是否正确。也可直接忽略这步。将上述代码改成$ucsynlogin =uc_user_synlogin($_G['uid']);

» 阅读全文

关键词: ucenter , discuz