<?xml version="1.0" encoding="UTF-8"?><!-- generator="WordPress/2.9.2" -->
<rss version="0.92">
<channel>
	<title>一亩三分地</title>
	<link>http://blog.25q.net</link>
	<description>种瓜得瓜，种豆得豆；一份耕耘，一份收获</description>
	<lastBuildDate>Mon, 12 Jul 2010 20:23:26 +0000</lastBuildDate>
	<docs>http://backend.userland.com/rss092</docs>
	<language>en</language>
	
	<item>
		<title>解决xml乱码问题</title>
		<description><![CDATA[将xml定义中的不合法字符替换即可.
$txt = preg_replace(&#8220;/[^(\x20-\xD7FF)&#124;(\xE000-\xFFFD)&#124;(\x10000\-\x10FFFF)&#124;\x9&#124;\xA&#124;\xD]/&#8221;,&#8221;",$txt);
]]></description>
		<link>http://blog.25q.net/2010/07/13/%e8%a7%a3%e5%86%b3xml%e4%b9%b1%e7%a0%81%e9%97%ae%e9%a2%98/</link>
			</item>
	<item>
		<title>mac 10.6.4的alc888和hd4850驱动</title>
		<description><![CDATA[本人机器是dell 530s.显卡是4850,id是 0&#215;94421002的声卡是alc888,id是0&#215;10ec0888
ALC888 驱动
x64_audio_for_ALC888
4850显卡
4800
]]></description>
		<link>http://blog.25q.net/2010/07/09/mac-10-6-4%e7%9a%84alc888%e5%92%8chd4850%e9%a9%b1%e5%8a%a8/</link>
			</item>
	<item>
		<title>vsftpd 530 login error</title>
		<description><![CDATA[/etc/shells权限为644，对于/etc/ftpusers同样限制权限为644，设置为 777 就会导致 ftp失败
]]></description>
		<link>http://blog.25q.net/2010/07/08/vsftpd-530-login-error/</link>
			</item>
	<item>
		<title>PHP多进程 win不可用</title>
		<description><![CDATA[#! /usr/bin/php
&#60;?php
$array = array(5,6,7,8,9,11,12,13,14,15);
foreach($array as $rpid){
        $pid[$i] = pcntl_fork();//这个值在父进程中大于0,在子进程中为0,返回-1代表fork失败
        if($pid[$i])
        {
                #pcntl_wait($status);  
                $id = getmypid();
                echo &#8220;parent process,pid {$id}, child pid {$pid[$i]}\n&#8221;;
        }
        else
        {
                echo &#8217;start parse &#8216;.$rpid.&#8221;\n&#8221;;
                include(&#8220;test3.php&#8221;);
                //sleep(1);
                echo &#8216;end parse &#8216;.$rpid.&#8221;\n&#8221;;
                exit();//由于是复制了一份父进程的代码.所以需要使用pid值来判断将哪些代码在子进程中运行,记得这个exit,否则可能永远fork下去.
        }
}
?&#62;
]]></description>
		<link>http://blog.25q.net/2010/06/30/php%e5%a4%9a%e8%bf%9b%e7%a8%8b-win%e4%b8%8d%e5%8f%af%e7%94%a8/</link>
			</item>
	<item>
		<title>升级flash到10.1的时候.被自动安装了google toolbar</title>
		<description><![CDATA[
]]></description>
		<link>http://blog.25q.net/2010/06/16/%e5%8d%87%e7%ba%a7flash%e5%88%b010-1%e7%9a%84%e6%97%b6%e5%80%99-%e8%a2%ab%e8%87%aa%e5%8a%a8%e5%ae%89%e8%a3%85%e4%ba%86google-toolbar/</link>
			</item>
	<item>
		<title>php 编译oci的时候出现LD_LIBRARY_PATH错误</title>
		<description><![CDATA[错误信息:
please check that LD_LIBRARY_PATH includes the directory with Oracle Instant Client libraries
解决办法:如果配置过程没有问题,LD_LIBRARY_PATH在/etc/profile中也有正确的路径则检查SELINUX是否开启,如果开启,则操作:SELINUX=disabled,重启
即可解决问题
如不想重启,想立即看到结果则运行setenforce 0
]]></description>
		<link>http://blog.25q.net/2010/06/11/php-%e7%bc%96%e8%af%91oci%e7%9a%84%e6%97%b6%e5%80%99%e5%87%ba%e7%8e%b0ld_library_path%e9%94%99%e8%af%af/</link>
			</item>
	<item>
		<title>PHP使用CURL上传文件的函数</title>
		<description><![CDATA[一般的文件上传是通过html表单进行的，通过CURL可以不经过浏览器，直接在服务器端模拟进行表单提交，完成POST数据、文件上传等功能。需要被上传的文件需要在文件名前加上“@”以示区分，并且，文件名需要是完整路径。
以下php函数来模拟html表单的提交数据：
function uploadByCURL($post_data,$post_url){
	$curl = curl_init();
	curl_setopt($curl, CURLOPT_URL, $post_url);
	curl_setopt($curl, CURLOPT_POST, 1 );
	curl_setopt($curl, CURLOPT_POSTFIELDS, $post_data);
	curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
	curl_setopt($curl,CURLOPT_USERAGENT,"Mozilla/4.0");
	$result = curl_exec($curl);
	$error = curl_error($curl);
	return $error ? $error : $result;
}
函数的使用：
$url = "http://127.0.0.1/app.php";
$data = array(
	"username" =&#62; $username,
	"password"  =&#62; $password,
	"file1"  =&#62; "@".realpath("photo1.jpg"),
	"file2"  =&#62; "@".realpath("file2.xml")
);
print_r(uploadByCURL($data,$url));
http://flashphp.org/blog/
]]></description>
		<link>http://blog.25q.net/2010/06/06/php%e4%bd%bf%e7%94%a8curl%e4%b8%8a%e4%bc%a0%e6%96%87%e4%bb%b6%e7%9a%84%e5%87%bd%e6%95%b0/</link>
			</item>
	<item>
		<title>MySQL索引分析和优化（转）</title>
		<description><![CDATA[MySQL索引分析和优化（转）
索引用来快速地寻找那些具有特定值的记录，所有MySQL索引都以B-树的形式保存。如果没有索引，执行查询时MySQL必须从第一个记录开始扫描整个表的所有记 录，直至找到符合要求的记录。表里面的记录数量越多，这个操作的代价就越高。如 果作为搜索条件的列上已经创建了索引，MySQL无需扫描任何记录即可迅速得到目标记录所在的位置。如果表有1000个记录，通过索引查找 记录至少要比顺序扫描记录快100倍,个人感觉快100倍有点夸张。
假设我们创建了一 个名为people的表
CREATE TABLE people (
peopleid  SMALLINT NOT NULL,
name CHAR(50) NOT NULL
);
创建完后，我 们随机把1000个不同name值插入到people表。
可以看到，在数据文件中name列没有任何明确的次序。如果我们创建了name列的索 引，MySQL将在索引中排序name列。
对于索引中的每一 项，MySQL在内部为它保存一个数据文件中实际记录所在位置的“指针”。因此，如果我们要查找name等于“Mike”记录的  peopleid（SQL命令为“SELECT peopleid  FROM people WHERE name=&#8217;Mike&#8217;;”），MySQL能够在name的索引中查找“Mike”值，然后直接转到 数据文件中相应的行，准确地返回该行的  peopleid（999）。在这个过程中，MySQL只需处理一个行就可以返回结果。如果没有“name”列的索引，　MySQL要扫描数据文件中的所 有记录，即1000个记录！显然，需要MySQL处理的记录数量越少，则它完成任务的速度就越快。

索引的类型
普通索引 
这是最基本的索引类型，而且它没 有唯一性之类的限制。普通索引可以通过以下几种方式创建

创建索引，例如CREATE  INDEX &#60;索引的名字&#62;; ON tablename (列的列表);
修改表，例如ALTER TABLE tablename  ADD INDEX [索引的名字] (列的列表);
创建表的时候指定索引，例如CREATE TABLE tablename (  [...], INDEX [索引的名字] (列的列表) );
唯一性索引 
这 [...]]]></description>
		<link>http://blog.25q.net/2010/06/04/mysql%e7%b4%a2%e5%bc%95%e5%88%86%e6%9e%90%e5%92%8c%e4%bc%98%e5%8c%96%ef%bc%88%e8%bd%ac%ef%bc%89/</link>
			</item>
	<item>
		<title>正则表达式收集</title>
		<description><![CDATA[字符描述：  \：将下一个字符标记为特殊字符或字面值。例如&#8221;n&#8221;与字符&#8221;n&#8221;匹配。&#8221;\n&#8221;与换行符匹配。序列&#8221;\\&#8221;与&#8221;\&#8221;匹配，&#8221;\(&#8220;与&#8221;(&#8220;匹配。
^  ：匹配输入的开始位置。
$ ：匹配输入的结尾。
* ：匹配前一个字符零次或几次。例如，&#8221;zo*&#8221;可以匹配&#8221;z&#8221;、&#8221;zoo&#8221;。
+  ：匹配前一个字符一次或多次。例如，&#8221;zo+&#8221;可以匹配&#8221;zoo&#8221;,但不匹配&#8221;z&#8221;。
?  ：匹配前一个字符零次或一次。例如，&#8221;a?ve?&#8221;可以匹配&#8221;never&#8221;中的&#8221;ve&#8221;。
.： 匹配换行符以外的任何字符。
(pattern) 与模式匹配并记住匹配。匹配的子字符串可以从作为结果的 Matches 集合中使用  Item [0]&#8230;[n]取得。如果要匹配括号字符(和 )，可使用&#8221;\(&#8221; 或 &#8220;\)&#8221;。
x&#124;y：匹配 x 或 y。例如  &#8220;z&#124;food&#8221; 可匹配 &#8220;z&#8221; 或 &#8220;food&#8221;。&#8221;(z&#124;f)ood&#8221; 匹配 &#8220;zoo&#8221; 或 &#8220;food&#8221;。
{n}：n  为非负的整数。匹配恰好n次。例如，&#8221;o{2}&#8221; 不能与 &#8220;Bob 中的 &#8220;o&#8221; 匹配，但是可以与&#8221;foooood&#8221;中的前两个o匹配。
{n,}  ：n  为非负的整数。匹配至少n次。例如，&#8221;o{2,}&#8221;不匹配&#8221;Bob&#8221;中的&#8221;o&#8221;，但是匹配&#8221;foooood&#8221;中所有的o。&#8221;o{1,}&#8221;等价 于&#8221;o+&#8221;。&#8221;o{0,}&#8221;等价于&#8221;o*&#8221;。
{n,m} ：m 和 n 为非负的整数。匹配至少 n 次，至多 m  次。例如，&#8221;o{1,3}&#8221; [...]]]></description>
		<link>http://blog.25q.net/2010/06/04/%e6%ad%a3%e5%88%99%e8%a1%a8%e8%be%be%e5%bc%8f%e6%94%b6%e9%9b%86/</link>
			</item>
	<item>
		<title>utf-8转gb2312函数作用于 javascript(有vb函数,不通用)</title>
		<description><![CDATA[function gb2312(key)
{
var r =  &#8220;&#8221;;
for(var i=0;i&#60;key.length;i++)
{
var  t = key.charCodeAt(i);
if(t&#62;=0&#215;4e00  &#124;&#124; t==0&#215;300A &#124;&#124; t==0&#215;300B)
{
try
{
execScript(&#8220;ascCode=hex(asc(\&#8221;"+key.charAt(i)+&#8221;\&#8221;))&#8221;,  &#8220;vbscript&#8221;); r += ascCode.replace(/(.{2})/g, &#8220;%$1&#8243;); }
catch(e)
{}
}
else{r  += escape(key.charAt(i))}
}
return  r;
}
]]></description>
		<link>http://blog.25q.net/2010/06/04/utf-8%e8%bd%acgb2312%e5%87%bd%e6%95%b0%e4%bd%9c%e7%94%a8%e4%ba%8e-javascript%e6%9c%89vb%e5%87%bd%e6%95%b0%e4%b8%8d%e9%80%9a%e7%94%a8/</link>
			</item>
</channel>
</rss>
