<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[小蔡的专栏]]></title><description><![CDATA[一个关心产品的程序员！]]></description><link>https://blog.youkuaiyun.com/yycai</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; yycai]]></copyright><item><title><![CDATA[javascript写的表格排序]]></title><link>https://blog.youkuaiyun.com/yycai/article/details/5538150</link><guid>https://blog.youkuaiyun.com/yycai/article/details/5538150</guid><author>yycai</author><pubDate>Wed, 28 Apr 2010 11:31:00 +0800</pubDate><description><![CDATA[/** * 表格排序(单个表格，降序) * @example *  *  *  *   field1 *   field2 *  *  *  *  *   ... *   ... *  *  *  *  *   ... *   ... *  * ... *  *  * @param int index ]]></description><category></category></item><item><title><![CDATA[比较strtr, str_replace和preg_replace的效率]]></title><link>https://blog.youkuaiyun.com/yycai/article/details/5108949</link><guid>https://blog.youkuaiyun.com/yycai/article/details/5108949</guid><author>yycai</author><pubDate>Wed, 30 Dec 2009 21:23:00 +0800</pubDate><description><![CDATA[	之前已经分析过strtr的源码了，现在就比较strtr, str_replace和preg_replace的效率： $str = 111111110000000000000000000000000000000111000001000100010000010010000010010000010100000010; $str = str_repeat($str, 1); ]]></description><category></category></item><item><title><![CDATA[在smarty中增加类似foreach的功能自动加载数据]]></title><link>https://blog.youkuaiyun.com/yycai/article/details/5092770</link><guid>https://blog.youkuaiyun.com/yycai/article/details/5092770</guid><author>yycai</author><pubDate>Mon, 28 Dec 2009 17:41:00 +0800</pubDate><description><![CDATA[      在smarty中使用自定义插件来加载数据（见：http://blog.youkuaiyun.com/yycai/archive/2009/12/26/5083594.aspx），在使用的时候还是感觉不够方便，灵机一动就想写成类似foreach那种标签： 第一步：在Smarty_Compiler.class.php的_compile_tag函数中增加：//加载数据的开始标签case ]]></description><category></category></item><item><title><![CDATA[编写Smarty插件在模板中直接加载数据]]></title><link>https://blog.youkuaiyun.com/yycai/article/details/5083594</link><guid>https://blog.youkuaiyun.com/yycai/article/details/5083594</guid><author>yycai</author><pubDate>Sat, 26 Dec 2009 23:15:00 +0800</pubDate><description><![CDATA[      之前使用smarty的时候，通常是在php程序端读取数据（一般从数据库），然后assign给模板的变量，才可以在前端使用这个变量。这样不是不好，只是数据多的时候php端的代码维护起来有点麻烦，特别是当存在很多模板块化得数据时。 所以写了个插件，结合之前的crud类实现在前端模板可以加载一些模块化得数据。（http://code.google.com/p/cyy0523xc/]]></description><category></category></item><item><title><![CDATA[strtr函数的效率问题]]></title><link>https://blog.youkuaiyun.com/yycai/article/details/5082729</link><guid>https://blog.youkuaiyun.com/yycai/article/details/5082729</guid><author>yycai</author><pubDate>Sat, 26 Dec 2009 20:39:00 +0800</pubDate><description><![CDATA[最近经常要对字符串进行匹配和替换操作，之前一般使用str_replace或者preg_replace，据说strtr的效率不错，所以对比了一下：$i = 0;$t = microtime(true);for(;$i<1000;$i++){    $str = strtr(md5($i), $p2);}var_dump(microtime(true)-$t);    //]]></description><category></category></item><item><title><![CDATA[(PHP)CRUD类及分页类]]></title><link>https://blog.youkuaiyun.com/yycai/article/details/5057007</link><guid>https://blog.youkuaiyun.com/yycai/article/details/5057007</guid><author>yycai</author><pubDate>Tue, 22 Dec 2009 17:18:00 +0800</pubDate><description><![CDATA[之前写的crud类实在比较简单（http://blog.youkuaiyun.com/yycai/archive/2009/12/15/5012353.aspx），重新封装了一下： <?php/** * 自动化数据表操作类 * @example *  * $db  = cls_crud::factory(array(table=>article)); * $data =]]></description><category></category></item><item><title><![CDATA[PHP的CRUD类]]></title><link>https://blog.youkuaiyun.com/yycai/article/details/5012353</link><guid>https://blog.youkuaiyun.com/yycai/article/details/5012353</guid><author>yycai</author><pubDate>Tue, 15 Dec 2009 16:24:00 +0800</pubDate><description><![CDATA[因为项目需要，所以自己写了一个CRUD类 虽然还比较简单，不过感觉很实用。 注：cls_database是一个数据库操作类 见：http://code.google.com/p/cyy0523xc/source/browse/trunk/php/cls_crud.php  <?php/** * 自动化数据表操作类 * @author 小蔡	 ]]></description><category></category></item><item><title><![CDATA[FIT/WeFIT 开发者冯华君采访]]></title><link>https://blog.youkuaiyun.com/yycai/article/details/4847890</link><guid>https://blog.youkuaiyun.com/yycai/article/details/4847890</guid><author>yycai</author><pubDate>Sat, 21 Nov 2009 16:01:00 +0800</pubDate><description><![CDATA[ FIT/WeFIT 开发者冯华君采访Lawrence Li on 2008-02-23,00:06  http://apple4.us/2008/02/fit-wefit.html iPhone 上的全局中文输入法（即能够在所有程序中使用的输入法）目前有三种：NativeCn、iCosta 和 WeFIT。由香港人 Gary 和 iczfirz 开发的 Nat]]></description><category></category></item><item><title><![CDATA[揭示PHP成功背后的秘密：PHP创始人访谈录]]></title><link>https://blog.youkuaiyun.com/yycai/article/details/4574645</link><guid>https://blog.youkuaiyun.com/yycai/article/details/4574645</guid><author>yycai</author><pubDate>Mon, 21 Sep 2009 08:24:00 +0800</pubDate><description><![CDATA[转自：http://www.chinaz.com/news/Visit/091Y21R2009.html Rasmus Lerdorf可能是格陵兰最著名的电脑牛人，他1995年创建了PHP脚本语言，并成功应用到他的网站中，在他的一手栽培下，PHP已变成一个强大的，完全成熟的语言，目前世界各地已有数百万PHP应用案例。PHP创始人Rasmus LerdorfLinux For]]></description><category></category></item><item><title><![CDATA[Mysql的varchar类型]]></title><link>https://blog.youkuaiyun.com/yycai/article/details/4564194</link><guid>https://blog.youkuaiyun.com/yycai/article/details/4564194</guid><author>yycai</author><pubDate>Thu, 17 Sep 2009 20:30:00 +0800</pubDate><description><![CDATA[自从认识mysql的那天起就知道varchar的长度限制为255，不过现在这种情况已经改变了： Values in VARCHAR columns are variable-length strings. The length can be specified as a value from 0 to 65,535. The effective maximum length of a ]]></description><category></category></item><item><title><![CDATA[php内核：include与require区别的根本]]></title><link>https://blog.youkuaiyun.com/yycai/article/details/4468375</link><guid>https://blog.youkuaiyun.com/yycai/article/details/4468375</guid><author>yycai</author><pubDate>Fri, 21 Aug 2009 02:34:00 +0800</pubDate><description><![CDATA[php手册告诉我们，require和include只是在对错误信息的处理上有所差别。可是自己记性不好，经常忘记，所以今天就把php内核源码认真的查看了一下，具体的过程记录在这里了： http://code.google.com/p/cyy0523xc/source/browse/trunk/%E5%AD%A6%E4%B9%A0/PHP%E5%86%85%E6%A0%B8_include_a]]></description><category></category></item><item><title><![CDATA[empty函数]]></title><link>https://blog.youkuaiyun.com/yycai/article/details/4429229</link><guid>https://blog.youkuaiyun.com/yycai/article/details/4429229</guid><author>yycai</author><pubDate>Mon, 10 Aug 2009 01:58:00 +0800</pubDate><description><![CDATA[     对于我们做php开发的来说，empty函数（注，其实empty是一个语言结构而非函数，这里说函数只是个人习惯）是再熟悉不过的一个函数了，查PHP的手册描述如下：Determine whether a variable is considered to be empty.       但是在我的记忆中，有很长一段时间一直以为empty应该是能够判断一个东西是否为空的，直到有一天]]></description><category></category></item><item><title><![CDATA[数据库分表浅见]]></title><link>https://blog.youkuaiyun.com/yycai/article/details/4423882</link><guid>https://blog.youkuaiyun.com/yycai/article/details/4423882</guid><author>yycai</author><pubDate>Fri, 07 Aug 2009 22:09:00 +0800</pubDate><description><![CDATA[ 从建房子说起      记得小时候，我爸，大伯，叔叔都是在祖屋里住着的，后来我爸和叔叔都在村子里建了房子，都搬出来了。这也是很顺理成章的事情，因为原有的祖屋已经不足以住下我们的一大家子人了。      不过，这时就会有一个问题，就是在不知情也没有其他信息的前提下，怎么根据姓名来判断他是住在祖屋还是新屋呢？最简单最笨的方法，当然是先在祖屋找，没找到就再到新屋找，但是新屋比较多或者两个屋]]></description><category></category></item><item><title><![CDATA[php内核函数natsort浅析]]></title><link>https://blog.youkuaiyun.com/yycai/article/details/4399589</link><guid>https://blog.youkuaiyun.com/yycai/article/details/4399589</guid><author>yycai</author><pubDate>Sat, 01 Aug 2009 12:57:00 +0800</pubDate><description><![CDATA[     今天发现了php有个自然排序的函数----natsort，第一次听说了原来还有一种叫做“自然排序”的算法，很好奇，官方手册（http://us.php.net/manual/en/function.natsort.php）bool natsort ( array &$array )This function implements a sort algorithm that ord]]></description><category></category></item><item><title><![CDATA[PHP 序列化（serialize）格式详解]]></title><link>https://blog.youkuaiyun.com/yycai/article/details/4398866</link><guid>https://blog.youkuaiyun.com/yycai/article/details/4398866</guid><author>yycai</author><pubDate>Sat, 01 Aug 2009 00:41:00 +0800</pubDate><description><![CDATA[转自：http://www.coolcode.cn/show-170-1.html前言概述NULL 和标量类型的序列化简单复合类型的序列化嵌套复合类型的序列化自定义对象序列化Unicode 字符串的序列化参考文献1．前言PHP （从 PHP 3.05 开始）为保存对象提供了一组序列化和反序列化的函数：serialize、unseriali]]></description><category></category></item><item><title><![CDATA[Android学习(1)]]></title><link>https://blog.youkuaiyun.com/yycai/article/details/4177133</link><guid>https://blog.youkuaiyun.com/yycai/article/details/4177133</guid><author>yycai</author><pubDate>Wed, 13 May 2009 14:32:00 +0800</pubDate><description><![CDATA[在Android还是1.1的时候就写过一些hello world的入门，一直没有时间深入学习。昨天把相关的环境都升级到了最新（1.5），试了一下Google官方提供的Demo：Notepadv1。 在学习的时候，碰到的问题：（http://docs.google.com/Doc?id=dgj5ns3n_1103cmqpvwhb）(1)Syntax error on tokens, de]]></description><category></category></item><item><title><![CDATA[困扰了很长一段时间的Javascript的一个BUG]]></title><link>https://blog.youkuaiyun.com/yycai/article/details/4126918</link><guid>https://blog.youkuaiyun.com/yycai/article/details/4126918</guid><author>yycai</author><pubDate>Sun, 26 Apr 2009 22:38:00 +0800</pubDate><description><![CDATA[原文：http://blog.youkuaiyun.com/yycai/archive/2009/01/12/3760366.aspx  问了好多人，都没有得到一个满意的答复，终于忍不住在TopLanguage提问了一下，呵呵，终于有高人回复了，原来是一个bug：http://code.google.com/p/chromium/issues/detail?id=2161https://b]]></description><category></category></item><item><title><![CDATA[PHP批量生成缩略图]]></title><link>https://blog.youkuaiyun.com/yycai/article/details/4040798</link><guid>https://blog.youkuaiyun.com/yycai/article/details/4040798</guid><author>yycai</author><pubDate>Wed, 01 Apr 2009 13:08:00 +0800</pubDate><description><![CDATA[代码比较简单，就不多解释了～ <?php$src_dir = src;$out_dir = output;$out_prefix = ;//输出图片的SIZE$dst_w = 183;$dst_h = 183;$fs = scandir($src_dir);//var_dump($fs);foreach($fs as $f){	sav]]></description><category></category></item><item><title><![CDATA[各种浏览器兼容存在的方法：Xenocode Browser Sandbox]]></title><link>https://blog.youkuaiyun.com/yycai/article/details/4036252</link><guid>https://blog.youkuaiyun.com/yycai/article/details/4036252</guid><author>yycai</author><pubDate>Mon, 30 Mar 2009 15:54:00 +0800</pubDate><description><![CDATA[ 今天无意中在网上发现了这个东西，下面是他的简介：http://www.xenocode.com/browsers/About the Xenocode Browser SandboxThe Xenocode Browser Sandbox allows all popular Windows browsers to be run simultaneously, directly ]]></description><category></category></item><item><title><![CDATA[scrollTop的兼容性小结]]></title><link>https://blog.youkuaiyun.com/yycai/article/details/4008815</link><guid>https://blog.youkuaiyun.com/yycai/article/details/4008815</guid><author>yycai</author><pubDate>Fri, 20 Mar 2009 18:23:00 +0800</pubDate><description><![CDATA[在页面上加上了  "http://www.w3.org/TR/html4/loose.dtd">之后，document.body.scrollTop的值一直为0（在IE和FF下），网上有人改为document.documentElement.scrollTop就可以了，试用了一下真的OK了。 但是当换到Google浏览器时，问题又出来了，document.documentEleme]]></description><category></category></item></channel></rss>