上一页 1 ··· 12 13 14 15 16 17 18 19 20 ··· 30 下一页

2012年5月29日

摘要: 1、建立连接协议(三次握手) (1)客户端发送一个带SYN标志的TCP报文到服务器。这是三次握手过程中的报文1. (2) 服务器端回应客户端的,这是三次握手中的第2个报文,这个报文同时带ACK标志和SYN标志。因此它表示对刚才客户端SYN报文的回应;同时又标志SYN给客户端,询问客户端是否准备好进行数据通讯。 (3) 客户必须再次回应服务段一个ACK报文,这是报文段3. 2、连接终止协议(四次分手) 由于TCP连接是全双工的,因此每个方向都必须单独进行关闭。这原则是当一方完成它的数据发送任务后就能发送一个FIN来终止这个方向的连接。收到一个 FIN只意味着这一方向上没有数据流动,一... 阅读全文
posted @ 2012-05-29 14:40 kudosharry 阅读(226) 评论(0) 推荐(0) 编辑
摘要: 前几天在学习使用 CURL 时遇到一个问题:在 a.php 中以 POST 方式向 b.php 提交数据,但是 b.php 下就是无法接收到数据,而 CURL 操作又显示成功,非常诡异。后经多方查找,在某个网友的博客中得到了启发。原来,“传递一个数组到CURLOPT_POSTFIELDS,cURL会把数据编码成 multipart/form-data,而然传递一个URL-encoded字符串时,数据会被编码成 application/x-www-form-urlencoded。”,而和我一样对 CURL 不太熟悉的人在编写程序时,代码往往是下面的样子:$data = array( 'T 阅读全文
posted @ 2012-05-29 14:13 kudosharry 阅读(719) 评论(0) 推荐(0) 编辑
摘要: 现象:使用PHP的CURL相关函数进行POST,当要POST的参数内容长度超过1024时,将无法获得response的数据。即:[php] view plaincopyprint?curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);curl_setopt($ch,CURLOPT_POSTFIELDS,$data);当 strlen($data) > 1024 时,curl_exec函数将返回空字符串。解决:增加一个HTTP header[php] view plaincopyprint?curl_setopt($ch,CURLOPT_HTTPHEAD 阅读全文
posted @ 2012-05-29 14:12 kudosharry 阅读(468) 评论(0) 推荐(0) 编辑
摘要: PHP中的CURL函数库(Client URL Library Function)curl_close — 关闭一个curl会话curl_copy_handle — 拷贝一个curl连接资源的所有内容和参数curl_errno — 返回一个包含当前会话错误信息的数字编号curl_error — 返回一个包含当前会话错误信息的字符串curl_exec — 执行一个curl会话curl_getinfo — 获取一个curl连接资源句柄的信息curl_init — 初始化一个curl会话curl_multi_add_handle — 向curl批处理会话中添加单独的curl句柄资源curl_mult 阅读全文
posted @ 2012-05-29 13:48 kudosharry 阅读(224) 评论(0) 推荐(0) 编辑

2012年5月28日

摘要: // 总结一下常见的排序算法。// 排序分内排序和外排序。// 内排序:指在排序期间数据对象全部存放在内存的排序。// 外排序:指在排序期间全部对象个数太多,不能同时存放在内存,必须根据排序过程的要求,不断在内、外存之间移动的排序。// 内排序的方法有许多种,按所用策略不同,可归纳为五类:插入排序、选择排序、交换排序、归并排序、分配排序和计数排序。// 插入排序主要包括直接插入排序,折半插入排序和希尔排序两种;// 选择排序主要包括直接选择排序和堆排序;// 交换排序主要包括冒泡排序和快速排序;// 归并排序主要包括二路归并(常用的归并排序)和自然归并。// 分配排序主要包括箱排序和基数排序。 阅读全文
posted @ 2012-05-28 17:15 kudosharry 阅读(590) 评论(0) 推荐(0) 编辑
摘要: 1. 在写一些类或函数的时候, 大数组不要放在程序里, 应该用file_get_contents方法读取2. 做缓存的方式, file_get_contents再unserialize要比require和include快, 比如sablog和discuz的缓存方式就有问题, 它们是把数据库里的内容, 程序读出来再存成可以require的数组, 具体程序我没再看了, var_export就可以搞定, 但实现起来, serialize要方便直观容易得多3. 关于安全性, php直接require的方式, 虽然可以在头顶上加上 defined()来判断,但file_get_contents方法安全性 阅读全文
posted @ 2012-05-28 17:01 kudosharry 阅读(109) 评论(0) 推荐(0) 编辑
摘要: /* * $Id: ipLocation.class.php v0.0.1 2008-11-4 Linvo $ * $author: www.phperz.com * Copyright(C) 2008 */ class ipLocation { var $fp; var $firstip; //第一条ip索引的偏移地址 var $lastip; //最后一条ip索引的偏移地址 var $totalip; //总ip数 ... 阅读全文
posted @ 2012-05-28 16:51 kudosharry 阅读(324) 评论(0) 推荐(0) 编辑

2012年5月25日

摘要: TortoiseGit使用入门本地使用Git首先要确定TortoiseGit已找到msysgit,如果先安装msysgit 再装TortoiseGit, 一般TortoiseGit 就会自动的识别。 安装详见TortoiseGit安装教程 设置与查询的方法,这里从开始菜单进入设置。 这是TortoiseGit的设置界面,可以看到用来定位MSysGit的路径。 点“Check now”检查有效性。如果有错的话,就自己设置msysgit的bin文件路径。 右击任意文件夹,可以看到TortoiseGit已经嵌入右键了。 “Git Clone...”是获得远程的版本库,“Gi... 阅读全文
posted @ 2012-05-25 15:12 kudosharry 阅读(186) 评论(0) 推荐(0) 编辑
摘要: 1. git版本控制系统相比CVS\SVN优势:- 支持离线开发,离线Repository- 强大的分支功能,适合多个独立开发者协作- 速度块ps:关于git的更详细的介绍于优点在此就不介绍了,教大家怎么用是关键。:)==============运行环境========系统:windowsgit: Git-1.7.3.1-preview20101002.rar ===========================2. github是一个git项目托管网站注册地址:https://github.com/signup/free3. 安装git程序,执行下面操作$ cd ~/.ssh //检... 阅读全文
posted @ 2012-05-25 15:11 kudosharry 阅读(187) 评论(0) 推荐(0) 编辑

2012年5月21日

摘要: (1)简化代码JavaScript定义对象和数组非常简单,我们想要创建一个对象,一般是这样写的:View Code var car = new Object();car.colour = 'red';car.wheels = 4;car.hubcaps = 'spinning';car.age = 4;下面的写法可以达到同样的效果:View Code var car = { colour:'red', wheels:4, hubcaps:'spinning', age:4}后面的写法要短得多,而且你不需要重复写对象名称。另外对于数 阅读全文
posted @ 2012-05-21 10:54 kudosharry 阅读(107) 评论(0) 推荐(0) 编辑
上一页 1 ··· 12 13 14 15 16 17 18 19 20 ··· 30 下一页

导航