`
文章列表
MYSQL中的decimal(M,D),最多保存M+2个字节(因为考虑到符号 如负号"-"和小数点"."号的占位因素),如果是负数,则"-"号占一位, 如果 是正数,则因为+号不用显式的写上,所以MYSQL会把它加到字符串的位数上.见下例 decimal(5,2)最大为-999.99~9999.99,        5+2=7,所以总位数是7(包括符号)   因为decimal是以字符的形式存放的,所以它避免了float和double的精度不准问题(如四舍五入),非常适合于银行信用卡之类的金额数据. 另:decimal和nu ...
<?php /** * 各种排序 * @author zhaojaingwei * @since 2011/11/21 16:14 * */ $list = array(3,5,1,2,10,8,15,19,20); //快排 function fast(&$list, $low, $high){ if($high - $low > 5){ while($low < $high){ $key = excute($list, $low, $high); fa ...
原文地址:http://www.codinglabs.org/html/theory-of-mysql-index.html#nav-2 摘要 本文以MySQL数据库为研究对象,讨论与数据库索引相关的一些话题。特别需要说明的是,MySQL支持诸多存储引擎,而各种存储引擎对索引的支持 也各不相同,因此MySQL数据库支持多种索引类型,如BTree索引,哈希索引,全文索引等等。为了避免混乱,本文将只关注于BTree索引,因为这是 平常使用MySQL时主要打交道的索引,至于哈希索引和全文索引本文暂不讨论。 文章主要内容分为三个部分。 第一部分主要从数据结构及算法理论层面讨论MySQL ...
<?php require 'bstOrder.php'; $test = range(1, 10); //$test = array(3,9,1,4,8,5,7,6,2,10); $tree = new Bst($test, true); //$tree->deleteNode('30');(非平衡树可删除,平衡树的没写删除操作) print_r($tree->getTree()); ?> bstOrder.php <?php /** * PHP实现二叉排序树 ...

PHP引用陷阱

    博客分类:
  • php
1.  $a = '333';     $c = &$a;     $d = '888';     $c = &$d;     echo $c;     echo $a; 2. $a = '333';     $c = &$a;     $d = '888';     $c = $d;     echo $c;     echo $a; 其中第四行$c = $d和$c = &$d,导致的结果完全不一样. $c = $d,因为$c是$a的一个引用,所以$c和$a的值都会变成888, 但是$c = &$d,是$c变成了$d的引用了,和$a已经没有关系了,所 ...
<?php require 'edge.php'; $a = array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'); $b = array('ab'=>'10', 'af'=>'11', 'gb'=>'16', 'fg'=>'17', 'bc'=>'18', 'bi'=>'12', 'ci'=>'8', 'cd'=>'22', 'di'=>'21', 'dg'=>'24', 'gh'=>'19', 'dh'=>'16', 'de'=>' ...
<?php require 'mGraph.php'; $a = array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'); $b = array('ab'=>'10', 'af'=>'11', 'bg'=>'16', 'fg'=>'17', 'bc'=>'18', 'bi'=>'12', 'ci'=>'8', 'cd'=>'22', 'di'=>'21', 'dg'=>'24', 'gh'=>'19', 'dh'=>'16', 'de'=> ...
<?php //调用 require 'alGraph.php'; $a = array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j'); $e = array('ab'=>'3', 'ac'=>'4', 'be'=>'6', 'bd'=>'5', 'cd'=>'8', 'cf'=>'7', 'de'=>'3', 'eg'=>'9', 'eh'=>'4', 'fh'=>'6', 'gj'=>'2', 'hi'=>'5', ' ...
<?php require 'biTree.php'; $str = 'ko#be8#tr####acy#####'; $tree = new BiTree($str); $tree->createThreadTree(); echo $tree->threadList() . "\n";从第一个结点开始遍历线索二叉树 echo $tree->threadListReserv();从最后一个结点开始反向遍历 ?> biTree.php <? ...
在学习PHP的时候,经常遇到各种错误提示,今天看到这错误提示和解释感觉挺好,现转过来,供我们学习。呵呵。。。。。 1、Notice: Undefined variable:  变量名 in 注:使用了一个没有被定义的变量 2、Parse error: syntax error, unexpected T_ELSE in  If () { }Else if () { } Echo $test; Else { } 注:是 if else if  else 句式错误 3、Parse error: syntax error, unexpected $end in D 注:一般是大括号不匹配 4、Pa ...
<?php     /**      * KMP算法的PHP实现      *      * @author zhaojiangwei 2011/10/22 10:28      */     class KMP{         private $next = NULL; //模式串T的next数组         private $t = NULL; //模式串         private $str = NULL; //主串         public function KMP($str){             $this->str = str_split($str ...
a - "am" 或是 "pm" A - "AM" 或是 "PM" d - 几日,二位数字,若不足二位则前面补零; 如: "01" 至 "31" D - 星期几,三个英文字母; 如: "Fri" F - 月份,英文全名; 如: "January" h - 12 小时制的小时; 如: "01" 至 "12" H - 24 小时制的小时; 如: "00" 至 "23&quo ...

php unset()详解

    博客分类:
  • php
1.如果有多个变量名指向某一个变量值,unset任何一个变量名只是断开变量名和变量值之间的关系,不会释放内存,该值还存在    (例外见2). 2.两种情况会释放内存,否则内存中该变量值还存在.    a)该变量值占用空间超过256字节的时候用unset()才会释放内存(这是有人的测试结果,待解释)    b)当指向该值的所有变量(比如有引用变量指向该值)都被销毁后 3.如果想释放变量内存,最好用$a=NULL释放,当赋于NULL值时,该地址被释放,所有指向该变量值的引用都为空了 4.当在局部环境unset全局变量时,该全局变量只是在局部作用域失效.在其他地方不变
1.function test($arr){}    echo test(&$arr); 2.function test(&$arr){}    echo test($arr);   1和2是一样的效果. 3.function &test($arr){return $result;}    echo &test($a);有效    echo test($a);返回的是值,不是引用    总结:只有定义方法时在方法名前加&和调用方法时在方法名前同时加上&时才返回引用. 4.$a=$b;    当$a与$b都不重新赋值时,即不发生写操作时,与$a= ...
1.在插入数据时两者的意义基本一样.区别只在于addslashes     在magic_quotes_sybase=on时将“ '”转换成“ ' '”     在magic_quotes_sybase=off时将“ '”转换成“\ '” 而mysql_escape_string总是将“ '”转换成“\ '” 2.mysql_escape_string在php6中将被抛弃,所以最好避免用它.    而且最好用面向对象的mysqli::real_escape_string,    如果非要用面向过程的话可以用mysql_real_escape_string
Global site tag (gtag.js) - Google Analytics