魏长东

weichangdong

本站的几个特色功能

平时逛别的一些大牛的技术博客,看到比较好的效果,就“拿来主义”,用到这个小小站里面了。有这么几个特色。

1. 浏览文章时,用鼠标选中文字的时候,可以分享到【腾讯和新浪微博】。

2.上传图片,加了【图片水印】。

3. 实现了文章可以【加精华】。

4. 加了支付宝的【捐赠】功能。

5. 加了文章【置顶】功能。

【特别说明】以上实现的功能都是基于新浪SAE的环境。因为SAE 不再赠送免费的云豆给【中级云开发者】了,所以就吧网站被迫签到redhat的openshift。 本站的原本地址是wcd-wcd1986.rhcloud.com  所以一些功能给切掉了。比如图片之前传到SAE的仓库,现在通过sdk传到了【七牛】。

【再次说明】因为本站通过了备案,所以再一次迁移到了【阿里云的云虚拟主机】上。图片还是存在【七牛】上,用了cdn加速。

欲知效果如何,且看图片展示。

»»阅读全文

Tags: 封狼居胥

lua的协程学习

有些知识当时看懂了,但是过一阵子发现看半天又看不懂了,真是不知所谓。

可能是学习没有复习的原因吧。

Lua所支持的协程全称被称作协同式多线程,协同程序与线程差不多,也就是一条执行序列,拥有自己独立的栈,局部变量和指令指针,同时又与其它协同程序共享全局变量和其它大部分东西。线程与协同程序的主要区别在于,一个具有多线程的程序可以同时运行几个线程,而协同程序却需要彼此协作地运行。就是说,一个具有多个协同程序的程序在任何时刻只能运行一个协同程序,并且正在运行的协同程序只会在其显示地挂起时,它的执行才会暂停。

我的理解。就是暂停程序,等下一次调用,然后从上次停下的地方继续执行。

»»阅读全文

2016年回家图

写了

从北京住的地方到北京西站,坐高铁到西安北站,然后坐地铁去西安南站附近,然后打车去西安南站,做高速到柞水,然后我哥哥接我,在我哥哥加住宿。然后我哥开车从柞水回老家,过完年我哥开车送我们去镇安,在镇安住一晚,然后坐软卧去襄阳,然后他哥哥在襄阳东站接我们,我们又在他哥哥家住宿一晚。在襄阳呆了几天我一个人从yy家出发,去襄阳火车站,然后无座13个小时到北京

的大概过程,结果一不小心全没了,擦擦擦擦擦擦。

懒得在写了,直接上图了吧。

»»阅读全文

qconf 批量添加配置

<?php
//之前是代码写死配置的,要让用qconf,但是一个一个的添加太麻烦,就写这个小工具。把之前代码要用的fb数据抓取信息都添加到qconf里面。

$qzk = new QConfZK("*:2181");
//$value = $qzk->nodeGet("/common/products/wcd/uiver");
//print_r($value) . PHP_EOL;

$app_info_old = [
        9 => ['app_id' => '*******************','token' => '*******************|kdn-***-zuiqCjXkf97I'], //
        8 => ['app_id' => '*******************','token' => '**********************************'], //
		10 => ['app_id' => '*******************','token' => '**********************************'],//
		30001 => ['app_id' => '*******************','token' => '**********************************'],//
        10000 => ['app_id' => '*******************', 'token' => '*******************|***--Ps7EezCrc'],//
        //20000 => ['app_id' => '*******************', 'token' => '**********************************'],//
		20000 => ['app_id' => '*******************', 'token' => '**********************************'],//
		20001 => ['app_id' => '*******************', 'token' => '*******************|alaGob-***-EzLsWG5gxKE'],//
	  20 => ['app_id' => '*******************','token' => '**********************************'],// 
	  21 => ['app_id' => '*******************','token' => '**********************************'],//
      23 => ['app_id' => '*******************','token' => '*******************|***-wuZI'],//
	  10023 => ['app_id' => '*******************','token' => '**********************************'],//
	  24 => ['app_id' => '*******************','token' => '**********************************'],//
	  25 => ['app_id' => '*******************','token' => '**********************************'],//
    ];

$path = '/common/products/';
$all_product = $qzk->list($path);
foreach ($all_product as  $pc) {
	if ($pc != 'wcd_test'){
		//continue;
	}
	$wcd = $qzk->listWithValue($path.$pc);
	$appid = $wcd['appid'];
	if (!isset($app_info_old[$appid])){
		continue;	
	}
	$qzk->nodeSet($path.$pc.'/fb_app_id',$app_info_old[$appid]['app_id']);
	$qzk->nodeSet($path.$pc.'/fb_token',$app_info_old[$appid]['token']);
	$qzk->nodeSet($path.$pc.'/fb_online',1);
	$get_value = $qzk->listWithValue($path.$pc);
	print_r($get_value);
}

test

[need password!]

Lua中的错误与异常

Lua中error的处理:Lua经常作为扩展语言嵌入在别的应用中,所以不能当错误发生时简单的崩溃或者退出。相反,当错误发生时Lua结束当前的chunk并返回到应用中。

 

  当Lua遇到不期望的情况时就会抛出错误,你也可以通过调用error函数显式地抛出错误。

 

  当函数遇到异常有两个基本的动作:返回错误代码或者抛出错误。选择哪一种方式,没有固定的规则,不过基本的原则是:对于程序逻辑上能够避免的异常,以抛出错误的方式处理之,否则返回错误代码。

»»阅读全文