根据数组的键进行比较大小,排序,就不用说了,php有很多,很方便的内置函数,krsort(), ksort()等
如果是根据数组的值进行比较大小就麻烦一些。
如果值没有重复的情况,可以先用 array_flip() 交换键、值;然后krsort(),然后在array_flip()交换回来,就可以比较大小。
详情查看 »
从今天下午9月26日开始,就已经算是正式放假了,8天的婚假,再加上十一的7天假期,算下来能休息半个月了,这也可能是能享受的最长的有薪假期了。
9月27就回到老家,又有两年没有回去了,来北京已经快4年了,这期间就回去过一次,还是前年过年了,这次回去又是很匆忙,4号办完婚礼,5号就又要从家走了,因为7号要在老婆家(定州),再办一次酒席。
8号回到北京,14号还要在北京再办一次,这次免不了要遭受同事和同学的百般虐待了。
提取一段文本里的所有图片地址,所有的标准,不标准html代码格式,基本都考虑到了,如果还有其他情况,请留言。
- < ?php
- $str = "<img src="http://www.d5s.cn/wp-admin/a.Gif" alt="\" /> <img src="http://www.d5s.cn/uploadfile/images/200511722531871.jpg" /> <img src="http://www.d5s.cn/b.jpG" /> <img src="http://www.d5s.cn/" /> <img src="http://www.d5s.cn/wp-admin/d.jpG" /> <img src="http://www.d5s.cn/" /><img src="http://www.d5s.cn/wp-admin/f.JPG" />";
- preg_match_all("/<img (.+?)src=('|\")?([^\s]+?)('|\"|\/>)/is", $str, $arr);
- echo '<pre>';
- print_r($arr[3]);
- echo '</pre>';
- ?>
结果为:
Array
(
[0] => a.Gif
[1] => /uploadfile/images/200511722531871.jpg
[2] => /b.jpG
[3] => c.jpG
[4] => d.jpG
[5] => e.jpg
[6] => f.JPG
)
详情查看 »
在 Redhat/Fedora 是预设安装好 wget,而 FreeBSD 则预设没有安装,要在文本模式下载文件很不便。在 FreeBSD 要安装 wget 很容易,只要使用 ports 就行了,方法如下:
cd /usr/ports/ftp/wget
make install clean
那么系统就会自动替你完成安装了。
或者使用命令
pkg_add -r wget就可以把wget安装上去了
今天看到一篇关于php图形类库的介绍,就转载过来了,说不定哪天会用上,就先记录一下。
以下转自: http://www.achome.cn/blog/?p=321
最近在用一个非常不错的php图形类库-JPGraph,来给各种统计数据绘图,感觉非常好用和强大,可以画各种统计图和曲线,也可以自定义展示颜色和字体等展示元素,和大家分享一下吧,下载地址如下:
http://download.chinaunix.net/download/0006000/5098.shtml
顺便附一个用jpgraph画柱状图的例子:
- include ("./graph/jpgraph.php");
- include ("./graph/jpgraph_bar.php");
- $graph = new Graph(600,250,"auto");
- $graph->img->SetMargin(50,20,30,65);
- $graph->SetScale("textlin");
- $graph->SetShadow();
- $graph->title->Set("");
- // Slightly adjust the legend from it's default position
- $graph->legend->SetLayout(LEGEND_HOR);
- $graph->legend->Pos(0.5,0.95,"center","bottom");
- $graph->legend->SetFont(FF_FONT1,FS_BOLD);
- // Setup X-scale
- $graph->xaxis->SetTickLabels($xscal);//x坐标赋值
- $graph->xaxis->SetFont(FF_ARIAL,FS_NORMAL,8);//x坐标显示字体
- $graph->xaxis->SetLabelAngle(0);//x坐标显示角度
- $bar = new BarPlot($speedArr);//赋值给柱状图
- $bar->SetFillColor("orange");//柱状图填充颜色
- $bar->value->Show();
- $graph->Add($bar);
- // Output line
- $graph->Stroke();
今天又遇到了,xp的共享问题。
问题如下:两台windows xp主机,通过路由器连接,同在一个工作组WORKGROUP,互相可以ping 通,两台机器的guest都已经启用,防火墙已关闭,共享已经设置,但是仍然两台机器仍然无法访问。
最后查找半天才发现还有其他地方,没有设置,可参考这篇文章。
1、点击“开始→运行”,在“运行”对话框中输入“GPEDIT.MSC”,打开组策略编辑器,依次选择“计算机配置→Windows设置→安全设置→本地策略→用户权利指派”,双击“拒绝从网络访问这台计算机”策略,删除里面的“GUEST”账号。
2、计算机配置→Windows设置→安全设置→本地策略→安全选项”,双击“网络访问:本地账号的共享和安全模式”策略,更改为“经典:本地用户以自己的身份验证”。
3、两台机器一定都要设置登录密码,不能以空密码登录,否则当用户的口令为空时,即使你做了上述的所有的更改还是不能进行登录,访问还是会被拒绝。这是因为,在系统“安全选项”中有“账户:使用空白密码的本地账户只允许进行控制台登录”策略默认是启用的,根据Windows XP安全策略中拒绝优先的原则,密码为空的用户通过网络访问使用Windows XP的计算机时便会被禁止。我们只要将这个策略停用即可解决问题。在安全选项中,找到“使用空白密码的本地账户只允许进行控制台登录”项,停用就可以,否则即使开了guest并改成经典模式还是不能登录。
至此,我的问题,已经得到解决。希望对遇到和我一样问题的朋友,能有所帮助。
关于用网络邻居访问不响应或者反应慢的问题
在WinXP和Win2000中浏览网上邻居时系统默认会延迟30秒,Windows将使用这段时间去搜寻远程计算机是否有指定的计划任务(甚至有可能到Internet中搜寻)。如果搜寻时网络时没有反应便会陷入无限制的等待,那么10多分钟的延迟甚至报错就不足为奇了。下面是具体的解决方法。
A.关掉WinXP的计划任务服务(Task Scheduler)
可以到“控制面板/管理工具/服务”中打开“Task Scheduler”的属性对话框,单击“停止”按钮停止该项服务,再将启动类型设为“手动”,这样下次启动时便不会自动启动该项服务了。
B.删除注册表中的两个子键
到注册表中找到主键“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\
CurrentVersion\Explorer\RemoteComputer\NameSpace”
删除下面的两个子健::{2227A280-3AEA-1069-A2DE-08002B30309D}和{D6277990-4C6A-11CF-87-00AA0060F5BF}。
其中,第一个子健决定网上邻居是否要搜索网上的打印机(甚至要到Internet中去搜寻),如果网络中没有共享的打印机便可删除此键。第二个子健则决定是否需要查找指定的计划任务,这是网上邻居很慢的罪魁祸首,必须将此子健删除。
安装前提:不和apache结合,单独的svn服务,和apache结合的配置,请参考其他文章。
好处:作为单独的服务,即使apache挂了,也不影响svn的使用
准备工作:下载
#mkdir subversion_down 建立下载目录
#wget http://subversion.tigris.org/downloads/subversion-1.4.3.tar.gz 下载subversion-1.4.3.tar.gz 文件
#wget http://subversion.tigris.org/downloads/subversion-deps-1.4.3.tar.bz2下载subversion-deps-1.4.3.tar.bz2文件
解压两个文件
#tar -zxf subversion-1.4.3.tar.gz
#tar -jxf subversion-deps-1.4.3.tar.bz2
进入 subverstion-1.4.3 目录
#cd subverstion-1.4.3
#./configure –with-apxs=/usr/local/httpd/bin/apxs –with-apr=/usr/local/httpd –with-apr-util=/usr/local/httpd
/usr/local/httpd (此目录为apache的安装目录,根据需要自己更改)
#make
#make install
#netstat -ntlp (如果3690端口在,说明subversion已经运行了)
#ps aux (查看所有进程)
#kill xxxx (进程为svnserve 的pid)
启动服务
#svnserve -d -r /home/owen/svn (这是仓库的根目录 svnserve –help查看更多命令)
#svnadmin create /home/owen/svn/d5s_cn
#cd /home/owen/svn/d5s_cn (此目录为某项目的仓库目录,可以根据上一条命令,建立多个项目仓库)
至此subverstion已经安装完毕。
配置svn
#cd conf(进入某项目仓库的配置文件目录)
#ls (列出authz passwd svnserve.conf)
#vi svnserve.conf
anon-access=read
auth-access=write
password-db=passwd
去掉注释,并且以上三行前、后、中间都没有空格
#vi passwd
添加
[users]
owen=d5s
owen为用户名, d5s为密码。前、后、中间都没有空格
如果不需要密码验证,可以不在passwd添加内容。并且svnserve.conf 中的password-db=passwd 注释掉
仓库访问地址为:svn://xxx.xx.xxx.xx/d5s_cn (xxx为服务器ip)
以上是我今天安装的详细过程,如果有问题,请留言。

