Code For Colorful Life
conky配置略懂点
###关于conky配置的一点说明
昨晚想安装个conky,但遇到了一些奇葩的问题,我的Linux Mint
无法运行conky_clock_ring()
这个函数,用于绘制有时钟的那个东东。网上有人解决了,可按照他们的方法,我这里就是不行。无奈,只好找那些没有时钟的conky了。
Read more...
使用共享内存和信号量模仿cp命令
学习共享内存和信号量的结合使用
学习自《linux网络编程》,以下实例程序也是仿照书上的,但是觉得书本上的实现有问题,会发生死锁,自己修改了实现方法。
实例程序shmcopy功能:把一个文件复制为另一个文件(usage:shmcopy a b)。每次调用shmcopy就形成两个进程——读进程和写进程。它们共享两个缓冲区,这两个缓冲区作为共享内存顿来实现。当读进程把数据写入第一个缓冲区期间,写进程就把第二个缓冲区内容写出去。反之亦然。由于读和写是并发进行的,所以数据吞吐量增加了。
为了使两个进程同步,防止读进程把缓冲区装满之前,写进程就把该缓冲区内容写出去。我们使用了两个信号量。因为共享存储器机构本身没有提供同步功能。
Read more...
正则表达式小结
###分隔符
当使用 PCRE 函数的时候,模式需要由分隔符闭合包裹。分隔符可以使任意非字母数字、非反斜线、非空白字符。经常使用的分隔符是正斜线(/)、hash符号(#) 以及取反符号(~)。
###元字符
元字符是正则表达式中具有特殊意义的专用字符,用来规定其前导字符在目标对象中的出现模式.
共有两种不同的元字符:一种是可以在模式中方括号外任何地方使用的,另外一种 是需要在方括号内使用的。(元字符列表)[http://www.php.net/manual/zh/regexp.reference.meta.php]
Read more...
Ajax提交表单
主要使用了jQuery ajax - serialize()
方法.
The .serialize() method creates a text string in standard URL-encoded notation.
It can act on a jQuery object that has selected individual form controls, such as <input>
, <textarea>
, and <select>
: $( "input, textarea, select" ).serialize();
html代码:
Read more...
多个文件上传
html代码如下,有两点需要注意的:一是设置form的enctype属性,二是使用post方法
1
2
3
4
5
6
7
8
9
10
11
12
13
<html>
<head>
<meta charset="utf-8">
</head>
<body>
<form action="test.php" method="post" enctype="multipart/form-data">
<input type="file" name="userfile1">
<input type="file" name="userfile2">
<input type="file" name="userfile3">
<input type="submit">
</form>
</body>
</html>
Read more...
PHP中比较少用但很有用的几个函数
###函数接收任意数量的参数
1
2
3
4
5
6
7
8
9
10
11
<?php
function funtest() {
$args = func_get_args();
foreach ( $args as $k => $v ) {
echo 'arg'.($k+1).': '.$v.'<br />';
}
}
funtest();
funtest( 'hello' );
funtest( 'hello', 'world', 'next' );
?>
Read more...
递归遍历目录
###方法一
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<meta charset="utf-8">
<?php
function showDir($dir)
{
$r = array();
foreach (scandir($dir) as $key => $value) {// scandir()列出指定路径中的文件和目录
if ($value === '.' || $value === '..' ) {
continue;
}
if (is_dir($dir.'/'.$value)) {
$r[$dir.'/'.$value] = showDir($dir.'/'.$value);
}
}
return $r;
}
var_dump(showDir('.'));
?>
Read more...