博客园 - greengnn
uuid:24b78886-0ed1-41c2-8670-e3f31dcf42c4;id=187623
2014-02-23T18:36:19Z
greengnn
https://www.cnblogs.com/greengnn/
feed.cnblogs.com
https://www.cnblogs.com/greengnn/p/3563982.html
linux系统命令记录 - greengnn
系统# uname -a # 查看内核/操作系统/CPU信息# head -n 1 /etc/issue # 查看操作系统版本# cat /proc/cpuinfo # 查看CPU信息# hostname # 查看计算机名# lspci -tv # 列出所有PCI设备# lsusb -tv # 列出所有USB设备# lsmod # 列出加载的内核模块# env # 查看环境变量资源# free -m ...
2014-02-23T18:36:00Z
2014-02-23T18:36:00Z
greengnn
https://www.cnblogs.com/greengnn/
【摘要】系统# uname -a # 查看内核/操作系统/CPU信息# head -n 1 /etc/issue # 查看操作系统版本# cat /proc/cpuinfo # 查看CPU信息# hostname # 查看计算机名# lspci -tv # 列出所有PCI设备# lsusb -tv # 列出所有USB设备# lsmod # 列出加载的内核模块# env # 查看环境变量资源# free -m ... <a href="https://www.cnblogs.com/greengnn/p/3563982.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/greengnn/archive/2012/07/10/2583880.html
Web前端杂记 - greengnn
作为开发人员coder和其他开发人员有神马区别:web服务和数据库端:1、用户数据存储和展现2、让更多的用户享受服务,即使海量用户也能正常运转服务器负载均衡带宽扩容数据库分表分库数据库缓存减少磁盘IO数据运算端使用算法通过无规则的数据运算提取用户需要的信息,比如检索,推荐。web前端:1、更便捷的获取信息和更舒适和高效的人机交互2、让更多的用户享受服务,各种终端设备,软件,人群多种终端下的软件服务:windows,mac,linux,pc,pda,pad,phone等等盲人,弱视力低网速人群,设备古老的人,禁止掉js的人,禁止掉图片的人,低分辨率的人终端性能低的人等等3、把数据更好的传递给机器
2012-07-09T16:01:00Z
2012-07-09T16:01:00Z
greengnn
https://www.cnblogs.com/greengnn/
【摘要】作为开发人员coder和其他开发人员有神马区别:web服务和数据库端:1、用户数据存储和展现2、让更多的用户享受服务,即使海量用户也能正常运转服务器负载均衡带宽扩容数据库分表分库数据库缓存减少磁盘IO数据运算端使用算法通过无规则的数据运算提取用户需要的信息,比如检索,推荐。web前端:1、更便捷的获取信息和更舒适和高效的人机交互2、让更多的用户享受服务,各种终端设备,软件,人群多种终端下的软件服务:windows,mac,linux,pc,pda,pad,phone等等盲人,弱视力低网速人群,设备古老的人,禁止掉js的人,禁止掉图片的人,低分辨率的人终端性能低的人等等3、把数据更好的传递给机器 <a href="https://www.cnblogs.com/greengnn/archive/2012/07/10/2583880.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/greengnn/archive/2012/03/20/2408295.html
backbone.js的类继承骨干代码qwrap实现 - greengnn
var Model = function(opt){ this._config(opt); this.init.apply(this,arguments);}QW.ObjectH.mix(Model.prototype,{ init : function(){}, _config : function(opt){ var opt = opt||{}; QW.ObjectH.mix(this,opt,true); }, attrs : {}, get : function(key){ if (this.attr....
2012-03-20T09:46:00Z
2012-03-20T09:46:00Z
greengnn
https://www.cnblogs.com/greengnn/
【摘要】var Model = function(opt){ this._config(opt); this.init.apply(this,arguments);}QW.ObjectH.mix(Model.prototype,{ init : function(){}, _config : function(opt){ var opt = opt||{}; QW.ObjectH.mix(this,opt,true); }, attrs : {}, get : function(key){ if (this.attr.... <a href="https://www.cnblogs.com/greengnn/archive/2012/03/20/2408295.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/greengnn/archive/2012/03/09/2386080.html
MAC OS X 折腾 macports nginx php-fpm 环境资料 - greengnn
http://www.netgli.com/157.htmlhttp://www.youth2009.org/uninstall-macports.htmlhttp://interfacelab.com/nginx-php-fpm-apc-awesome/http://www.softwareprojects.com/resources/programming/t-how-to-install-php-fpm-spawn-fcgi-replacement-1602.htmlhttp://blog.jasonmooberry.com/2010/12/memp-php-5-3-with-fpm-a
2012-03-08T18:22:00Z
2012-03-08T18:22:00Z
greengnn
https://www.cnblogs.com/greengnn/
【摘要】http://www.netgli.com/157.htmlhttp://www.youth2009.org/uninstall-macports.htmlhttp://interfacelab.com/nginx-php-fpm-apc-awesome/http://www.softwareprojects.com/resources/programming/t-how-to-install-php-fpm-spawn-fcgi-replacement-1602.htmlhttp://blog.jasonmooberry.com/2010/12/memp-php-5-3-with-fpm-a <a href="https://www.cnblogs.com/greengnn/archive/2012/03/09/2386080.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/greengnn/archive/2012/02/07/ajax_pager.html
AJAX数据分页展示 - greengnn
pager_build : function(act,query,res){ var pn = res.data.pn, rn = res.data.rn, tn = res.data.tn, pager; if(!tn){ pager = ''; } var dataQuery = StringH.queryUrl(query); var pns = Math.ceil(tn / rn); ...
2012-02-07T08:02:00Z
2012-02-07T08:02:00Z
greengnn
https://www.cnblogs.com/greengnn/
【摘要】pager_build : function(act,query,res){ var pn = res.data.pn, rn = res.data.rn, tn = res.data.tn, pager; if(!tn){ pager = ''; } var dataQuery = StringH.queryUrl(query); var pns = Math.ceil(tn / rn); ... <a href="https://www.cnblogs.com/greengnn/archive/2012/02/07/ajax_pager.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/greengnn/archive/2012/01/29/2331250.html
发送JS错误日志到服务器 - greengnn
var logger = (function(){ var loghost = 'http://127.0.0.1/log.gif?'; var log = function(err){ var img = new Image(0,0); var _url =[]; _url.push('name'+'='+encodeURIComponent(err.name)); _url.push('message'+'='+encodeURIComponent(err.message)); _url.push('l
2012-01-29T08:34:00Z
2012-01-29T08:34:00Z
greengnn
https://www.cnblogs.com/greengnn/
【摘要】var logger = (function(){ var loghost = 'http://127.0.0.1/log.gif?'; var log = function(err){ var img = new Image(0,0); var _url =[]; _url.push('name'+'='+encodeURIComponent(err.name)); _url.push('message'+'='+encodeURIComponent(err.message)); _url.push('l <a href="https://www.cnblogs.com/greengnn/archive/2012/01/29/2331250.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/greengnn/archive/2012/01/21/javascript_fileupload.html
笔记:JS异步文件上传 - greengnn
js部分 function uploadSucc(data){ alert(data); } W('#uploadframe').on('load',function(e,uploadSucc){ e.preventDefault(); var el = this; (function(){ try{ var data = el.contentWindow.document.body.getElementsByTagName("TEXTAREA")[0].value; ...
2012-01-21T07:50:00Z
2012-01-21T07:50:00Z
greengnn
https://www.cnblogs.com/greengnn/
【摘要】js部分 function uploadSucc(data){ alert(data); } W('#uploadframe').on('load',function(e,uploadSucc){ e.preventDefault(); var el = this; (function(){ try{ var data = el.contentWindow.document.body.getElementsByTagName("TEXTAREA")[0].value; ... <a href="https://www.cnblogs.com/greengnn/archive/2012/01/21/javascript_fileupload.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/greengnn/archive/2011/12/19/2293022.html
[zz]mysql 和 mongo db 语法对比 - greengnn
mysql 和 mongo db 语法对比本文描述了MySQL中的常用SQL语句在MongoDB中的写法,如果你长期使用MySQL而对MongoDB跃跃欲试,这篇简单的文章可以帮助你更快的进入角色。查询:MySQL:SELECT * FROM userMongo:db.user.find()MySQL:SELECT * FROM user WHERE name = ’starlee’Mongo:db.user.find({‘name’ : ’starlee’})插入:MySQL:INSERT INOT user (`name`, `age`) values (’starlee’,25)Mong
2011-12-19T02:56:00Z
2011-12-19T02:56:00Z
greengnn
https://www.cnblogs.com/greengnn/
【摘要】mysql 和 mongo db 语法对比本文描述了MySQL中的常用SQL语句在MongoDB中的写法,如果你长期使用MySQL而对MongoDB跃跃欲试,这篇简单的文章可以帮助你更快的进入角色。查询:MySQL:SELECT * FROM userMongo:db.user.find()MySQL:SELECT * FROM user WHERE name = ’starlee’Mongo:db.user.find({‘name’ : ’starlee’})插入:MySQL:INSERT INOT user (`name`, `age`) values (’starlee’,25)Mong <a href="https://www.cnblogs.com/greengnn/archive/2011/12/19/2293022.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/greengnn/archive/2011/11/24/kohana_upload.html
kohana文件上传 - greengnn
$config = jkit::$config->load('upload')->get('default'); Upload::$default_directory= $config['directory'];//默认保存文件夹 Upload::$remove_spaces=$config['remove_spaces'];//上传文件删除空格 $file=$_FILES['ofile1']; $files = Validation::factory($_FILES); $files->ru..
2011-11-24T03:51:00Z
2011-11-24T03:51:00Z
greengnn
https://www.cnblogs.com/greengnn/
【摘要】$config = jkit::$config->load('upload')->get('default'); Upload::$default_directory= $config['directory'];//默认保存文件夹 Upload::$remove_spaces=$config['remove_spaces'];//上传文件删除空格 $file=$_FILES['ofile1']; $files = Validation::factory($_FILES); $files->ru.. <a href="https://www.cnblogs.com/greengnn/archive/2011/11/24/kohana_upload.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/greengnn/archive/2011/11/08/2241315.html
linux下lighttpd fastcgi django环境搭建 - greengnn
安装lighttpd fastcgi djangolighttpd conf配置server.modules = ( "mod_access", "mod_alias", "mod_compress", "mod_redirect", "mod_rewrite", "mod_fastcgi",)server.document-root = "/var/www2/mysite"server.upload-dirs = ( "/var/cache/l
2011-11-08T08:18:00Z
2011-11-08T08:18:00Z
greengnn
https://www.cnblogs.com/greengnn/
【摘要】安装lighttpd fastcgi djangolighttpd conf配置server.modules = ( "mod_access", "mod_alias", "mod_compress", "mod_redirect", "mod_rewrite", "mod_fastcgi",)server.document-root = "/var/www2/mysite"server.upload-dirs = ( "/var/cache/l <a href="https://www.cnblogs.com/greengnn/archive/2011/11/08/2241315.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/greengnn/archive/2011/11/01/2232154.html
javascript排序算法 - greengnn
//快速排序function quicksort(seq) { if (seq.length > 1) { var k = seq[0]; var x = []; var y = []; for (var i=1,len = seq.length; i<len; i++) { if (seq[i] <= k) { x.push(seq[i]); } else { y.push(seq[i]); } } x = quicksort(x); y = quicksort(y); ret...
2011-11-01T11:59:00Z
2011-11-01T11:59:00Z
greengnn
https://www.cnblogs.com/greengnn/
【摘要】//快速排序function quicksort(seq) { if (seq.length > 1) { var k = seq[0]; var x = []; var y = []; for (var i=1,len = seq.length; i<len; i++) { if (seq[i] <= k) { x.push(seq[i]); } else { y.push(seq[i]); } } x = quicksort(x); y = quicksort(y); ret... <a href="https://www.cnblogs.com/greengnn/archive/2011/11/01/2232154.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/greengnn/archive/2011/11/01/2232078.html
javascript洗牌算法 - greengnn
function getRandomPlayCard(m){ var arr=new Array(m); for(var i=0;i<m;i++){ var rnd=Math.floor(Math.random()*(i+0.99999)) arr[i]=arr[rnd]; arr[rnd]=i; } return arr;};
2011-11-01T10:08:00Z
2011-11-01T10:08:00Z
greengnn
https://www.cnblogs.com/greengnn/
【摘要】function getRandomPlayCard(m){ var arr=new Array(m); for(var i=0;i<m;i++){ var rnd=Math.floor(Math.random()*(i+0.99999)) arr[i]=arr[rnd]; arr[rnd]=i; } return arr;}; <a href="https://www.cnblogs.com/greengnn/archive/2011/11/01/2232078.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/greengnn/archive/2011/10/06/2199719.html
JS生成UUID收藏 - greengnn
/*!Math.uuid.js (v1.4)http://www.broofa.commailto:robert@broofa.comCopyright (c) 2010 Robert KiefferDual licensed under the MIT and GPL licenses.*//* * Generate a random uuid. * * USAGE: Math.uuid(length, radix) * length - the desired number of characters * radix - the number of allowable value...
2011-10-05T17:10:00Z
2011-10-05T17:10:00Z
greengnn
https://www.cnblogs.com/greengnn/
【摘要】/*!Math.uuid.js (v1.4)http://www.broofa.commailto:robert@broofa.comCopyright (c) 2010 Robert KiefferDual licensed under the MIT and GPL licenses.*//* * Generate a random uuid. * * USAGE: Math.uuid(length, radix) * length - the desired number of characters * radix - the number of allowable value... <a href="https://www.cnblogs.com/greengnn/archive/2011/10/06/2199719.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/greengnn/archive/2011/10/06/2199716.html
JS生成GUID收藏 - greengnn
function guidGenerator() { var S4 = function() { return (((1+Math.random())*0x10000)|0).toString(16).substring(1); }; return (S4()+S4()+"-"+S4()+"-"+S4()+"-"+S4()+"-"+S4()+S4()+S4());}
2011-10-05T17:04:00Z
2011-10-05T17:04:00Z
greengnn
https://www.cnblogs.com/greengnn/
【摘要】function guidGenerator() { var S4 = function() { return (((1+Math.random())*0x10000)|0).toString(16).substring(1); }; return (S4()+S4()+"-"+S4()+"-"+S4()+"-"+S4()+"-"+S4()+S4()+S4());} <a href="https://www.cnblogs.com/greengnn/archive/2011/10/06/2199716.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/greengnn/archive/2011/05/11/2042747.html
一个前端的迷惑 - greengnn
豆瓣看到个帖子,老前端的迷惑和未来的迷茫,突然想把自己想的一些东东记录和分享下来。http://www.douban.com/group/topic/17283538/?start=0&post=ok#last先说web前端,那就必须知道web是做什么的,同样一个web产品,可能产品形态差异很大,web客户端技术和软件的成熟,造就了很多优秀的web产品,比如地图,邮箱,webgame,这类是属于重交互形态的产品,和用软件客户端做和flash客户端做没啥差别。而大部分web产品还是资讯为主的,也就是大量的html,少量的css和更少量的js,这类产品存在时间最长,也导致长期从事这类产品研
2011-05-10T16:15:00Z
2011-05-10T16:15:00Z
greengnn
https://www.cnblogs.com/greengnn/
【摘要】豆瓣看到个帖子,老前端的迷惑和未来的迷茫,突然想把自己想的一些东东记录和分享下来。http://www.douban.com/group/topic/17283538/?start=0&post=ok#last先说web前端,那就必须知道web是做什么的,同样一个web产品,可能产品形态差异很大,web客户端技术和软件的成熟,造就了很多优秀的web产品,比如地图,邮箱,webgame,这类是属于重交互形态的产品,和用软件客户端做和flash客户端做没啥差别。而大部分web产品还是资讯为主的,也就是大量的html,少量的css和更少量的js,这类产品存在时间最长,也导致长期从事这类产品研 <a href="https://www.cnblogs.com/greengnn/archive/2011/05/11/2042747.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/greengnn/archive/2011/04/27/2029971.html
用心去选择挖掘内心深处的索求 - greengnn
离开学校,工作四年了,工作已经不是当初毕业的一个人生阶段,也不是谋生的索求,应该是为自己理想而去工作了。当然这个工作是很泛的不仅仅是打工,自己创业也是工作的一种。有幸一毕业就进入腾讯这个快速发展而且有理想,管理完善的企业,可以看作是自己工作的第一里程,tx是一家产品导向的企业,依托自身优势快速微创新扩展疆土的模式,打造在线生活的梦想,也愿景成为最受尊敬的互联网企业。在tx工作的关键词,忙累,付出回报正向,人际关系复杂,年轻,底层技术积累好,应用开发程序员成就感差,项目成就感强。在tx的梦想是做好自己的项目QQ音乐,在我呆的两年里确实很给力,做优秀的网站重构者,致力于做中国重构者的标杆,遗憾的是
2011-04-26T21:28:00Z
2011-04-26T21:28:00Z
greengnn
https://www.cnblogs.com/greengnn/
【摘要】离开学校,工作四年了,工作已经不是当初毕业的一个人生阶段,也不是谋生的索求,应该是为自己理想而去工作了。当然这个工作是很泛的不仅仅是打工,自己创业也是工作的一种。有幸一毕业就进入腾讯这个快速发展而且有理想,管理完善的企业,可以看作是自己工作的第一里程,tx是一家产品导向的企业,依托自身优势快速微创新扩展疆土的模式,打造在线生活的梦想,也愿景成为最受尊敬的互联网企业。在tx工作的关键词,忙累,付出回报正向,人际关系复杂,年轻,底层技术积累好,应用开发程序员成就感差,项目成就感强。在tx的梦想是做好自己的项目QQ音乐,在我呆的两年里确实很给力,做优秀的网站重构者,致力于做中国重构者的标杆,遗憾的是 <a href="https://www.cnblogs.com/greengnn/archive/2011/04/27/2029971.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/greengnn/archive/2011/04/03/2004922.html
Javascript有用的扩展方法— urldecode urlencode is_array in_array utf-8_encode trim base64_encode sprintf - greengnn
详见代码:var OWA = {}OWA.util = { ns: function(string) { return OWA.config.ns + string; }, nsAll: function(obj) { var nsObj = new Object(); for(param in obj) { // print out the params if (obj.hasOwnProperty(param)) { nsObj[OWA.config.ns+param] = obj[param]; } } return nsObj; }, getScript: function(file,
2011-04-03T15:30:00Z
2011-04-03T15:30:00Z
greengnn
https://www.cnblogs.com/greengnn/
【摘要】详见代码:var OWA = {}OWA.util = { ns: function(string) { return OWA.config.ns + string; }, nsAll: function(obj) { var nsObj = new Object(); for(param in obj) { // print out the params if (obj.hasOwnProperty(param)) { nsObj[OWA.config.ns+param] = obj[param]; } } return nsObj; }, getScript: function(file, <a href="https://www.cnblogs.com/greengnn/archive/2011/04/03/2004922.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/greengnn/archive/2011/04/03/2004171.html
CI框架配置smarty - greengnn
新建一个libraries 代码如下:使用$this->ci_smarty->set('pv',$pv);$this->ci_smarty->set('pv_se',$pv_se);$this->ci_smarty->build('home.html');<?php// load Smarty libraryrequire_once(APPPATH.'libraries/smarty/Smarty.class.php');class CI_smarty extends Smarty { p
2011-04-02T17:46:00Z
2011-04-02T17:46:00Z
greengnn
https://www.cnblogs.com/greengnn/
【摘要】新建一个libraries 代码如下:使用$this->ci_smarty->set('pv',$pv);$this->ci_smarty->set('pv_se',$pv_se);$this->ci_smarty->build('home.html');<?php// load Smarty libraryrequire_once(APPPATH.'libraries/smarty/Smarty.class.php');class CI_smarty extends Smarty { p <a href="https://www.cnblogs.com/greengnn/archive/2011/04/03/2004171.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/greengnn/archive/2011/03/30/1999373.html
前端环境搭建——代码开发测试部署 - greengnn
搞前端这东东有段时间了,做点笔记。前端环境搭建系列的目的是把前端团队作为一个整体,如何有效的团队协同开发,第一部分开发环境。1.代码版本管理SVN是必不可少了,版本号的规划按照项目三位版本,开发四位版本来部署。比如我要做A项目,版本号为1.0.0,我第一次提测的代码版本为1.0.0.1。每次四位版本按照tag区分。QA按照这个tag部署测试代码,OP则部署线上代码。如果多个项目同时开发,就开分支。这些需要一个项目管理平台来管理版本。2. 开发环境我假设前端team的范畴是HTML CSS JS MVC中的V 和 C。最佳的环境是每个人一个开发环境,代码通过SVN同步别人的代码。但是文件的路径全
2011-03-29T18:10:00Z
2011-03-29T18:10:00Z
greengnn
https://www.cnblogs.com/greengnn/
【摘要】搞前端这东东有段时间了,做点笔记。前端环境搭建系列的目的是把前端团队作为一个整体,如何有效的团队协同开发,第一部分开发环境。1.代码版本管理SVN是必不可少了,版本号的规划按照项目三位版本,开发四位版本来部署。比如我要做A项目,版本号为1.0.0,我第一次提测的代码版本为1.0.0.1。每次四位版本按照tag区分。QA按照这个tag部署测试代码,OP则部署线上代码。如果多个项目同时开发,就开分支。这些需要一个项目管理平台来管理版本。2. 开发环境我假设前端team的范畴是HTML CSS JS MVC中的V 和 C。最佳的环境是每个人一个开发环境,代码通过SVN同步别人的代码。但是文件的路径全 <a href="https://www.cnblogs.com/greengnn/archive/2011/03/30/1999373.html" target="_blank">阅读全文</a>
https://www.cnblogs.com/greengnn/archive/2011/03/19/js_seo.html
百度统计中js获取SEO数据的代码 - greengnn
var a = document;//var e = a.referrer;var e = 'http://www.google.com.hk/search?hl=zh-CN&newwindow=1&safe=strict&q=w3ctech&aq=f&aqi=&aql=&oq=';function f() { this.tags = {}; this.clicks = []; this.getSt()}f.prototype = { sindex: [1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 1
2011-03-18T17:46:00Z
2011-03-18T17:46:00Z
greengnn
https://www.cnblogs.com/greengnn/
【摘要】var a = document;//var e = a.referrer;var e = 'http://www.google.com.hk/search?hl=zh-CN&newwindow=1&safe=strict&q=w3ctech&aq=f&aqi=&aql=&oq=';function f() { this.tags = {}; this.clicks = []; this.getSt()}f.prototype = { sindex: [1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 1 <a href="https://www.cnblogs.com/greengnn/archive/2011/03/19/js_seo.html" target="_blank">阅读全文</a>