在需要调用的地方添加
nnnn<?phpnthis->widget('Widget_Contents_Post_Recent','pageSize=10')->to(recent);nif(recent->have()):nwhile(recent->next()):n?>nn<li><a href="<?php recent->permalink();?>"><?phprecent->title();?></a></li>nn<?php endwhile; endif;?>n在需要调用的地方添加
nnnn<?phpnthis->widget('Widget_Contents_Post_Recent','pageSize=10')->to(recent);nif(recent->have()):nwhile(recent->next()):n?>nn<li><a href="<?php recent->permalink();?>"><?phprecent->title();?></a></li>nn<?php endwhile; endif;?>n多选列表是1,2,3,4,但是我选择的顺序是2,4,3,1,我录入数据库需要按照我的录入顺序来,可是select2却会按照列表的排序来.插件本身会对已选项按照备选下拉框中的顺序进行排序.解决方法是在选择某一选项时,把它放到所有选项的最后.
nnnn ("select").on("select2:select", function (evt) {n var element = evt.params.data.element;n varelement = (element);nelement.detach();n (this).append(element);n $(this).trigger("change");n});n忘记密码 可在登陆的控制器那里用
nnnndump(cmf_password('123456'));ndie;nnnnn来获得重置密码
n远程仓库实际上和本地仓库没啥不同,纯粹为了7×24小时开机并交换大家的修改。
GitHub就是一个免费托管开源代码的远程仓库。但是对于某些视源代码如生命的商业公司来说,既不想公开源代码,又舍不得给GitHub交保护费,那就只能自己搭建一台Git服务器作为私有仓库使用。
搭建Git服务器需要准备一台运行Linux的机器,强烈推荐用Ubuntu或Debian,这样,通过几条简单的apt命令就可以完成安装。
nnnn假设你已经有sudo权限的用户账号,下面,正式开始安装。
nnnn$ sudo apt-get install git
$ sudo adduser git
收集所有需要登录的用户的公钥,就是他们自己的id_rsa.pub文件,把所有公钥导入到/home/git/.ssh/authorized_keys文件里,一行一个。
nnnn先选定一个目录作为Git仓库,假定是/srv/sample.git,在/srv目录下输入命令:
nnnn$ sudo git init --bare sample.git
Git就会创建一个裸仓库,裸仓库没有工作区,因为服务器上的Git仓库纯粹是为了共享,所以不让用户直接登录到服务器上去改工作区,并且服务器上的Git仓库通常都以.git结尾。然后,把owner改为git:
$ sudo chown -R git:git sample.git
第五步,禁用shell登录:
出于安全考虑,第二步创建的git用户不允许登录shell,这可以通过编辑/etc/passwd文件完成。找到类似下面的一行:
nnnngit:x:1001:1001:,,,:/home/git:/bin/bash
改为:
git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell
这样,git用户可以正常通过ssh使用git,但无法登录shell,因为我们为git用户指定的git-shell每次一登录就自动退出。
第六步,克隆远程仓库:
nnnn现在,可以通过git clone命令克隆远程仓库了,在各自的电脑上运行:
nnnn$ git clone git@server:/srv/sample.gitCloning into 'sample'...warning: You appear to have cloned an empty repository.
剩下的推送就简单了。
来自廖雪峰 https://www.liaoxuefeng.com/wiki/896043488029600/899998870925664
n/etc/ssh/sshd_config
nnnnClientAliveInterval 540
nnnnClientAliveCountMax 10
nnnnClientAliveCountMax 指如果发现客户端没有相应,则判断一次超时,这个参数设置允许超时的次数。比如10
nnnnClientAliveInterval 代表允许超时 5400秒 = 90分钟
nJSON 语法
这里说一下小程序里JSON配置的一些注意事项。
JSON文件都是被包裹在一个大括号中{},通过key-value的方式来表达数据。JSON的Key必须包裹在一个双引号中,在实践中,编写JSON的时候,忘了给key值加双引号或者是把双引号写成单引号是常见错误。
JSON的值只能是以下几种数据格式,其他任何格式都会触发报错,例如JavaScript中的undefined。
1、数字,包含浮点和整数;
2、字符串,需要包裹在双引号中;
3、Bool值,true或者false;
4、数组,需要包裹在方括号中[];
5、对象,需要包裹在大括号中{};
6、Null;
还需要特别注意的是JSON文件无法使用注释,试图添加注释将会引发报错。
附JSON验证网站:
http://www.bejson.com/
SCILAB
nnnnSCILAB 是一款与 MATLAB 类似的开源软件,可以实现 MATLAB 上所有基本的功能,如科学计算、矩阵处理及图形显示等。
nnnn由于 SCILAB 的语法与 MATLAB 非常接近,熟悉 MATLAB 编程的人很快就会掌握 SCILAB 的使用。有意思的是,SCILAB 提供的语言转换函数可以自动将用 MATLAB 语言编写的程序翻译为 SCILAB 语言。目前,SCILAB 可在 Linux、WINDOWS 和 Mac OS 全 PC 平台运行。
nnnn作为开放源码的软件,SCILAB 遵循 GPL 2.0 开源协议,源代码、用户手册及二进制的可执行文件都可以通过官网免费直接下载使用。用户不仅可以在 SCILAB 的许可证条件下自由使用该软件,还可以根据自己需要修改源代码。
nnnnOctave
nnnnOctave 是一个类似 MATLAB 和 Scilab 的数学软件包,可以进行各种运算,编程。它还有丰富的 C++ 接口可以让用户编程时调用。其配套的绘图工具采用 gnuplot 。Octave 的使用也是基于字符终端模式的,当需要绘图时,将会调用 gnuplot 进行数据绘图,并显示出来。
nnnnOctave 是用 C++ 编写的,它内容丰富的库也可以供用户在编写软件时调用。Octave 同时还支持 Fortran 等的调用,GSL 绑定等。可以由用户定制自己的函数、子程序等。
nnnnSpyder
nnnnSpyder 是一款轻量级的 Python IDE ,提供高级的代码编辑、交互测试、调试等特性,适用于数据分析。Spyder 的界面与 MATLAB 非常类似,其作者早年也承认模仿了 MATLAB 的设计。如果对于 MATLAB 的仿真建模需求不高的话,Spyder 足以取而代之。
n在当前主题function.php中添加
nnnnfunction getHotComments(limit = 10){ndb = Typecho_Db::get();nresult =db->fetchAll(db->select()->from('table.contents')n ->where('status = ?','publish')n ->where('type = ?', 'post')n ->where('created <= unix_timestamp(now())', 'post')n ->limit(limit)n ->order('commentsNum', Typecho_Db::SORT_DESC)n);nif(result){n foreach(result as val){nval = Typecho_Widget::widget('Widget_Abstract_Contents')->push(val);npost_title = htmlspecialchars(val['title']);npermalink = val['permalink'];n echo '`<li><a href="'.permalink.'" title="'.post_title.'" target="_blank">'.post_title.'</a></li>`';n }n}n}nnnnn前台调用
nnnn<?php getHotComments('10');?>n