<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
<channel>
<title><![CDATA[最族]]></title> 
<description><![CDATA[共筑梦想，拥抱未来！
Build a dream, embrace the future!]]></description>
<link>http://www.mostclan.com/</link>
<language>zh-cn</language>
<generator>www.emlog.net</generator>
<item>
	<title>PHP 数组相加问题</title>
	<link>http://www.mostclan.com/post-345.html</link>
	<description><![CDATA[一直以为两个数组相加，第二个数组会覆盖第一个数组相同键的值，今天碰到了个这个问题记录下 数组相加时，第一个已出现的键值不会受到后面相加的数组影响 另外关于array_merge： 当下标为数值时，array_merge()不会覆盖掉原来的值，当下标为字符时，array_merge()此时会覆盖掉前面相同键名的值 <a href="http://www.mostclan.com/post-345.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Wed, 13 Jan 2021 10:57:59 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-345.html</guid>

</item>
<item>
	<title>PHP利用parse_str创建任意多维数组</title>
	<link>http://www.mostclan.com/post-343.html</link>
	<description><![CDATA[回想到从前的一道面试题，使用字符串 arr[0][1][2][3] 将之转换成PHP数组，今天无意间想到 parse_str 可以用作多维数组的反解析，例如想要创造一个多维数组 arr[0][1][2][3]... 维数不定 通过parse_str，我们再配合使用字符串拼接的方式就能轻松组合任意维度的数组  ?php
$floor = '[0][1][2][sub][0]';
parse_str(arr{$floor}=123, $arr);
print_r($arr['arr']);die; //... <a href="http://www.mostclan.com/post-343.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p><p><a href="http://www.mostclan.com/post-128.html">register_globals的ON和Off配置</a></p></div>]]></description>
	<pubDate>Thu, 24 Dec 2020 15:14:25 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-343.html</guid>

</item>
<item>
	<title>记gbk、utf-8占用字节数</title>
	<link>http://www.mostclan.com/post-342.html</link>
	<description><![CDATA[计一次面试碰到的基础问题，这类问题还真没有个清晰记忆，汗颜-_-|| GBK： 中文、英文、数字均使用双字节来表示 UTF-8： 汉字占3个字节、数字占1个字节、英文字母占1个字节 <a href="http://www.mostclan.com/post-342.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Mon, 10 Aug 2020 09:50:37 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-342.html</guid>

</item>
<item>
	<title>Laravel生成数据表字典文档</title>
	<link>http://www.mostclan.com/post-341.html</link>
	<description><![CDATA[在写文档的时候需要用到数据表字典数据，一个个建立文档比较麻烦，偷个懒写了个脚本，我这里文档使用的是ShowDoc，因为他连得是SQLite数据库，所以使用时注意添加对应的数据库配置。 Route::get('/resolveSql', function () { $res = DB::select('show tables');
//    echo ' pre '; foreach ($res as $v) { $tableName = $v- Tables_in_loan; $sql       =    EOF
SELECT
-- 	t.TABLE_SCHEMA ... <a href="http://www.mostclan.com/post-341.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Tue, 14 Jul 2020 02:21:59 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-341.html</guid>

</item>
<item>
	<title>PHP 程序员的技术成长规划</title>
	<link>http://www.mostclan.com/post-339.html</link>
	<description><![CDATA[ <a href="http://www.mostclan.com/post-339.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Mon, 22 Jun 2020 15:34:04 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-339.html</guid>

</item>
<item>
	<title>php中的后期静态绑定</title>
	<link>http://www.mostclan.com/post-338.html</link>
	<description><![CDATA[使用的保留关键字： static 定义: static:: 不再被解析为定义当前方法所在的类，而是在实际运行时计算的。也可以称之为“静态绑定”，因为它可以用于（但不限于）静态方法的调用。 self与static的区别: self调用的就是本身代码片段这个类，而static调用的是从堆内存中提取出来，访问的是当前实例化的那个类（即static作用于当前调用的类） 示例一(在静态环境下)  ?php class A { public static function who() { echo... <a href="http://www.mostclan.com/post-338.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Fri, 03 Apr 2020 08:43:59 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-338.html</guid>

</item>
<item>
	<title>PHP 控制和反转</title>
	<link>http://www.mostclan.com/post-337.html</link>
	<description><![CDATA[PHP 很多地方也用到了依赖注入（控制反转），觉得有必要和大家简单聊一聊什么是依赖注入以及怎么使用它。 IoC - Inversion of Control 控制反转 DI - Dependency Injection 依赖注入 依赖注入和控制反转说的实际上是同一个东西，它们是一种设计模式，这种设计模式用来减少程序间的耦合 优势（为什么使用 PHP 的控制和反转） 使用依赖注入，最重要的一点好处就是有效的分离了对象和它所需要的外部资源，使得它们松散耦合，有利于功能复用，更重要的是使得程序的整个体系结构变得非常灵活。 ... <a href="http://www.mostclan.com/post-337.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Thu, 02 Apr 2020 15:30:54 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-337.html</guid>

</item>
<item>
	<title>PHP中phar包的使用</title>
	<link>http://www.mostclan.com/post-336.html</link>
	<description><![CDATA[PHP5.3之后支持了类似Java的jar包，名为phar。用来将多个PHP文件打包为一个文件。 首先需要修改php.ini配置将phar的readonly关闭，默认是不能写phar包的，include是默认开启的。 phar.readonly =  On 创建一个phar压缩包  ?php $phar = new Phar('swoole.phar'); $phar- buildFromDirectory(__DIR__.'/../', '/\.php$/'); $phar- compressFiles(Phar::GZ); $phar- stopBuffe... <a href="http://www.mostclan.com/post-336.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Wed, 01 Apr 2020 07:57:01 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-336.html</guid>

</item>
<item>
	<title>PHP队列SplQueue</title>
	<link>http://www.mostclan.com/post-335.html</link>
	<description><![CDATA[队列（Queue）
异步并发的服务器里经常使用队列实现生产者消费者模型，解决并发排队问题。PHP的SPL标准库中提供了SplQueue扩展内置的队列数据结构。另外PHP的数组也提供了array_pop和array_shift可以使用数组模拟队列数据结构。 SplQueue 
$queue = new SplQueue;
//入队
$queue- push($data);
//出队
$data = $queue- shift();
//查询队列中的排队数量
$n = count($queue); Array模拟队列 <a href="http://www.mostclan.com/post-335.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Sun, 22 Mar 2020 18:53:18 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-335.html</guid>

</item>
<item>
	<title>利用msg_id应对通知业务的去重设计</title>
	<link>http://www.mostclan.com/post-334.html</link>
	<description><![CDATA[情景 <a href="http://www.mostclan.com/post-334.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Wed, 18 Mar 2020 16:47:59 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-334.html</guid>

</item>
<item>
	<title>tp5中使用think-queue</title>
	<link>http://www.mostclan.com/post-332.html</link>
	<description><![CDATA[第一步:买个服务器嘿嘿嘿,装个宝塔玩玩 第二步:下载tp程序 注意tp版本(重要) 第三步:下载think-queue 注意:由于tp6早就出了 默认下载方法并不适用 需要在composer.json添加对应版本 <a href="http://www.mostclan.com/post-332.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p><p><a href="http://www.mostclan.com/post-128.html">register_globals的ON和Off配置</a></p></div>]]></description>
	<pubDate>Thu, 12 Mar 2020 02:59:08 +0000</pubDate>
	<author>Battle</author>
	<guid>http://www.mostclan.com/post-332.html</guid>

</item>
<item>
	<title>php使用redis的有序集合zset实现延迟队列</title>
	<link>http://www.mostclan.com/post-325.html</link>
	<description><![CDATA[延迟队列就是个带延迟功能的消息队列，相对于普通队列，它可以在指定时间消费掉消息。 延迟队列的应用场景： 1、新用户注册，10分钟后发送邮件或站内信。 2、用户下单后，30分钟未支付，订单自动作废。 我们通过redis的有序集合zset来实现简单的延迟队列，将消息数据序列化，作为zset的value，把消息处理时间作为score，每次通过zRangeByScore获取一条消息进行处理。  ?php class DelayQueue
{ protected $prefix = 'delay_queue:... <a href="http://www.mostclan.com/post-325.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Tue, 21 May 2019 15:33:29 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-325.html</guid>

</item>
<item>
	<title>记imagepng在lnmp环境中无法输出保存图片问题</title>
	<link>http://www.mostclan.com/post-323.html</link>
	<description><![CDATA[在网上查阅了很多资料说： 去除BOOM头 用ob_clearn();清除缓存 以上几个都没用，后来突然想起是不是没有权限生成文件？！ 然后ssh登录终端，用chown命令修改目录属主就正常了 = = chown -R www:www ./gd <a href="http://www.mostclan.com/post-323.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Fri, 23 Nov 2018 03:40:07 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-323.html</guid>

</item>
<item>
	<title>【原创】PHP纯文本制表</title>
	<link>http://www.mostclan.com/post-315.html</link>
	<description><![CDATA[有个打印机的项目让小V比较头疼：需要打印一个表格，原先是使用ESC/POS指令实现的，但是不同打印机会有兼容性问题，所以小V想自己写一个纯文本的表格，直接打印表格数据以此避免兼容问题，小V昨晚想着想着研究写到两点左右，2333，在此把一些代码分享出来，供广大网友参考！  ?php
/** * PHP纯文本制表 * @author Veris * @blog http://www.mostclan.com * @date 2018.07.20 */ /** * 获取打印字符串长度 * @param  string $str 待计算字符串 * @return integer     长度 */
function get_print... <a href="http://www.mostclan.com/post-315.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Fri, 20 Jul 2018 12:44:19 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-315.html</guid>

</item>
<item>
	<title>记一次Session引起的数据操作漏洞</title>
	<link>http://www.mostclan.com/post-314.html</link>
	<description><![CDATA[php的session id生成方法大致如下： PHPSESSIONID = hash_func(客户端IP + 当前时间（秒）+ 当前时间（微妙）+ PHP自带的随机数生产器) 客户端访问服务器时会自动分配一个session id给客户端（用cookie存储），所以不同浏览器访问都能获得一个不同的session id 问题场景如下： 小V在做的一个项目上有代理提现功能，有天发现客户提现异常了！查看了一下最近的提现日志发现最近两次提现有问题。 代理用户在 11:48 时拥有余额2440余，之... <a href="http://www.mostclan.com/post-314.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Fri, 13 Jul 2018 13:43:26 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-314.html</guid>

</item>
<item>
	<title>【原创】ThinkPHP事务结束问题</title>
	<link>http://www.mostclan.com/post-313.html</link>
	<description><![CDATA[TP5中对事务控制的代码如下： // 启动事务
Db::startTrans();
try{ Db::table('think_user')- find(1); Db::table('think_user')- delete(1); // 提交事务 Db::commit();    
} catch (\Exception $e) { // 回滚事务 Db::rollback();
} 小V在开展项目过程中，在try里为了判断业务使用了return返回，却没有对事务进行提交和回滚，初期并没有发现问题。 后来业务转移到后台命令行cli模式常驻内存执行，引... <a href="http://www.mostclan.com/post-313.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Sun, 01 Jul 2018 13:22:54 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-313.html</guid>

</item>
<item>
	<title>tp5整合GatewayWorker</title>
	<link>http://www.mostclan.com/post-312.html</link>
	<description><![CDATA[1:安装最新的tp5 2:在tp5所在目录,cmd命令输入composer require workerman/gateway-worker- <a href="http://www.mostclan.com/post-312.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Fri, 18 May 2018 01:34:45 +0000</pubDate>
	<author>Battle</author>
	<guid>http://www.mostclan.com/post-312.html</guid>

</item>
<item>
	<title>tp5分页修改为ajax分页</title>
	<link>http://www.mostclan.com/post-310.html</link>
	<description><![CDATA[后台代码 $list = LogRecharge::where('member_id', $id)- order('id desc')- paginate(10, false, ['type' =  'Bootstrap', 'var_page' =  'page', 'path' =  'javascript:ajax_recharge_go([PAGE]);']); $data['list'] = $list; $data['page'] = $list- render(); return json($data); 前端写对应ajax方法即可 <a href="http://www.mostclan.com/post-310.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Wed, 18 Apr 2018 05:47:00 +0000</pubDate>
	<author>Battle</author>
	<guid>http://www.mostclan.com/post-310.html</guid>

</item>
<item>
	<title>【原创】时限业务到期检测方法</title>
	<link>http://www.mostclan.com/post-281.html</link>
	<description><![CDATA[网站业务中常常会有某些服务到期检测（如会员套餐到期检测）： 1、简单到期检测，2018/2/8 21:16（当前时间）是否大于2018/2/8 20:00（截止时间）  2、观测时段到期检测，2018/2/8 21:16（当前时间）+3天（观测时段）是否大于2018/2/12 20:00（截止时间） <a href="http://www.mostclan.com/post-281.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Thu, 08 Feb 2018 13:13:15 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-281.html</guid>

</item>
<item>
	<title>【原创】PHP支付宝异步回调数据签名验证算法</title>
	<link>http://www.mostclan.com/post-249.html</link>
	<description><![CDATA[小V今天在做支付宝回调验签时碰到了不少问题： 1、openssl_get_publickey函数返回false（这里必须传支付宝的应用公钥，且格式正确，格式见后文代码）。 2、openssl_verify函数返回false，这里需要清除你的秘钥类型是什么（RSA/RSA2）。 贴函数代码： /** * 支付宝当面付异步回调数据验签 * @param  array $params                待验证数据 * @param  string $alipay_public_key    支付宝应用公钥 * @param  string $sign_type          ... <a href="http://www.mostclan.com/post-249.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Tue, 14 Nov 2017 12:07:05 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-249.html</guid>

</item>
<item>
	<title>【原创】记一次AJAX请求TP5接口解析JSON失败问题</title>
	<link>http://www.mostclan.com/post-248.html</link>
	<description><![CDATA[小V在写API接口时发生了个问题：使用jquery的ajax请求地址返回如下字符串，导致无法被dataType=json解析为json格式 {\code\:0,\msg\:\创建预支付码成功！\,\data\:\weixin:\\\/\\\/wxpay\\\/bizpayurl?pr=JuQfNMM\,\timestamp\:1510588707} 起初以为是ajax问题，搜索了相关的文章，有几个针对不解析json格式的原因： 1、JQuery版本问题，JQuery1.4对json的格式有着严格的要求，所有的键值都要用双引号标起来，说明文档 <a href="http://www.mostclan.com/post-248.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Mon, 13 Nov 2017 15:57:01 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-248.html</guid>

</item>
<item>
	<title>PHP设置HTTP缓存头</title>
	<link>http://www.mostclan.com/post-247.html</link>
	<description><![CDATA[对于PHP输出的内容，如果不是需要经常变动的内容（例如伪静态的一些页面，PHP输出JS或者CSS），使用PHP合理设置HTTP响应头添加缓存设置，让浏览器尽可能缓存下内容，在刷新和再次访问同样内容时，便不需要再次请求浏览器，从而能够大幅减少服务器的响应次数，同时浏览器呈现页面也会加快了，这是非常有用的一个技巧。 1、输出Cache-Control头： header('Cache-Control:max-age=120'); 这个的输出是表明让浏览器缓存120秒。这个指令很有用，但是局限性在于，刷新这个页面时还是会重新请求，所以你会感觉这个头好像没什么作用，但是对于一些输出的JS、CSS内容时是有... <a href="http://www.mostclan.com/post-247.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Sun, 05 Nov 2017 07:32:06 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-247.html</guid>

</item>
<item>
	<title>PHP自动捕捉页面500错误示例</title>
	<link>http://www.mostclan.com/post-246.html</link>
	<description><![CDATA[在程序调试时如果在本地我们出现500错误可以直接打开php.ini的错误来看到哪里错了,但在服务器中我们是不能这样做的,这样很容易让人感觉网站不正规的同时也可能给其它人看到你网站WEB路径及相关安全数据了,那要如何处理500错误呢,下面我们一看一个方法。 通常程序发生致命错误的时候页面空白,想获取错误信息也不难！主要是利用两个函数：error_get_last() 获取最后一次发生错误信息:结构如下： Array  (  [type] =  8  [message] =  Undefined variable: http://www.mostclan.com  [file] =  C... <a href="http://www.mostclan.com/post-246.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Fri, 03 Nov 2017 14:17:18 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-246.html</guid>

</item>
<item>
	<title>【整理】PHP邮件发送常见问题合集</title>
	<link>http://www.mostclan.com/post-245.html</link>
	<description><![CDATA[【被禁用了相关发信函数的解决方案1】  发送邮件出现“不能连接SMTP服务器.”（Error: Could not connect to SMTP host）的原因是fsockopen()被禁用。 由于国内大多数服务器禁用了mail()函数导致wordpress不能发送邮件，而SMTP 插件则是通过PHPmailer连接远程SMTP服务器来发送邮件，如果服务器禁用了fsockopen()函数就会出现上述错误。 下面给出解决方法： 用pfsockopen()函数直接替换掉 fsockopen() 如果pfsockopen函数被禁用的话，换其他可以操作Socket函数来代替, 如stream_socket... <a href="http://www.mostclan.com/post-245.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Thu, 26 Oct 2017 07:13:34 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-245.html</guid>

</item>
<item>
	<title>PHP身份证校验码计算方法</title>
	<link>http://www.mostclan.com/post-240.html</link>
	<description><![CDATA[做项目的时候需要对拿到的数据进行“清洗”，比如剔除一些不可能存在的身份证号码。查阅了网上的身份证号码验证算法，自己也总结一下。 (一)18身份证号码的结构
公民身份号码是特征组合码，由十七位数字本体码和一位校验码组成。 排列顺序从左至右依次为：六位数字地址码，八位数字出生日期码，三位数字顺序码和一位校验码。
1、地址码
表示编码对象常住户口所在县(市、旗、区)的行政区域划分代码，按GB/T2260的规定执行。
2、出生日期码
表示编码对象出生的年、月、日，按GB/T7408的规定执行，年、月、日代码之间不用分隔符。 <a href="http://www.mostclan.com/post-240.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Sat, 09 Sep 2017 02:51:44 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-240.html</guid>

</item>
<item>
	<title>【原创】ThinkPHP5模块和控制器隐藏问题</title>
	<link>http://www.mostclan.com/post-239.html</link>
	<description><![CDATA[由于默认是采用多模块的支持，所以多个模块的情况下必须在URL地址中标识当前模块，如果只有一个模块的话，可以进行模块绑定，方法是应用的入口文件中添加如下代码： // 绑定当前访问到index模块 define('BIND_MODULE','index'); 绑定后，我们的URL访问地址则变成： http://serverName/index.php/控制器/操作/[参数名/参数值...]  访问的模块是index模块。 如果你的应用比较简单，模块和控制器都只有一个，那么可以在应用公共文件中绑定模块和控制器，如下... <a href="http://www.mostclan.com/post-239.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Fri, 01 Sep 2017 10:21:59 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-239.html</guid>

</item>
<item>
	<title>ThinkPHP5.0.10-3.2.3缓存函数设计缺陷可导致Getshell</title>
	<link>http://www.mostclan.com/post-238.html</link>
	<description><![CDATA[0x00 框架运行环境 <a href="http://www.mostclan.com/post-238.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Mon, 14 Aug 2017 05:32:29 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-238.html</guid>

</item>
<item>
	<title>【原创】GitHub OAuth第三方登录认证获取用户信息错误403</title>
	<link>http://www.mostclan.com/post-236.html</link>
	<description><![CDATA[GitHub的OAuth认证流程可参考文档OAuth documentation  access_token的获取如下： <a href="http://www.mostclan.com/post-236.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Sat, 29 Jul 2017 12:46:52 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-236.html</guid>

</item>
<item>
	<title>json_encode注意</title>
	<link>http://www.mostclan.com/post-234.html</link>
	<description><![CDATA[PHP5.2或以上的版本把json_encode作为内置函数来用，但只支持utf-8编码的字符，否则中文就会出现乱码或者空值。解决办法如下： 1.保证在使用JSON处理的时候字符是以UTF8编码的。具体我们可以把数据库编码和页面编码都改为UTF8。如果喜欢用gbk编码的话，可以在进行JSON处理前，把字符转为UTF8形式。在PHP中有如下方法：  ?php    $data=JSON中文;    $newData=iconv(GB2312,UTF-8//IGNORE,$data);    echo $newData;  //ignore的意思是忽略转换时的错... <a href="http://www.mostclan.com/post-234.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Tue, 25 Jul 2017 15:20:43 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-234.html</guid>

</item>
<item>
	<title>记一次面试题（用PHP写一个检测重复文件的脚本）</title>
	<link>http://www.mostclan.com/post-233.html</link>
	<description><![CDATA[大概的题目意思是利用PHP写一个脚本，调用如： php.exe shell.php ./tmp ./dir/123 返回结果如： 123.php 222.php ------------ 22.abc 3.xml ------------ 我的代码：  ?php unset($argv[0]); foreach ($argv as $v) { $arr=[]; $path=__dir__.'/'.$v.'/'; if(is_dir($v)){ $f=scandir... <a href="http://www.mostclan.com/post-233.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Sat, 22 Jul 2017 10:23:19 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-233.html</guid>

</item>
<item>
	<title>记两题笔试题</title>
	<link>http://www.mostclan.com/post-232.html</link>
	<description><![CDATA[?php /** *  1、我们的程序运行过程中每分钟会采集一个整数的数据指标。 * 	持续采集n分钟就得到一个有n个元素的整数数组a[n]。 * 	现在我们需要一个简单的算法，检测采集到的数据指标中，是否有异常。 * 	异常的检测标准是：如果在连续m分钟内的指标的平均值大于w，则说明有异常。 * 	输入：数组a[n], 正整数m, 整数w * 	返回：有异常返回 1，没有异常返回 0 * 	例如：对于a={1, 5, 1, 3, 2}, m=2, w=2, 返回:1 * 	附加说明：不同的实现方式执行效率不一样，如果能找到一个很高效的算法就更好了。 ... <a href="http://www.mostclan.com/post-232.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Thu, 20 Jul 2017 03:52:27 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-232.html</guid>

</item>
<item>
	<title>让Json更懂中文(JSON_UNESCAPED_UNICODE)</title>
	<link>http://www.mostclan.com/post-231.html</link>
	<description><![CDATA[ <a href="http://www.mostclan.com/post-231.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Wed, 05 Jul 2017 15:35:54 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-231.html</guid>

</item>
<item>
	<title>PHP中CURL的CURLOPT_POSTFIELDS参数使用细节</title>
	<link>http://www.mostclan.com/post-224.html</link>
	<description><![CDATA[CURL确实是一个不错的好工具，不仅在PHP中还是其他的操作系统中，都是一个非常好用的。但是如果你有些参数没有用好的话，那可能会得不到自己理想中的结果。 在通常情况下，我们使用 CURL 来提交 POST 数据的时候，我们已经习惯了这样的写法： curl_setopt( $ch, CURLOPT_POSTFIELDS,$post_data); 但是这样的写法在有时候并不会很好用，可能会得到服务器返回的 500 错误。但是我们尝试在使用 Socket 方式向服务器提交数据的时候，我们会得到非常正确的结果。 例如我们在服务器上面存在一个如下的 PHP 文件： <a href="http://www.mostclan.com/post-224.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Thu, 08 Jun 2017 08:32:33 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-224.html</guid>

</item>
<item>
	<title>php curl乱码问题</title>
	<link>http://www.mostclan.com/post-223.html</link>
	<description><![CDATA[小V刚刚碰到个乱码问题，初期以为是编码问题，就设置了header和charset发现都没用，最后排查是gzip压缩了 'Accept-Encoding: gzip, deflate' <a href="http://www.mostclan.com/post-223.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Thu, 08 Jun 2017 08:28:14 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-223.html</guid>

</item>
<item>
	<title>php curl设置自定义的HTTP头</title>
	<link>http://www.mostclan.com/post-222.html</link>
	<description><![CDATA[小V今天碰到比较坑的问题，一直以为参数是'item'= 'value'这么写的，没想到是'item:value'这样的。 $headers = array();
$headers[] = 'X-Apple-Tz: 0';
$headers[] = 'X-Apple-Store-Front: 143444,12';
$headers[] = 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8';
$headers[] = 'Accept-Encoding: gzip, deflate';
$headers[] = 'Accept-Language: en-..... <a href="http://www.mostclan.com/post-222.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Thu, 08 Jun 2017 08:21:54 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-222.html</guid>

</item>
<item>
	<title>解决wamp下Composer因php_openssl扩展缺失而安装失败的问题</title>
	<link>http://www.mostclan.com/post-218.html</link>
	<description><![CDATA[Composer( https://getcomposer.org/ )是PHP下的一个依赖管理工具。你可以在你的项目中声明你所需要用到的类库，然后Composer会在项目中为你安装它们。如果你了解Node的 npm 或者Ruby的 Bundler ，就理解它是做什么的了，但是，它不是包管理器。 在Windows的Wamp环境下安装Composer(注：Composer要求PHP版本在5.3.2+)，你可能会遇到这种安装失败的情况：出错信息是 The openssl extension is missing, which will reduce the security and stability of Composer. If possible yo... <a href="http://www.mostclan.com/post-218.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Wed, 24 May 2017 08:34:35 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-218.html</guid>

</item>
<item>
	<title>百万级PHP网站架构工具箱</title>
	<link>http://www.mostclan.com/post-214.html</link>
	<description><![CDATA[在了解过世界最大的PHP站点，Facebook的后台技术后，今天我们来了解一个百万级PHP站点的网站架构：Poppen.de。 Poppen.de是德国的一个社交网站，相对Facebook、Flickr来说是一个很小的网站，但它有一个很好的架构，融合了很多技术，如 Nigix、MySql、CouchDB、Erlang、Memcached、RabbitMQ、PHP、Graphite、Red5以及Tsung。 Poppen.de目前有200万注册用户数、2万并发用户数、每天20万条私有消息、每天25万登录次数。而项目团队有11个开发人员，两个设计，两个系统管理员。该站点的商业模式采用免费增值模式，用户可以使用搜索用户、给好友发送消息、上载图片和视频等功能。... <a href="http://www.mostclan.com/post-214.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p><p><a href="http://www.mostclan.com/post-128.html">register_globals的ON和Off配置</a></p></div>]]></description>
	<pubDate>Thu, 18 May 2017 14:37:01 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-214.html</guid>

</item>
<item>
	<title>【原创】ThinkPHP5.0.7缓存空数组的BUG</title>
	<link>http://www.mostclan.com/post-204.html</link>
	<description><![CDATA[问题：在对数据库查询获取到“空数据”时，不会写入缓存。 我使用的TP版本：5.0.7_core 我看了下db\Query.php，在2304行有一句判断 if (isset($cache) && $resultSet) { // 缓存数据集 $this- cacheData($key, $resultSet, $cache); } 在这个判断前$resultSet有一次查询操作，如果返回的是一个空数组，那么这个判断不会成立，也就不会写入缓存（虽然说空数组没有缓存的意义，但这确实是一次原原本本的数据库操作）。 所以我将判断修改为 i... <a href="http://www.mostclan.com/post-204.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p><p><a href="http://www.mostclan.com/post-128.html">register_globals的ON和Off配置</a></p></div>]]></description>
	<pubDate>Thu, 20 Apr 2017 05:31:34 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-204.html</guid>

</item>
<item>
	<title>记一次判断错误所引起的缓存失败问题</title>
	<link>http://www.mostclan.com/post-202.html</link>
	<description><![CDATA[我习惯用empty来检测数据，今天碰到了个缓存失败问题，之前的代码如下： // 根据分类动作获取应用列表 public function getListByAction($action=''){ $cacheName='appListByAction('.$action.')V1'; $appList=cache($cacheName); if(empty($appList)){ //如果缓存未设置 $cid=Db::name('appCategory')- where('action',$action)- value('id'); $appModel=Db::nam... <a href="http://www.mostclan.com/post-202.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Tue, 18 Apr 2017 03:08:54 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-202.html</guid>

</item>
<item>
	<title>PHP密码加盐Hash</title>
	<link>http://www.mostclan.com/post-200.html</link>
	<description><![CDATA[加盐Hash： $salt=base64_encode(mcrypt_create_iv(32,MCRYPT_DEV_RANDOM));   $password=sha1($register_password.$salt);   解释: 使用mcrypt，产生电脑随机生成的，专门用户加密的随机数函数。 把得到的随机数通过base64加密，使其变长并且不利于猜解。 ... <a href="http://www.mostclan.com/post-200.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Mon, 17 Apr 2017 02:18:33 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-200.html</guid>

</item>
<item>
	<title>history.back返回后数据丢失的解决办法</title>
	<link>http://www.mostclan.com/post-198.html</link>
	<description><![CDATA[‍js使用history.back返回表单数据丢失的主要原因就是使用了session_start();的原因，该函数会强制当前页面不被缓存。  解决办法如下： 在你的 Session_start 函数后加入 header(Cache-control: private); 注意在本行之前你的PHP程序不能有任何输出。 还有基于session的解决方法，在session_start前加上 session_cache_limiter('nocache');// 清空表单  session_cache_limiter('private'); //不清空表单，只在session生效期间  se... <a href="http://www.mostclan.com/post-198.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Mon, 10 Apr 2017 01:20:51 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-198.html</guid>

</item>
<item>
	<title>PHP中exec函数和shell_exec函数的区别</title>
	<link>http://www.mostclan.com/post-197.html</link>
	<description><![CDATA[这篇文章主要介绍了PHP中exec函数和shell_exec函数的区别,这两个函数是非常危险的函数,一般情况都是被禁用的,当然特殊情况下也会使用,需要的朋友可以参考下。 这两个函数都是执行Linux命令函数，不同的是获取返回结果不一样，exec只能获取最后一行数据，shell_execu则可以获取全部数据。 假如脚本路径下有如下文件: -bash-4.1# ll 总用量 12 -rw-rw-r--. 1 www web 133  7月 16 15:00 a.php -rw-r--r--. 1 lee web  59  2月 29 17:05 b.php -rw-r--r--. 1 lee web  81 ... <a href="http://www.mostclan.com/post-197.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Sun, 09 Apr 2017 04:31:11 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-197.html</guid>

</item>
<item>
	<title>记一次哭笑不得的问题</title>
	<link>http://www.mostclan.com/post-196.html</link>
	<description><![CDATA[今天在调试网站系统的时候发现广告图片管理模块打不开了 ——这不科学啊，往常都好好的，因为网站系统中各个模块的跳转都是利用框架和js代码支持的，所以我先看了下html，rel链接正常，然后打开调试工具看了下：/Admin/Ad/index.html 这个页面报了个net::ERR_BLOCKED_BY_CLIENT，百度了下“错误20 (net::ERR_BLOCKED_BY_CLIENT)：对服务器的请求已遭到某个扩展程序的阻止”，这个时候我恍然大悟，原来是我的阻止广告的扩展把我的网站给屏蔽了……可想而知我心里真是无比复杂…… <a href="http://www.mostclan.com/post-196.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Fri, 07 Apr 2017 02:06:20 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-196.html</guid>

</item>
<item>
	<title>php ob_flush() flush() 函数不起作用的原因</title>
	<link>http://www.mostclan.com/post-190.html</link>
	<description><![CDATA[?php   for($i = 1; $i  = 300; $i++) print( );    // 这一句话非常关键，cache的结构使得它的内容只有达到一定的大小才能从浏览器里，输出针对ie  // 换言之，如果cache的内容不达到一定的大小，它是不会在程序执行完毕前输出的。经 过测试，我发现这个大小的底限是256个字符长。这意味着cache以后接收的内容都会源源不断的被发送出去。    for($j = 1; $j  = 5; $j++) {    echo $j .  br ;    //ob_flush();   flush(); //这一部会使cache新增的内容被挤出去，显示到浏览... <a href="http://www.mostclan.com/post-190.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Thu, 09 Mar 2017 08:55:02 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-190.html</guid>

</item>
<item>
	<title>XPath和CSS选择器</title>
	<link>http://www.mostclan.com/post-188.html</link>
	<description><![CDATA[原文:http://ejohn.org/blog/xpath-css-selectors 最近,我做了很多工作来实现一个同时支持XPath和CSS 3的解析... <a href="http://www.mostclan.com/post-188.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Fri, 03 Mar 2017 08:34:34 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-188.html</guid>

</item>
<item>
	<title>PHP分页基础样式逻辑</title>
	<link>http://www.mostclan.com/post-186.html</link>
	<description><![CDATA[今天小V帮人回答分页的问题特此写了个基础版代码，如有更好的代码请分享！ $page=5; //当前页 $pageMax=20; //最大页 $page=max($page,1); $page=min($page,$pageMax); $limit=3; //左右侧显示页数 $start=$page-$limit 0?$page-$limit:1; $n=$limit =$page?$limit-$page+1:0; //补差 $end=$page+$limit $pageMax?$pageMax:$page+$limit+$n; for($i=$start;$i =$end;$i++){ if($i==$page) ... <a href="http://www.mostclan.com/post-186.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Mon, 27 Feb 2017 03:45:17 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-186.html</guid>

</item>
<item>
	<title>ip2long转换IP时数值太大产生负数的解决方法</title>
	<link>http://www.mostclan.com/post-185.html</link>
	<description><![CDATA[【造成原因】：Because PHP's integer type is signed, and many IP addresses will result in negative integers. 【解决办法】：其官方手册中提到，可以“you need to use the %u formatter of sprintf() or printf() to get the string representation of the unsigned IP address” 即，printf( '%u', ip2long( 'IP地址' ) ); 或者将其先转换为二进制然后在转换为十进制，bindec( decbin( ip2long( 'IP地址' )... <a href="http://www.mostclan.com/post-185.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Thu, 16 Feb 2017 03:08:27 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-185.html</guid>

</item>
<item>
	<title>ini_set()函数的使用以及post_max_size,upload_max_filesize的修改方法</title>
	<link>http://www.mostclan.com/post-182.html</link>
	<description><![CDATA[Apache服务器处理： ini_set('display_errors', 'Off'); ini_set('memory_limit', -1); //-1 / 10240M ini_set(max_execution_time, 0); //ini_set('magic_quotes_gpc', 'On');  IfModule mod_php5.c  php_value post_max_size    10M php_value upload_max_filesize 8M php_value max_fil... <a href="http://www.mostclan.com/post-182.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Wed, 08 Feb 2017 03:05:14 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-182.html</guid>

</item>
<item>
	<title>thinkphp运行时间中的Exec:缓慢</title>
	<link>http://www.mostclan.com/post-181.html</link>
	<description><![CDATA[作者：罪惡 发布于：2013-7-9 13:38 Tuesday 数据库 最近在windows上开发应用的时候发现一个有趣的问题：我的本地程序连接本地mysql库居然要延迟1秒钟左右才能打开。 问题分析 考虑到可能是程序性能问题后，我使用了xdebug的性能日志功能输出程序运行日志后发现连接mysql的函数时间居然用掉了接近95%的执行时间。 确认是mysql性能问题后，考虑是mysql的域名反查功能影响了速度，令我失望的是，在my.ini里面关闭域名反查后问题依旧存在。 百思不得其解时我突发奇想将代码中的服务器的地址从localhost修改为了127.0.0.1，那个神奇的1秒钟延迟居然消失了。 换成ip后居然就好了，难道是l... <a href="http://www.mostclan.com/post-181.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Tue, 17 Jan 2017 04:54:59 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-181.html</guid>

</item>
<item>
	<title>thinkphp IIS下伪静态配置</title>
	<link>http://www.mostclan.com/post-180.html</link>
	<description><![CDATA[?xml version=1.0 encoding=UTF-8?   configuration   system.webServer   rewrite   rules   rule name=OrgPage stopProcessing=true   match url=^(.*)$ /   conditions logicalGrouping=MatchAll   add input={HTTP_HOST} pattern=^(.*)$ /  &... <a href="http://www.mostclan.com/post-180.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Tue, 17 Jan 2017 03:25:40 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-180.html</guid>

</item>
<item>
	<title>webuploader 解决不能重复上传问题</title>
	<link>http://www.mostclan.com/post-178.html</link>
	<description><![CDATA[根据查看webuploader文档 里面有个duplicate属性，是可选的， true为可重复  ，false为不可重复  默认为undifind 也是不可重复。 所以只需在属性的后面追加duplicate:true 就可以实现重复上传。 uploader = WebUploader.create({ swf: 'resources/js/webuploader-0.1.5/Uploader.swf', server: settings.url, pick: '#picker', resize: false, duplicate: tru... <a href="http://www.mostclan.com/post-178.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Mon, 09 Jan 2017 03:41:19 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-178.html</guid>

</item>
<item>
	<title>webuploader php解决中文文件上传问题</title>
	<link>http://www.mostclan.com/post-177.html</link>
	<description><![CDATA[?php // Make sure file is not cached (as it happens for example on iOS devices) header(Expires: Mon, 26 Jul 1997 05:00:00 GMT); header(Last-Modified:  . gmdate(D, d M Y H:i:s) .  GMT); header(Cache-Control: no-store, no-cache, must-revalidate); header(Cache-Control: post-check=0, pre-check=0, false); header(Pragma: ... <a href="http://www.mostclan.com/post-177.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Mon, 09 Jan 2017 03:35:14 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-177.html</guid>

</item>
<item>
	<title>php数组合并array_merge与+的区别</title>
	<link>http://www.mostclan.com/post-176.html</link>
	<description><![CDATA[rray_merge()是PHP语言中的一个函数，作用是将两个或多个数组的单元合并起来，一个数组中的值附加在前一个数组的后面。返回作为结果的数组。 如果输入的数组中有相同的字符串键名，该键的键值为最后一个键名对应的值（后面的值覆盖前面相同的值）。如果数组是数字键名的，则键名会以连续方式重新索引，即后面的值将不会覆盖原来的值，而是附加到后面。 注释：如果仅仅向 array_merge() 函数输入了一个数组，且键名是整数，则该函数将返回带有整数键名的新数组，其键名以 0 开始进行重新索引。（参见例子 2） 注意：当后面数组元素中键名与其前面数组元素键名相同时，则结果数组中相应键名的键值则被后者覆盖，即为后者键值。（参见例子3） <a href="http://www.mostclan.com/post-176.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-128.html">register_globals的ON和Off配置</a></p></div>]]></description>
	<pubDate>Tue, 03 Jan 2017 12:45:20 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-176.html</guid>

</item>
<item>
	<title>ThinkPHP数据库更新（save）无变化更新失败问题</title>
	<link>http://www.mostclan.com/post-175.html</link>
	<description><![CDATA[save方法的返回值是影响的记录数，如果返回false则表示更新出错。 如果字段没有被修改，则返回0，并不是失败。 所以判断是否失败使用if($result !== false) <a href="http://www.mostclan.com/post-175.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Thu, 22 Dec 2016 07:26:55 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-175.html</guid>

</item>
<item>
	<title>PHP高并发uniqid不重复唯一标识符生成方案</title>
	<link>http://www.mostclan.com/post-161.html</link>
	<description><![CDATA[PHP uniqid()函数可用于生成不重复的唯一标识符，该函数基于微秒级当前时间戳。在高并发或者间隔时长极短（如循环代码）的情况下，会出现大量重复数据。即使使用了第二个参数，也会重复，最好的方案是结合md5函数来生成唯一ID。 PHP uniqid() 生成不重复唯一标识方法一 这种方法会产生大量的重复数据，运行如下PHP代码会数组索引是产生的唯一标识，对应的元素值是该唯一标识重复的次数。  ?php $units = array(); for($i=0;... <a href="http://www.mostclan.com/post-161.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Sun, 30 Oct 2016 17:05:24 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-161.html</guid>

</item>
<item>
	<title>PHP+MySQL上一条下一条记录显示</title>
	<link>http://www.mostclan.com/post-159.html</link>
	<description><![CDATA[假如存在数据表A，有字段id和title： SQL代码： id    title   1     title01   2     title02   3     title03   5     title05   7     title07  当前访问页面的URL： ?id=5 要查询当前id=5相邻的上一条记录id=3和下一条记录id=7，可以构造如下SQL： <a href="http://www.mostclan.com/post-159.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Thu, 27 Oct 2016 07:55:26 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-159.html</guid>

</item>
<item>
	<title>Memcached设置过期时间超过30天</title>
	<link>http://www.mostclan.com/post-157.html</link>
	<description><![CDATA[使用 Memcahced 进行缓存的时候，有个数据因为使用比较少，就像缓存的旧一些，把设置为一年，写入缓存的时候返回 true，但是使用该 key 去获取的时候总是返回 null，最后查手册才发现，Memcahced 过期时间不能超过 30 天。
关于 Memcached 过期时间的详细解释：
1、过期时间是一个 Unix 时间戳，也可以是一个从现在算起的以秒为单位的数字。
2、那么怎么判断是 Unix 时间戳还是一个从现在算起的以秒为单位的数字呢？小于 60×60×24×30（30天时间的秒数），就算是从现在算起的以秒为单位的数字。如果大于服务端会将其作为一个真实的Unix时间戳来处理而不是自当前时间的偏移。
3、如果过期时间被... <a href="http://www.mostclan.com/post-157.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Mon, 26 Sep 2016 14:25:49 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-157.html</guid>

</item>
<item>
	<title>php in_array函数使用说明及需要注意的地方说明</title>
	<link>http://www.mostclan.com/post-153.html</link>
	<description><![CDATA[in_array (PHP 4, PHP 5) in_array — 检查数组中是否存在某个值 bool in_array ( mixed $needle , array $haystack [, bool $strict ] ) 在 haystack 中搜索 needle ，如果找到则返回 TRUE，否则返回 FALSE。 如果第三个参数 strict 的值为 TRUE 则 in_array() 函数还会检查 needle 的类型是否和 haystack 中的相同。 <a href="http://www.mostclan.com/post-153.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Thu, 04 Aug 2016 09:26:59 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-153.html</guid>

</item>
<item>
	<title>PHP实现前天昨天今天或几天前的时间戳功能</title>
	<link>http://www.mostclan.com/post-151.html</link>
	<description><![CDATA[经常在微博上看到显示几分钟前、几小时前、前天、昨天、今天、几天前、等功能，比直接显示日期时间感觉要好一些，经过一翻琢磨，其实也很容易，转换成时间戳，然后计算两个时间的时间差，再换算就可以了。其实泪雪之前在设计开发泪雪旗下极客行站点的时候就已经研究这个功能了，这里就简单上一下代码。 以下代码可以实现上述的功能外，还根据时间判断了显示方式，7天内，超过3天的则会显示显示几天前，而超过7天则会显示年月日小时分钟。  ?php //时间转换函数 function tranTime($time) { $rtime = date(m-d H:i, $time); $rtime2 = date(Y-m-d H... <a href="http://www.mostclan.com/post-151.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Wed, 03 Aug 2016 12:49:49 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-151.html</guid>

</item>
<item>
	<title>WEB网站开发中最常用的正则表达式</title>
	<link>http://www.mostclan.com/post-150.html</link>
	<description><![CDATA[一、PHP常用表达式用法 1.匹配正整数：/^[1-9]\d*$/ 2.匹配非负整数（正整数+0）：/^\d+$/ 3.匹配中文：/^[\x{4e00}-\x{9fa5}]+$/u 4.匹配Email：/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/ 5.匹配网址URL：(((f|ht){1}(tp|tps)://)[-a-zA-Z0-9@:%_\+.~#... <a href="http://www.mostclan.com/post-150.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Wed, 03 Aug 2016 12:42:14 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-150.html</guid>

</item>
<item>
	<title>一些值得收藏的PHP常见header头信息</title>
	<link>http://www.mostclan.com/post-149.html</link>
	<description><![CDATA[//一些常见的header头信息
header('HTTP/1.1 200 OK');  // ok 正常访问
header('HTTP/1.1 404 Not Found'); //通知浏览器 页面不存在
header('HTTP/1.1 301 Moved Permanently'); //设置地址被永久的重定向 301
header('HTTP/1.1 503 Service Temporarily Unavailable');//服务不可用
header('Location: http://zhangzifan.com/'); //跳转到一个新的地址
header('Refresh: 10; url=http://zhangzifan.com/... <a href="http://www.mostclan.com/post-149.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Wed, 03 Aug 2016 12:39:23 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-149.html</guid>

</item>
<item>
	<title>PHP隐藏文件路径及限制下载速度代码</title>
	<link>http://www.mostclan.com/post-148.html</link>
	<description><![CDATA[很多时候我们都要做下载功能，可是下载功能是直接下载 第一会暴露你的文件路径，第二还会对服务器造成压力，所以很有必要限制下载速度。这里泪雪整理了一段代码就可以解决这个问题： // 将发送到客户端的本地文件 $local_file = 'testfile.zip'; // 文件名 $download_file = 'your-download-name.zip'; // 设置下载速率(=  20,5 kb/s) $download_rate = 20.5; if(file_exists($local_file) && is_file($local_file)) { // 发送 headers header('... <a href="http://www.mostclan.com/post-148.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Wed, 03 Aug 2016 12:36:43 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-148.html</guid>

</item>
<item>
	<title>标准JSON格式定义与解析注意点</title>
	<link>http://www.mostclan.com/post-143.html</link>
	<description><![CDATA[在JS、IOS、Android中都内置了JSON的序列化、反序列化SDK。JEE中也可以使用第三方的JSON解析库，如GSON。虽然在JSON格式被定义出来的时候并没有特殊的格式要求，但是在实践过程中，JSON的定义格式有了大家都比较认可的格式：  1、定义 JSON格式的定义一般遵循如下格式： { status:  // 接口访问成功或者失败的状态码 message: // 接口访问错误的时候返回的错误提示文字，访问成功的时候为空字符串 data:{   // 服务端实际返回... <a href="http://www.mostclan.com/post-143.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Tue, 21 Jun 2016 07:10:16 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-143.html</guid>

</item>
<item>
	<title>cookie和session的区别详解</title>
	<link>http://www.mostclan.com/post-140.html</link>
	<description><![CDATA[这些都是基础知识，不过有必要做深入了解。先简单介绍一下。 二者的定义： 当你在浏览网站的时候，WEB 服务器会先送一小小资料放在你的计算机上，Cookie 会帮你在网站上所打的文字或是一些选择， 都纪录下来。当下次你再光临同一个网站，WEB 服务器会先看看有没有它上次留下的 Cookie 资料，有的话，就会依据 Cookie 里的内容来判断使用者，送出特定的网页内容给你。 Cookie 的使用很普遍，许多有提供个人化服务的网站，都是利用 Cookie 来辨认使用者，以方便送出使用者量身定做的内容，像是 Web 接口的免费 email 网站，都要用到 Cookie。 <a href="http://www.mostclan.com/post-140.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Mon, 20 Jun 2016 15:22:09 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-140.html</guid>

</item>
<item>
	<title>PHP判断一个请求是Ajax请求还是普通请求</title>
	<link>http://www.mostclan.com/post-139.html</link>
	<description><![CDATA[Javascript中大多数的框架如 jquery(jquery ui、jquery easyui)、Mootools 等，在发出 Ajax 请求时，都会发送额外的 HTTP_X_REQUESTED_WITH 头部信息，因此每当发送一个ajax请求你就可以在服务器端侦测到是 Ajax 请求； 1、通过传递_GET参数的方法简单实现网页请求的判断。 url上这么传递：*******.php?ajax php这么判断： if(isset($_GET['ajax'])){ ...这是一个ajax请求，然后... } else{ ...这不是一个ajax请... <a href="http://www.mostclan.com/post-139.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Mon, 20 Jun 2016 14:58:40 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-139.html</guid>

</item>
<item>
	<title>php中ltrim的替换问题</title>
	<link>http://www.mostclan.com/post-136.html</link>
	<description><![CDATA[php中ltrim的问题： echo ltrim('D:/wamp/www/phpnow/demo/','D:/wamp/www/'); echo ltrim('D:/wamp/www/phpnow/demo/','D:/wamp/'); 以上输出的结果结果都为hpnow/demo/而不是phpnow/demo/这么回事，望高手回答 ===============回答============= ltrim,rtrim, trim 使用的时候，第二个参数，就是被剪切掉的标识 <a href="http://www.mostclan.com/post-136.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Sun, 19 Jun 2016 12:59:57 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-136.html</guid>

</item>
<item>
	<title>memcache和memcached区别</title>
	<link>http://www.mostclan.com/post-134.html</link>
	<description><![CDATA[在写这篇文章之前一直对memcache 、memcached模糊，相差一个字母，特此总结下： <a href="http://www.mostclan.com/post-134.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Sun, 19 Jun 2016 06:26:41 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-134.html</guid>

</item>
<item>
	<title>使用CutyCapt实现网页截图保存代码</title>
	<link>http://www.mostclan.com/post-131.html</link>
	<description><![CDATA[网页截图这个功能大家可能用到最多的就是QQ截图,或利用asp.net来实现截图,其实我们也可以直接使用php来网页截图,下面我来给大家介绍php利用CutyCapt实现网页截图,有需要的朋友可参考. CutyCapt下载地址:http://sourceforge.net/projects/cutycapt/files/cutycapt/  windows CutyCapt不需要安装,直接保存到你的电脑中即可,然后php代码如下写:  ?... <a href="http://www.mostclan.com/post-131.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Sat, 18 Jun 2016 04:31:48 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-131.html</guid>

</item>
<item>
	<title>register_globals的ON和Off配置</title>
	<link>http://www.mostclan.com/post-128.html</link>
	<description><![CDATA[register_globals是php.ini里的一个配置，这个配置影响到php 如何接收传递过来的参数比如：GET，POST，Cookie register_globals可设置为ON和Off 1：当register_globals=Off 接收数据的程序应该用根据表单form传值的方法来决定。GET：用$_GET['name']、$HTTP_GET_VARS['name']来接收值；POST：当form用POST提交数据$_POST['name']、$HTTP_POST_VARS['name']来接收值; <a href="http://www.mostclan.com/post-128.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Wed, 15 Jun 2016 08:36:29 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-128.html</guid>

</item>
<item>
	<title>array_merge与函数运算符“+”加号的区别</title>
	<link>http://www.mostclan.com/post-127.html</link>
	<description><![CDATA[1. array_merge在参考手册中的说明如下： array_merge()将两个或多个数组的单元合并起来，一个数组中的值附加在前一个数组的后面。返回作为结果的数组。 如果输入的数组中有相同的字符串键名，则该键名后面的值将覆盖前一个值。然而，如果数组包含数字键名，后面的值将不会覆盖原来的值，而是附加到后面。 2. 对于使用“＋”合并数组： 如果数组中有相同的key，则会把最先出现的值作为最终结果返回，而把后面的数组拥有相同键名的那些值“抛弃”掉（注意：不是覆盖而是保留最先出现的那个值）。  ?php $a1 = array(1 =  first, 2 = ... <a href="http://www.mostclan.com/post-127.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Wed, 15 Jun 2016 08:26:16 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-127.html</guid>

</item>
<item>
	<title>windows下安装php5.5的redis扩展</title>
	<link>http://www.mostclan.com/post-123.html</link>
	<description><![CDATA[windows下开发用的xampp集成的环境，想装个php-redis扩展 扩展的github地址：https://github.com/nicolasff/phpredis  php_redis.dll下载地址：http://windows.php.net/downloads/pecl/snaps/redis/2.2.5/ <a href="http://www.mostclan.com/post-123.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Wed, 08 Jun 2016 07:58:44 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-123.html</guid>

</item>
<item>
	<title>WebGrind——让你的网站性能看得见</title>
	<link>http://www.mostclan.com/post-122.html</link>
	<description><![CDATA[我们在做项目的时候，经常需要编写大量的PHP代码，有很多的方法以及变量，当项目进行到一定程度，代码越来越多，你会发现程序变慢，但有时我们不知道具体是哪块代码执行慢，或者哪个方法占用了太长的执行时间，这时我们就需要一个调试工具，来帮我们记录程序执行过程中的一些具体信息，包括类、方法名、执行时间、次数等信息，今天介绍的工具是xdebug以及他的结果分析展示工具webgrind。 xdebug是在PHP安装包中内置的，具体路径是ext/php_xdebug.dll，由于内置，所以我们不需要重新安装，只需要修改配置文件php.ini来启用该库，打开php.ini文件，并查找修改以下配置信息： zend_extension = c:\xampp\php\ext... <a href="http://www.mostclan.com/post-122.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Wed, 08 Jun 2016 07:52:19 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-122.html</guid>

</item>
<item>
	<title>Memcache安装及使用</title>
	<link>http://www.mostclan.com/post-117.html</link>
	<description><![CDATA[多个版本的php_memcache.dll扩展，其中包括windows下32位和64位的，也涵盖了php5.2到php5.6的php_memcache.dll都有。这个扩展也可以链接带有d的memcached服务端. 一、下载 找到完整的memcache的Windows安装包，解压放在硬盘上，比如 F:\memcached.exe 二、安装 WIN7 64位双击打开这个exe可能只有一个空的窗口，不能输入任何命令，所以这个exe不是这样用的。要运行cmd控制台，输入 F:\memcached.exe -d install 安装，再输入 F:\memcached.exe -d start 启动。 Tips:如果没... <a href="http://www.mostclan.com/post-117.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Mon, 23 May 2016 04:02:37 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-117.html</guid>

</item>
<item>
	<title>PHP中 HTTP_HOST 和 SERVER_NAME 的区别</title>
	<link>http://www.mostclan.com/post-116.html</link>
	<description><![CDATA[最近在开发站群软件，用到了根据访问域名判断子站点的相关问题。PHP获取当前域名有两个变量 HTTP_HOST 和 SERVER_NAME，我想知道两者的区别以及哪个更加可靠。 首先我想说，百度上那些转来转去的文章都是扯淡！ 有说相同的，有说不同的，都没说明原因，没经过验证就互相转来转去的，浪费观众时间。 下面说说本人经过亲自验证 + 查阅官方文档 + 官方BUG列表 + 官方邮件列表 + sitepoint + webmasterworld + google的总结： 相同点： 当满足以下三个条件时，两者会输出相同信息。 1. 服务器为80端口 2. apache的conf中ServerName设置正确... <a href="http://www.mostclan.com/post-116.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Mon, 16 May 2016 13:18:13 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-116.html</guid>

</item>
<item>
	<title>php利用smtp类轻松的发送电子邮件</title>
	<link>http://www.mostclan.com/post-109.html</link>
	<description><![CDATA[当你还在纠结php内置的mail()函数不能发送邮件时，那么你现在很幸运，此时的这篇文章可以帮助到你！
php利用smtp类来发邮件真是屡试不爽，我用过很久了，基本上没出过问题。本博客后台，当博主回复留言时候，会自动给网友发一封有新回复提示的邮件也是用的本文这个方法实现的。
smtp类发送邮件的方法其实很简单，也很稳定，类是别人已经写好的了，你只需要调用就行了。几行简单的配置就能发邮件，是不是很期待的试一试呢！  ?php
 require_once email.class.php;
 //******************** 配置信息 **... <a href="http://www.mostclan.com/post-109.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Sat, 27 Feb 2016 15:19:01 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-109.html</guid>

</item>
<item>
	<title>Swift Mailer：又一个强大的PHP邮件类</title>
	<link>http://www.mostclan.com/post-108.html</link>
	<description><![CDATA[Swift Mailer 和前面介绍的PHPMailer一样，也是一个PHP邮件发送类。它不依赖于 PHP 自带的mail() 函数，因为该函数在发送多个邮件时占用的系统资源很高。Swift 直接与 SMTP 服务器通讯，具有非常高的发送速度和效率。 Swiftmailer的特点： Send emails using SMTP, sendmail, postfix or a custom Transport implementation of your own Support servers that require username & password and/or encryption Protect from header in... <a href="http://www.mostclan.com/post-108.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Sat, 27 Feb 2016 14:42:47 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-108.html</guid>

</item>
<item>
	<title>PHPMailer：PHP邮件发送类</title>
	<link>http://www.mostclan.com/post-107.html</link>
	<description><![CDATA[PHPMailer 是一个使用 PHP 编写的邮件发送类，在PHP中已经内置了mail()函数，那PHP Mailer到底和mail()有什么区别呢？确切的说，PHPMailer是mail()的升级，使用PHPMailer可以很方便的发送HTML邮件和附件。同时还可以使用自己喜欢的 SMTP服务器来发送邮件。 
PHPMailer 的主要特点有： 在邮件中包含多个 TO、CC、BCC 和 REPLY-TO。 平台应用广泛，支持的 SMTP 服务器包括 Sendmail、qmail、Postfix、Gmail、Imail、Exchange 等。 支持嵌入图像，附件，HTML 邮件。 ... <a href="http://www.mostclan.com/post-107.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Sat, 27 Feb 2016 14:41:42 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-107.html</guid>

</item>
<item>
	<title>PHP中htmlentities和htmlspecialchars的使用及区别</title>
	<link>http://www.mostclan.com/post-106.html</link>
	<description><![CDATA[每次去使用的时候都去查手册，我也不记得查了多少次了，顺便记录下，htmlentities和htmlspecialchars的功能都是一样的，即将预定义的字符转化为html实体。 主要作用：就是让浏览器输出html代码，不去解析该html代码了，比如说在发帖的时候，为了不让其输入的html代码生效，可以使用htmlspecialchars 两者区别：htmlentities转换所有的html标记,htmlspecialchars只格式化& '    和   这几个特殊符号。 PHP实例：  ?php $str = ' a href=http://www.phpddt.com... <a href="http://www.mostclan.com/post-106.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Sat, 27 Feb 2016 13:19:34 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-106.html</guid>

</item>
<item>
	<title>php图片验证码输出问题</title>
	<link>http://www.mostclan.com/post-105.html</link>
	<description><![CDATA[今天在把项目上传到服务器上的时候碰到了问题：图片验证码显示不出了，把header头注释掉看输出正常，文件头也是UTF8无BOM，网上百度了下，发现了ob_clean()这玩意儿，学习了。解释如下： ob_clean这个函数的作用就是用来丢弃输出缓冲区中的内容，如果你的网站有许多生成的图片类文件，那么想要访问正确，就要经常清除缓冲区。 If you work on an extremely large project with a lot of source and required files, like myself, you will be well-advised to always clear the output buffer prior ... <a href="http://www.mostclan.com/post-105.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Sat, 20 Feb 2016 12:31:54 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-105.html</guid>

</item>
<item>
	<title>ORM到底是用还是不用？</title>
	<link>http://www.mostclan.com/post-104.html</link>
	<description><![CDATA[ORM即Object/Relation Mapping的简写，一般称作“对象关系映射”，在Web开发中最常出没于和关系型数据库交互的地方。接口、中间件、库、包，你都可以这么称呼它。
ORM
我们可以结合PHP和MySQL，从ORM的四个核心理念来认识它： 简单：ORM以最基本的形式建模数据。比如ORM会将MySQL的一张表映射成一个PHP类（模型），表的字段就是这个类的成员变量
精确：ORM使所有的MySQL数据表都按照统一的标准精确地映射成PHP类，使系统在代码层面保持准确统一
易懂：ORM使数据库结构文档化。比如MySQL数据库就被ORM转换为了PHP程序员可以读懂的PHP类，PHP程序员可以只把注意力放在他擅长的PHP层面（当然... <a href="http://www.mostclan.com/post-104.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Sat, 13 Feb 2016 15:12:06 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-104.html</guid>

</item>
<item>
	<title>理解PHP的工厂模式Factory Pattern</title>
	<link>http://www.mostclan.com/post-102.html</link>
	<description><![CDATA[工厂类就是一个专门用来创建其它对象的类，工厂类在多态性编程实践中是非常重要的。它允许动态替换类，修改配置，会使应用程序更加灵活。掌握工厂模式对Web开发是必不可少的。
工厂模式通常用来返回类似接口的不同的类，工厂的一种常见用法就是创建多态的提供者。 通常工厂模式有一个关键的构造，即一般被命名为factory的静态方法。这个静态方法可以接受任意数量的参数，并且必须返回一个对象。 Program List：基本的工厂类   ?php class Fruit { // 对象从工厂类返回 } Class FruitFactory ... <a href="http://www.mostclan.com/post-102.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Wed, 30 Dec 2015 08:04:33 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-102.html</guid>

</item>
<item>
	<title>浅析ThinkPHP中的pathinfo模式和URL重写</title>
	<link>http://www.mostclan.com/post-99.html</link>
	<description><![CDATA[语文一直不太好，要我怎么解释这个pathinfo模式还真不知道怎么说，那就先来一段代码说下pathinfo模式吧 http://serverName/appName/module/action/id/1/ 这个就是pathinfo模式 在不考虑路由的情况下，第一个参数会被解析成模块名称（如果启用了分组的话，则依次往后递推），第二个参数会被解析成操作，后面的参数是显式传递的，而且必须成对出现，例如： http://serverName/appName/module/action/year/2008/month/0... <a href="http://www.mostclan.com/post-99.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Sat, 12 Dec 2015 11:21:49 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-99.html</guid>

</item>
<item>
	<title>$_SERVER的详细参数与说明</title>
	<link>http://www.mostclan.com/post-96.html</link>
	<description><![CDATA[$_SERVER['PHP_SELF'] #当前正在执行脚本的文件名，与 document root相关。 $_SERVER['argv'] #传递给该脚本的参数。 $_SERVER['argc'] #包含传递给程序的命令行参数的个数（如果运行在命令行模式）。 $_SERVER['GATEWAY_INTERFACE'] #服务器使用的 CGI 规范的版本。例如，“CGI/1.1”。 $_SERVER['SERVER_NAME'] #当前运行脚本所在服务器主机的名称。 $_SERVER['SERVER_SOFTWARE'] #服务器标识的字串，在响应请求时的头部中给出。 $_SERVER['SERVER_PROTOCOL'] #请... <a href="http://www.mostclan.com/post-96.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Fri, 11 Dec 2015 14:44:37 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-96.html</guid>

</item>
<item>
	<title>DIRECTORY_SEPARATOR</title>
	<link>http://www.mostclan.com/post-93.html</link>
	<description><![CDATA[目录分隔符，是定义php的内置常量。在调试机器上，在windows我们习惯性的使用“\”作为文件分隔符，但是在linux上系统不认识这个标识，于是就要引入这个php内置常量了：DIRECTORY_SEPARATOR <a href="http://www.mostclan.com/post-93.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Sat, 31 Oct 2015 15:56:18 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-93.html</guid>

</item>
<item>
	<title>PHP之道</title>
	<link>http://www.mostclan.com/post-92.html</link>
	<description><![CDATA[目前网络上充斥着大量的过时资讯，让 PHP 新手误入歧途，并且传播着错误的实践以及不安全的代码。PHP 之道 收集了现有的 PHP 最佳实践、编码规范和权威学习指南，方便 PHP 开发者阅读和查找 使用 PHP 沒有规范化的方式。本网站主要是向 PHP 新手介绍一些他们没有发现或者是太晚发现的主题， 或是经验丰富的专业人士已经实践已久的做法提供一些新想法。本网站也不会告诉您应该使用什么样的工具，而是提供多种选择的建议，并尽可能地说明方法及用法上的差异。 当有更多有用的资讯以及范例时，此文件会随着相关技术的发展而持续更新。 传送门： <a href="http://www.mostclan.com/post-92.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Sun, 18 Oct 2015 15:24:39 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-92.html</guid>

</item>
<item>
	<title>PHP 中 9 大缓存技术总结</title>
	<link>http://www.mostclan.com/post-91.html</link>
	<description><![CDATA[1、全页面静态化缓存 也就是将页面全部生成html静态页面，用户访问时直接访问的静态页面，而不会去走php服务器解析的流程。此种方式，在CMS系统中比较常见，比如dedecms； 一种比较常用的实现方式是用输出缓存： Ob_start() ******要运行的代码******* $content = Ob_get_contents(); ****将缓存内容写入html文件***** Ob_end_clean(); 2、页面部分缓存 <a href="http://www.mostclan.com/post-91.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Sun, 18 Oct 2015 10:05:34 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-91.html</guid>

</item>
<item>
	<title>mt_rand和rand区别</title>
	<link>http://www.mostclan.com/post-89.html</link>
	<description><![CDATA[很多老的 libc 的随机数发生器具有一些不确定和未知的特性而且很慢。 PHP 的 rand() 函数默认使用 libc 随机数发生器。 mt_rand() 函数是非正式用来替换它的。 该函数用了 Mersenne Twister 中已知的特性作为随机数发生器，它可以产生随机数值的平均速度比 libc 提供的 rand() 快四倍。 ---摘自php中文手册 <a href="http://www.mostclan.com/post-89.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Sun, 18 Oct 2015 04:36:05 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-89.html</guid>

</item>
<item>
	<title>serialize序列化函数</title>
	<link>http://www.mostclan.com/post-88.html</link>
	<description><![CDATA[serialize是一个描述 PHP 数据的函数。返回值是一个字符串。有的时候为了把一些数据转为字符串存起来，但是希望保持数据原来有结构和内容。就要用到这个函数。 $a=array('data'= hi, 123); $b=serialize($a); echo $b; //这个就是描述过的数组但在这里是一个字符串而已 $c=unserialize($b); //把描述过的数据恢复 print_r($c); //还原成为 $a ，数组结构并没有丢失。 <a href="http://www.mostclan.com/post-88.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Tue, 13 Oct 2015 13:19:47 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-88.html</guid>

</item>
<item>
	<title>strstr与strchr及strrchr使用笔记</title>
	<link>http://www.mostclan.com/post-87.html</link>
	<description><![CDATA[strstr() 函数搜索字符串在另一字符串中的第一次出现，并返回字符串的剩余部分。 //第三参数如果设置为 true，它将返回 search 参数第一次出现之前的字符串部分，默认为false。 strchr() 函数搜索字符串在另一字符串中的第一次出现，并返回字符串的剩余部分。 //strstr别名 <a href="http://www.mostclan.com/post-87.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Tue, 13 Oct 2015 11:20:40 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-87.html</guid>

</item>
<item>
	<title>file_get_contents()函数也可以发送HTTP_REFERER</title>
	<link>http://www.mostclan.com/post-78.html</link>
	<description><![CDATA[有时候因为某些特殊原因，可能需要伪造浏览器发送的HTTP_REFERER信息，一直来对于这样的情况都使用PHP的一个CURL扩展，虽然功能不错，但某些时候有点不方便。这时候再去仔细研究手册，发现其中的奥妙…… 原来其实file_get_contents()函数也是可以伪造HTTP_REFERER信息的。利用它的第三个参数。要说明的是第三个参数是在PHP5.0.0以后才支持的，之前的版本没这个参数！ 利用file_get_contents()第三个参数模拟一个文件流进行发送，例如这样： $option = array( 'http' =  array( ... <a href="http://www.mostclan.com/post-78.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Fri, 11 Sep 2015 13:33:49 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-78.html</guid>

</item>
<item>
	<title>php图像生成函数imagecreatetruecolor()和imagecreate()的区别</title>
	<link>http://www.mostclan.com/post-77.html</link>
	<description><![CDATA[新手对php图像生成函数imagecreatetruecolor()和imagecreate()又不解之处，首先来看看官方对这两个函数的解释：
resource imagecreatetruecolor ( int $x_size , int $y_size )
返回一个图像标识符，代表了一幅大小为 x_size 和 y_size 的黑色图像。
resource imagecreate ( int $x_size , int $y_size )
返回一个图像标识符，代表了一幅大小为
两者在改变背景颜色时有些区别：
imagecreate... <a href="http://www.mostclan.com/post-77.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Tue, 08 Sep 2015 08:16:34 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-77.html</guid>

</item>
<item>
	<title>获得PHP版本信息及版本比较</title>
	<link>http://www.mostclan.com/post-70.html</link>
	<description><![CDATA[?php
if (version_compare(5.2, PHP_VERSION,  )) { die(PHP 5.2 or greater is required!!!);
}
?  发现获取PHP的版本信息原来这么简单~~~
PHP_VERSION是一个常量，他就能获得PHP版本信息。
version_compare是一个版本比较工具，当然也可以作为其他的版本比较工具：  ?php if (version_compare(PHP_VERSION, '6.0.0')  = 0) { ech... <a href="http://www.mostclan.com/post-70.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Sun, 09 Aug 2015 08:35:32 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-70.html</guid>

</item>
<item>
	<title>省略PHP结束标记 “?&gt;”的好处</title>
	<link>http://www.mostclan.com/post-69.html</link>
	<description><![CDATA[找了一些资料，大家对PHP闭合标签的总结如下： 好处：如果这个是一个被别人包含的程序，没有这个结束符，可以减少很多很多问题，比如说：header, setcookie, session_start这些动作之前不能有输出，如果不小心在?  后边加了不可见字符（多余的空格、换行符）等破坏页面显示，就会报”Header already sent”错误，不写的话不会有此问题。另，可以直接把光标移到最后，接着编程。 坏处：在dreamweaver的视图模式下，一团糟。 关于PHP闭合标签官方解释是：PHP闭合标签 ?  在PHP中对PHP的分析器是可选的。但是，如果使用闭合标签，任何由开发者，用户，或者FTP应用程序插入闭合标签后面... <a href="http://www.mostclan.com/post-69.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Sun, 09 Aug 2015 08:01:39 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-69.html</guid>

</item>
<item>
	<title>php的public、protected、private三种访问控制模式的区别</title>
	<link>http://www.mostclan.com/post-68.html</link>
	<description><![CDATA[public: 公有类型     在子类中可以通过self::var调用public方法或属性,parent::method调用父类方法 在实例中可以能过$obj- var 来调用　public类型的方法或属性 protected: 受保护类型     在子类中可以通过self::var调用protected方法或属... <a href="http://www.mostclan.com/post-68.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Mon, 03 Aug 2015 16:03:59 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-68.html</guid>

</item>
<item>
	<title>php+mysqli事务控制实现银行转账实例</title>
	<link>http://www.mostclan.com/post-67.html</link>
	<description><![CDATA[事务控制，也就是说所有的语句执行成功后，才会提交。否则，如果前面有语句执行成功，而后面没有执行成功，则回滚到执行之前的状态。通过银行转账的案例来说明这个应用。一个账号转了钱出去，另一个账号必须有钱转入，这样才算成功。  ?php //1、创建数据库连接对象 $mysqli = new MySQLi(localhost,root,123456,liuyan); if($mysqli- connect_error){ die($mysqli- connect_error); } $mysqli- query(set names 'G... <a href="http://www.mostclan.com/post-67.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Sun, 02 Aug 2015 15:53:04 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-67.html</guid>

</item>
<item>
	<title>深入解读PHP插件机制原理</title>
	<link>http://www.mostclan.com/post-62.html</link>
	<description><![CDATA[PHP插件机制是指一类特定的功能模块，主要特点有：可以随时激活删除使用，灵活性较强。大家可以在文章中获得这一机制的相关知识。 我们在这篇文章中主要向大家讲了一些PHP插件机制的实现方法。希望大家可以通过本问介绍的内容初步了解对PHP插件机制的认识。 插件，亦即Plug-in，是指一类特定的功能模块（通常由第三方开发者实现），它的特点是：当你需要它的时候激活它，不需要它的时候禁用/删除它；且无论是激活还是禁用都不影响系统核心模块的运行，也就是说插件是一种非侵入式的模块化设计，实现了核心程序与插件程序的松散耦合。一个典型的例子就是Wordpress中众多的第三方插件，比如Akimet插件用于对用户的评论进行Spam过滤。 一个... <a href="http://www.mostclan.com/post-62.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Sun, 07 Jun 2015 13:22:50 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-62.html</guid>

</item>
<item>
	<title>令PHP初学者困惑的10个知识点</title>
	<link>http://www.mostclan.com/post-56.html</link>
	<description><![CDATA[【1】页面之间无法传递变量 get,post,session在最新的php版本中自动全局变量是关闭的，所以要从上一页面取得提交过来得变量要使用$_GET['foo'],$_POST['foo'],$_SESSION['foo']来得到。当然也可以修改自动全局变量为开(php.ini改为register_globals = On)；考虑到兼容性，还是强迫自己熟悉新的写法比较好。 注：PHP中的超全局变量 从PHP 4.2.0 开始，register_globals 的默认值为 off，这样一来，以前的很多可以直接使用的变量，如 $PHP_SELF 或者你设定的SESSION变量都不能用 “$变量名”... <a href="http://www.mostclan.com/post-56.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Wed, 20 May 2015 01:55:09 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-56.html</guid>

</item>
<item>
	<title>php flush()刷新不能输出缓冲的原因分析</title>
	<link>http://www.mostclan.com/post-55.html</link>
	<description><![CDATA[在php程序编写中， <a href="http://www.mostclan.com/post-55.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Wed, 06 May 2015 03:35:40 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-55.html</guid>

</item>
<item>
	<title>了解PHP框架</title>
	<link>http://www.mostclan.com/post-54.html</link>
	<description><![CDATA[PHP成为最流行的脚本语言有许多原因：灵活性，易用性等等。对于项目开发来说，我们通常需要一个PHP框架来代替程序员完成那些重复的部分。本文将对PHP框架进行全面解析。 <a href="http://www.mostclan.com/post-54.html">阅读全文&gt;&gt;</a><div id="related_log" style="font-size:12px"><p><b>相关日志：</b></p><p><a href="http://www.mostclan.com/post-332.html">tp5中使用think-queue</a></p><p><a href="http://www.mostclan.com/post-214.html">百万级PHP网站架构工具箱</a></p><p><a href="http://www.mostclan.com/post-204.html">【原创】ThinkPHP5.0.7缓存空数组的BUG</a></p><p><a href="http://www.mostclan.com/post-343.html">PHP利用parse_str创建任意多维数组</a></p><p><a href="http://www.mostclan.com/post-176.html">php数组合并array_merge与+的区别</a></p></div>]]></description>
	<pubDate>Tue, 05 May 2015 01:43:55 +0000</pubDate>
	<author>Veris</author>
	<guid>http://www.mostclan.com/post-54.html</guid>

</item></channel>
</rss>