随笔分类 - php基础
php基础知识
摘要:1. 下载php5.6.17版本;编译安装, ./configure --prefix=/usr/local/php5.6 --with-config-file-path=/usr/local/php5.6/etc --with-mysql=/usr/local/mysql --with-mysql...
阅读全文
摘要:转自 知乎 的 一个回答首先,CGI是干嘛的?CGI是为了保证web server传递过来的数据是标准格式的,方便CGI程序的编写者。web server(比如说nginx)只是内容的分发者。比如,如果请求/index.html,那么web server会去文件系统中找到这个文件,发送给浏览器,这里...
阅读全文
摘要:PHP判断ajax请求的原理:在发送ajax请求的时候,我们可以通过XMLHttpRequest这个对象,创建自定义的 header头信息,在jquery框架中,对于通过它的$.ajax, $.get, or $.post方法请求网页内容时,它会向服务器传递一个HTTP_X_REQUESTED_WI...
阅读全文
摘要:\n//这里是直接定义一个匿名函数进行传递, 在以往的版本中, 这是不可用的.//现在, 这种语法非常舒服, 和javascript语法基本一致, 之所以说基本呢, 需要继续向下看//结论: 一个舒服的语法必然会受欢迎的.callback(function() { print "This is...
阅读全文
摘要:1111 ,'item_id' => 1, 'pro_id' => 1, 'pro_name' => 1111 ,'buy_num' => 5),Array ( 'order_id' => 1111 ,'item_id' => 2 ,'pro_id' => 2 ,'pro_name' => 222...
阅读全文
摘要:total_rows == 0 OR $this->per_page == 0) { return ''; } // Calculate the total number of pages $num_pages = ceil($this->total_rows / ...
阅读全文
摘要:一、先看最简单的情况。有两个数组:$arr1 = array(1,9,5);$arr2 = array(6,2,4);array_multisort($arr1,$arr2);print_r($arr1); // 得到的顺序是1,5,9print_r($arr2); // 得到的顺序是6,4,2我估...
阅读全文
摘要:allow_types = explode('|',$types); $this->maxsize = $maxsize * 1024; $this->field = $field; $this->time = $time?$time:time(); } /** * 设置图片存放路径 * @param $basedir 图片保存路径 * @param $filedir 图片保存子目录 */ function set_dir($basedir,$filedir='') { ...
阅读全文
摘要:许多人都说 算法是程序的核心,一个程序的好于差,关键是这个程序算法的优劣。作为一个初级phper,虽然很少接触到算法方面的东西 。但是对于冒泡排序,插入排序,选择排序,快速排序四种基本算法,我想还是要掌握的。下面是我按自己的理解,将四个方法分析一遍。需求:分别用 冒泡排序法,快速排序法,选择排序法,插入排序法将下面数组中 的值按照从小到的顺序进行排序。 $arr(1,43,54,62,21,66,32,78,36,76,39);1. 冒泡排序法 * 思路分析:法如其名,就是像冒泡一样,每次从数组当中 冒一个最大的数出来。 * 比如:2,4,1 // 第一次 冒出的泡是4 * ...
阅读全文
摘要:* @copyright 2009 phpSysInfo * @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License * @version SVN: $Id: class.Webpage.inc.php 412 2010-12-29 09:45:53Z Jacky672 $ * @link http://phpsysinfo.sourceforge.net */ /** * generate the dynamic webpage * * @categor...
阅读全文
摘要:1.利用COOKIE存放session_id();实例:域名一文件php代码:域名二文件php代码:2.利用php.ini 的session.cookie_domain备注:这里是用php代码实现不需要修改php.ini的配置文件;如果有需要你可以在php.ini里面修改配置文件(该情况下就不需要改段代码:ini_set("session.cookie_domain",'session.com');)实例:域名一文件php代码:域名二文件php代码:后期遇到问题需要特别说明哈,嘿嘿!第一:ini_set("session.cookie_domain
阅读全文
摘要:letters=range('A','Z',1); $this->php_excel=new PHPExcel(); $this->php_excel->setActiveSheetIndex(0); $this->active_sheet=$this->php_excel->getActiveSheet(); $this->export_excel_title=$export_excel_title; $this->export_sheet_title=$export_sheet_title; } /* * $t
阅读全文
摘要:echo date("Ymd",strtotime("now")), "\n"; echo date("Ymd",strtotime("-1 week Monday")), "\n"; echo date("Ymd",strtotime("-1 week Sunday")), "\n"; echo date("Ymd",strtotime("+0 week Monday")),
阅读全文
摘要:<?php/* 复制目录*/function copydir($dirsrc,$dirto){ if(is_file($dirto)){ echo "目标不是目录不能创建"; return; } if(!$file_exists($dirto)) { mkdir($dirto); echo "创建目录".$dirto."成功"; } $dir = opendir($dirsrc); while($filename = readdir($dir)) { if...
阅读全文
摘要:一个小小的换行,其实在不同的平台有着不同的实现,为什么要这样,可以是世界是多样的。本来在unix世界换行就用/n来代替,但是windows为了体现他的不同,就用/r/n,更有意思的是在mac中用/r因此unix系列用 /nwindows系列用 /r/nmac用 /r这样就用你写的程序在不同的平台上运行有着不少的麻烦比如有的程序要把文件中的所有行都合成一行,这有不同的实现方式,第一种方式str_replace(array("/r","/n","/r/n"),"",$string);第二种方式就用正则表达示$str =
阅读全文
摘要:下边提到的几个数组函数的排序有一些共性: 1 数组被作为排序函数的参数,排序以后,数组本身就发生了改变,函数的返回值为bool类型。2 函数名中出现单a表示association,含义为,在按值排序的过程中,保持key=>value的对应关系不变3 函数名中出现单k表示key,含义为,在按值排序的过程中按照数组key而不是数组的值排序4 函数名中出现单r的表示reverse,含义为,按照跟不加r的相反的顺序排列5 函数名中出现单u的表示user-defined,含义为,使用用户自定义函数排序,如果函数的逻辑是参数1 结果: array0 => string 'apple
阅读全文
摘要:display();$obj = Singleton::getInstance();$obj1 = Singleton::getInstance();var_dump($obj === $obj1);
阅读全文
摘要:filter("一定要学好装饰模式");// --- 以下是使用装饰模式 ----// 定义装饰者类----// 引入被装饰殾对象---class MessageBoardDecorator extends MessageBoardHandler{ private $_handler = null; public function __construct($handler) { parent::__construct(); $this -> _handler = $handler; } public function ...
阅读全文
摘要:_observers as $obs){ $obs->onChanged($this,$name); $obs->sendMessage($this,$message); } //do something } // 执行观察者的方法 public function sendMessage($message){ foreach ($this->_observers as $obs) { $obs->sendMessage($this,$message); } } //在被观察者 引入观察者 public function addObserver($obs...
阅读全文
摘要:数据库缓存数据库缓存类允许你把数据库查询结果保存在文本文件中以减少数据库访问。激活缓存需要三步:在服务器上创建一个可写的目录以便保存缓存文件。在文件 application/config/database.php 中设置其目录。激活缓存特性,可以在文件 application/config/database.php 中设置全局选项,也可以用以本页下面的方法手动设置。一旦被激活,每一次含有数据库查询的页面被加载时缓存就会自动发生。当页面被浏览时CodeIgniter的查询缓存系统能够动态执行。如果缓存特性被激活,那么在此页面首次被加载时,数据库查询的结果对象将会被序列化并保存在你服务器的文本文件
阅读全文