Browsing all articles from 九月, 2008
28
2

自己修改的Discuz!的字符串截取函数,没有使用mb_string

Author Jessica     Category PHP, 收集整理     Tags
  1. function cutstr($string$length$dot = ' ...') {  
  2.     if (strlen ( $string ) <= $length) {  
  3.         return $string;  
  4.     }  
  5.       
  6.     $string = str_replace ( array ('&amp;''&quot;''&lt;''&gt;' ), array ('&''"''<''>' ), $string );  
  7.       
  8.     $strcut = '';  
  9.       
  10.     $n = $tn = $noc = 0;  
  11.     while ( $n < strlen ( $string ) ) {  
  12.           
  13.         $t = ord ( $string [$n] );  
  14.         if ($t == 9 || $t == 10 || (32 <= $t && $t <= 126)) {  
  15.             $tn = 1;  
  16.             $n ++;  
  17.             $noc ++;  
  18.         } elseif (194 <= $t && $t <= 223) {  
  19.             $tn = 2;  
  20.             $n += 2;  
  21.             $noc += 2;  
  22.         } elseif (224 <= $t && $t < 239) {  
  23.             $tn = 3;  
  24.             $n += 3;  
  25.             $noc += 2;  
  26.         } elseif (240 <= $t && $t <= 247) {  
  27.             $tn = 4;  
  28.             $n += 4;  
  29.             $noc += 2;  
  30.         } elseif (248 <= $t && $t <= 251) {  
  31.             $tn = 5;  
  32.             $n += 5;  
  33.             $noc += 2;  
  34.         } elseif ($t == 252 || $t == 253) {  
  35.             $tn = 6;  
  36.             $n += 6;  
  37.             $noc += 2;  
  38.         } else {  
  39.             $n ++;  
  40.         }  
  41.           
  42.         if ($noc >= $length) {  
  43.             break;  
  44.         }  
  45.       
  46.     }  
  47.     if ($noc > $length) {  
  48.         $n -= $tn;  
  49.     }  
  50.       
  51.     $strcut = substr ( $string, 0, $n );  
  52.     $strcut = str_replace ( array ('&''"''<''>' ), array ('&amp;''&quot;''&lt;''&gt;' ), $strcut );  
  53.       
  54.     return $strcut . $dot;  

 例子:

read more

28
1

我修改的一个后台登录模版,DIV+CSS布局.

Author Jessica     Category CSS     Tags ,

可能在不同的浏览器或者不同的分辨率下会有问题.

在我的机器上1024*800 IE7 FF2 Chrome下测试通过 

截图就不给了.直接给大家一个连接.非常cool.

本来他是表格做的.我觉得非常复杂.就改成了DIV+CSS.

顺便附上一个配合此页面的验证码.

废话不说,下面是预览地址:

http://www.Skiyo.cn/Demo/SkiyoLogin/

read more

12
1

Java中double类型计算不精确的解决办法(BigDecimal)

Author Jessica     Category Java     Tags ,

首先我们先用一般的情况进行下double类型的计算。

  1. System.out.println(1.0-0.41); 

得到的值是0.5900000000000001,这个是不精确的。
为了解决这个问题,Java为我们提供了一个叫BigDecimal的类。
所以我们用下面的方法计算。

  1. BigDecimal bd1 = new BigDecimal(1.0);  
  2. BigDecimal bd2 = new BigDecimal(0.41);  
  3. System.out.println(  
  4.   bd1.subtract(bd2).doubleValue()); 

我们又看到,这个值和上面得到的是一样的。也是不精确的,也许这就是Java的一个BUG吧。
但是我们换一种另外的方法解决。注意看注释。

read more

分类目录

最近文章

最近评论

文章索引模板

标签

.net AJAX button Comet CSS Discuz! DIV+CSS Flash Form Google HTML编辑器 IE8 Java JavaScript jQuery JSP md5 MySQLReback Oracle PHP php-fpm PNG Punny SkiyoTabs tab TagCloud Vista Web2.0 Windows7 上传 加密 变量 图标 本站原创 模板 模板引擎 源码 登录 短网址 石家庄 算法 编译 面向对象 魔术方法

链接表