google啊,我为你呜冤

June 18th, 2009

今天央视以新闻联播加焦点访谈双响炮的形式,报道了google如何带有“不和谐”内容,央视这张嘴真是要多大有多大,说谁好谁就好,说谁不好,总能给你找出些理由来。

一个搜索引擎,它所做的是抓取网站上的内容供用户搜索。一个身穿CCTV T恤并且也很CCTV的人还像模像样的搜索了一下“儿子”这个关键词。出来一些有点“黄”的内容。看来这家伙还真是没少费心思查找关键词。我用了这么久GOOGLE,从来都不会想到去搜“儿子”这个词儿。CCTV展示的除了儿子这个词儿,还有一些图片,三点都没全露,那也叫黄片?

然后有两个貌似学生和老师的人出来说这个说那个。我真是怀疑,尤其是那个“女教师”,她记不记得住google的网址。还是要先去百度一下google的网址,再进入google,再去搜索“儿子”。网络本身就是双刃剑,有利必有弊。

现在这年青人,啥不懂啊,想看的还能看不到?这种东西主要是在于教育。一些国家没去封锁,也没见人怎么样。

这种关键词自动展示,是为了方便用户搜索,这些词都是根据用户的搜索结果总结出来的,基本上都是程序自动分析的。google的原则是尽量减少人为影响搜索结果,在中国也不得不遵守中国的法律,过滤掉了N多N多关键词。导致有时候搜一些有用的东西的时候都搜不到。

再者说,中国有gfw啊,你可以封锁啊。google只是一个搜索引擎,他怎么能将“国外淫秽网站”的图片传入中国呢?这又不像是传教士,你没听说过他来跟你讲。

google不知道得罪了那位权贵,中国那么多低俗的网站不管,却拿google开刀。

那网易上,那么多“性”广告,要多露骨有多露骨,也没人放个P。就拿一个最经典的“让小姨子夜夜XX”这种广告词不也是没人管吗?

google啊,我挺你。

industry , ,

php取出数组的部分元素(array_slice())

June 4th, 2009

array_slice

(PHP 4, PHP 5)

array_slice — 从数组中取出一段

说明

array array_slice ( array $array, int $offset [, int $length [, bool $preserve_keys]] )

array_slice() 返回根据 offsetlength 参数所指定的 array 数组中的一段序列。

如果 offset 非负,则序列将从 array 中的此偏移量开始。如果 offset 为负,则序列将从 array 中距离末端这么远的地方开始。

如果给出了 length 并且为正,则序列中将具有这么多的单元。如果给出了 length 并且为负,则序列将终止在距离数组末端这么远的地方。如果省略,则序列将从 offset 开始一直到 array 的末端。

注意 array_slice() 默认将重置数组的键。自 PHP 5.0.2 起,可以通过将 preserve_keys 设为 TRUE 来改变此行为。

例 263. array_slice() 例子

<?php
$input = array("a", "b", "c", "d", "e");
$output = array_slice($input, 2);      // returns "c", "d", and "e"
$output = array_slice($input, -2, 1);  // returns "d"
$output = array_slice($input, 0, 3);   // returns "a", "b", and "c"
// note the differences in the array keys
print_r(array_slice($input, 2, -1));
print_r(array_slice($input, 2, -1, true));
?>

上例将输出:

Array
(
    [0] => c
    [1] => d
)
Array
(
    [2] => c
    [3] => d
)

PHP&MYSQL

jquery之一个引号引发的惨案

June 4th, 2009

今天做一个效果,一直在firefox下调试,一点问题都没有,可是到IE下却怎么着都不显示变化了。

我用了一个append向一个表格追加内容,然后用

$("#xtable").fadeIn(“1000”);

缓显出来,可是在firefox和google chrom都没有问题,就是IE(版本8)就是愣是显示不出来,没有相关的调试插件,也不知道数据更新了没有。开始一直以为是数据没追加过去呢。

后来看了看jquery手册,发现它用自定义时间的时候,没有双引号,仅仅是诸如"slow"这种默认时间效果的情况下才有双引号,于是我去掉了自定义时间上的双引号,变成:

$("#xtable").fadeIn(1000);

问题解决了,一个引号害的我费了半个小时的劲调试。。。

Jquery , ,

php fgetcsv的bug

June 2nd, 2009

在做程序时,用户上传数据,数据中每行中有一个分隔符,然后将每行分隔成数组。在使用fgetcsv时,发现当这一行中的中文字符中含有分隔符时,它不能正常划分数组。而使用fgets每行读入之后使用explode可以正常划分数组。

字符“D^委员会办公室^翟鹏纃得滂(p1ng)腥^640^1118^n”,这是一行,这一行中使用“^”将其划分为数组。

使用fgets将这一行读取之后,使用explode划分正常,结果如下:

Array
(
    [0] => Array
        (
            [0] => D
            [1] => 委员会办公室
            [2] => 翟鹏纃得滂(p1ng)腥
            [3] => 640
            [4] => 1118
            [5] => n
        )

)

但使用fgetcsv的情况就不一样了,注意,必须是读取文件,而不是直接把字符串写在文件中
Read more…

PHP&MYSQL , ,

一个php检查文件mime类型的类

June 1st, 2009

一个检查文件mime的类,原文中有一个错误,我已经修正。

我试了一下,如果把文件改名,它还是会以扩展名为其准。可能我没有安装相关的扩展。

给需要的人们吧。

ss

php mime class (83)

PHP&MYSQL

jquery效果中加入setTimeout

May 30th, 2009

在jquery效果中,我们可能经常需要在各个效果之间加入一个时间等待。如某个div显示出来,隔几秒之后再隐藏。

jquery官方网站中有一个非常好的例子。

在你的js文件中添加如下代码:

$.fn.wait = function(time, type) {
        time = time || 1000;
        type = type || "fx";
        return this.queue(type, function() {
            var self = this;
            setTimeout(function() {
                $(self).dequeue();
            }, time);
        });
    };

具体用法是,.wait( [time], [type] )
第一个参数是时间,默认是1000毫秒。
第二个参数是类型,默认是fx即动画效果

    function runIt() {
      $("div").wait()
              .animate({left:'+=200'},2000)
              .wait()
              .animate({left:'-=200'},1500,runIt);
    }
    runIt();

jquery网站的样例:http://docs.jquery.com/Cookbook/wait

Jquery ,

lenovo Rescue and Recovery 的严重bug

May 11th, 2009

第一系统windows xp
首先使用恢复盘将硬盘还原到出厂状态,然后用lenovo工程师软件将C调整到40G
然后使用windows xp的磁盘管理将剩余的磁盘空间划分为扩展分区。
然后分出三个或两个区,如D,E,F。
然后使用联想工程师软件,恢复一键恢复功能,也就是修复一下主引导记录。

然后安装ubuntu,将F盘删除,划分两个分区,/和/home 分区格式ext3

同时,在安装ubuntu最后一步中,不将引导记录写入主引导记录,而是写入/这个分区 Read more…

software , ,

几天没更新,收录减了好多啊

May 5th, 2009

五一回了一趟家,回来之后发现google收录减了不少,从四千多一下减到将近三千。减少了一千多。

似乎是翻译的语种的页面减少的最多。alexa排名倒是有上升,从18万升到15万。PR不变,当然PR一时半会儿还更新不了。再次更新的时候,也得是几个月以后的事儿了。

看来这以后还真得是经常更新。

最后再BS一下百度,才收了我五百多篇,而且是常年不更新那种的收录。CD玩艺儿。

心情随笔

php判断字符是否为UTF8

April 22nd, 2009

<?php
// Returns true if $string is valid UTF-8 and false otherwise.
function is_utf8($string) {
// From http://w3.org/International/questions/qa-forms-utf-8.html
return preg_match('%^(?:
[\x09\x0A\x0D\x20-\x7E] # ASCII
| [\xC2-\xDF][\x80-\xBF] # non-overlong 2-byte
| \xE0[\xA0-\xBF][\x80-\xBF] # excluding overlongs
| [\xE1-\xEC\xEE\xEF][\x80-\xBF]{2} # straight 3-byte
| \xED[\x80-\x9F][\x80-\xBF] # excluding surrogates
| \xF0[\x90-\xBF][\x80-\xBF]{2} # planes 1-3
| [\xF1-\xF3][\x80-\xBF]{3} # planes 4-15
| \xF4[\x80-\x8F][\x80-\xBF]{2} # plane 16
)*$%xs', $string);
} // function is_utf8
?>

 

$field =~
  m/\A(
     [\x09\x0A\x0D\x20-\x7E]            # ASCII
   | [\xC2-\xDF][\x80-\xBF]             # non-overlong 2-byte
   |  \xE0[\xA0-\xBF][\x80-\xBF]        # excluding overlongs
   | [\xE1-\xEC\xEE\xEF][\x80-\xBF]{2}  # straight 3-byte
   |  \xED[\x80-\x9F][\x80-\xBF]        # excluding surrogates
   |  \xF0[\x90-\xBF][\x80-\xBF]{2}     # planes 1-3
   | [\xF1-\xF3][\x80-\xBF]{3}          # planes 4-15
   |  \xF4[\x80-\x8F][\x80-\xBF]{2}     # plane 16
  )*\z/x;

PHP&MYSQL

版本向量 使用css时正确区分IE版本

April 22nd, 2009

Windows Internet Explorer Web Windows Internet Explorer 8 版本向量是指的内部版本号,它存储在浏览器启动时读取的注册表项中。开发人员可以使用版本向量检测查看器正在使用哪个版本的浏览器查看网站。了解浏览器检测的最佳实践,可确保在客户端查看网站时,该网站继续按预期方式运行。

Windows Internet Explorer Web 此文档将介绍如何使用版本向量的值。此外,还提供一些示例代码,帮助开发人员实现和维护建议的浏览器检测方法。

Windows Internet Explorer 如何使用版本向量

->Windows Internet Explorer HTML Windows Internet Explorer 除在填充“帮助”“关于”部分时使用版本向量外,在处理条件注释时也使用此值。条件注释是页面的源代码中的注释块,只能由解释。注释可能包含一个或多个运算符、特征值或值。

Read more…

Web design