01 2013 档案
摘要:近段时间接触短信平台机会比较多,想想好像客户方面的短信平台就是用PHP做出来的,心痒痒便找了一下资料学习一下,代码如下:<?PHP $flag = 0; //要post的数据 $argv = array( 'sn'=>'SDK-BBX-010-XXXXX', 'pwd'=>'XXXXXX', 'mobile'=>'134338XXXXX',//测试的手机号 'content'=>'你好吗,测试短信' ); //构造要post的字符串 fo
阅读全文
摘要:顾名思义,工厂是可以加工零件的,PHP程序中的工厂模式也有相同的功能,可以方便的使用一个静态的工厂方法来实例化某一个类,那么这样做的好处是什么呢?初学PHP的设计模式,以下是我个人的理解一般我们实例化一个类会给它一些参数以便在其构析的时候可以根据不同的参数反馈出我们需要的结果。举例说明,以下是一个User类,非常简单:<?phpinterfaceIUser{ functiongetName(); functiongetAge();}classUserimplementsIUser{ protected$_name; protected$_age; function__construct(
阅读全文
摘要:最初在设计模式一书中,许多设计模式都鼓励使用松散耦合。要理解这个概念,让我们最好谈一下许多开发人员从事大型系统的艰苦历程。在更改一个代码片段时,就会发生问题,系统其他部分 —— 您曾认为完全不相关的部分中也有可能出现级联破坏。该问题在于紧密耦合 。系统某个部分中的函数和类严重依赖于系统的其他部分中函数和类的行为和结构。您需要一组模式,使这些类能够相互通信,但不希望将它们紧密绑定在一起,以避免出现联锁。在大型系统中,许多代码依赖于少数几个关键类。需要更改这些类时,可能会出现困难。例如,假设您有一个从文件读取的 User 类。您希望将其更改为从数据库读取的其他类,但是,所有的代码都引用从文件读取的
阅读全文
摘要:在php中,访问类的方法/变量有两种方法: 1. 创建对象$object = new Class(),然后使用”->”调用:$object->attribute/function,前提是该变量/方法可访问。 2. 直接调用类方法/变量:class::attribute/function,无论是静态/非静态都可以。但是有前提条件: A. 如果是变量,需要该变量可访问。 B. 如果是方法,除了该方法可访问外,还需要满足: b1) 如果是静态方法,没有特殊条件; b2) 如果是非静态方法,需要改方法中没有使用$this,即没有调用非静态的变量/方法,当然,调用静态的变量/方法没有问题。
阅读全文
摘要:php的魔术函数和魔术常量2008-05-29 17:27 by Jaypei, 729 阅读,1评论,收藏,编辑php5魔术函数、魔术常量魔术函数1。__construct()实例化对象时被调用,当__construct和以类名为函数名的函数同时存在时,__construct将被调用,另一个不被调用。2。__destruct()当删除一个对象或对象操作终止时被调用。3。__call()对象调用某个方法,若方法存在,则直接调用;若不存在,则会去调用__call函数。4。__get()读取一个对象的属性时,若属性存在,则直接返回属性值;若不存在,则会调用__get函数。5。__set()设置一个
阅读全文
摘要:首先我们要知道明确单例模式这个概念,那么什么是单例模式呢? 单例模式顾名思义,就是只有一个实例。 作为对象的创建模式, 单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例, 这个类我们称之为单例类。 单例模式的要点有三个: 一是某个类只能有一个实例; 二是它必须自行创建这个实例; 三是它必须自行向整个系统提供这个实例。 下面我们讨论下为什么要使用PHP单例模式? 多数 人都是从单例模式的字面上的意思来理解它的用途, 认为这是对系统资源的节省, 可以避免重复实例化, 是一种”计划生育”. 而PHP每次执行完页面都是会从内存中清理掉所有的资源. 因而PHP中的单例实际每次运.
阅读全文
摘要:PHP分页器制作,自动生成分面页码,JS调用函数<?phpclass PageView{ /**页码**/ public $pageNo = 1; /**页大小**/ public $pageSize = 20; /**共多少页**/ public $pageCount = 0; /**总记录数**/ public $totalNum = 0; /**偏移量,当前页起始行**/ public $offSet = 0; /**每页数据**/ public $pageData = array(); /**是否有上...
阅读全文
摘要:phpExcel,操作excel很方便,尤其是可以方便的加入图片,支持jpg gif png格式。下载地址:http://www.codeplex.com/PHPExcel下面是总结的几个使用方法 include ‘PHPExcel.php’; include ‘PHPExcel/Writer/Excel2007.php’; //或者include ‘PHPExcel/Writer/Excel5.php’; 用于输出.xls的 创建一个excel $objPHPExcel = new PHPExcel(); 保存excel—2007格式 $objWriter = new PHPExcel_Wr
阅读全文
摘要:1. 截取GB2312中文字符串 <?php < ?php //截取中文字符串 function mysubstr($str, $start, $len) { $tmpstr = ""; $strlen = $start + $len; for($i = 0; $i < $strlen; $i++) { if(ord(substr($str, $i, 1)) > 0xa0) { $tmpstr .= substr($str, $i, 2); $i++; } else $tmpstr .= substr($str, $i, 1); } return $
阅读全文
摘要:如果数据表tbl的某字段name的字符编码是latin1_swedish_ciselect * from `tbl` order by birary(name) asc ;如果数据表tbl的某字段name的字符编码是utf8_general_ciSELECT name FROM `tbl` WHERE 1 ORDER BY CONVERT( name USING gbk ) COLLATE gbk_chinese_ci ASC===================$orderby="convert(`group` USING gbk) COLLATE gbk_chinese_ci,d
阅读全文
摘要:在 PHP开发过程中,如果希望从外部引入一个class,通常会使用include和require方法,去把定义这个class的文件包含进来。这个在小 规模开发的时候,没什么大问题。但在大型的开发项目中,这么做会产生大量的require或者include方法调用,这样不因降低效率,而且使得代码难 以维...
阅读全文
摘要:Snoopy类是一个非常好用的网络访问类,它可以模拟浏览器的HTTP请求,做你想做的事情。现在让我们看一个简单的例子:12345678910<?php$url='http://hi.baidu.com/phphack';include'snoopy.php';$snoopy=new Snoopy();$snoopy->fetch($url);//获取所有内容echo$snoopy->results;//显示结果 // 可选以下$snoopy->fetchtext($url);//获取文本内容(去掉html代 码)$snoopy->f
阅读全文
摘要:解释性语言的程序不需要编译,省了道工序,解释性语言在运行程序的时候才翻译,比如解释性basic/Java语言,专门有一个解释器能够直接执行basic/Java程序,每个语句都是执行的时候才翻译。这样解释性语言每执行一次就要翻译一次,效率比较低,解释时是一句一句的翻译。 如Java的运行过程:Java源代码文件(.java文件)--->Java编译器(javac)将Java源代码文件(.java文件)Java字节码文件(.class文件,平台无关的),再通过Java解释器(java),执行Java字节码,转化为计算机可识别的语言。 编译型语言写的程序执行之前,需要一个专门的编译过程,把程序
阅读全文
摘要:1. 按位与运算 按位与运算符"&"是双目运算符。其功能是参与运算的两数各对应的二进位相与。只有对应的两个二进位均为1时,结果位才为1 ,否则为0。参与运算的数以补码方式出现。 例如:9&5可写算式如下: 00001001 (9的二进制补码)&00000101 (5的二进制补码) 00000001 (1的二进制补码)可见9&5=1。 按位与运算通常用来对某些位清0或保留某些位。例如把a 的高八位清 0 , 保留低八位, 可作 a&255 运算 ( 255 的二进制数为0000000011111111)。 应用: a. 清零特定位 (m
阅读全文
摘要:如果你不知道什么是位运算的话, 那么请你先去看看基础的C语言教程吧。 与运算 a & b , 或运算 a | b , 异或运算 a ^ b , 或者 你也可以将 与运算理解为 + 法 例如 1|2 = 3 (1+2 = 3) 1|2|4 = 7 (1+2+4 = 7) 将 异或运算理解为 - 法 例如 3^2 = 1 (3-2 = 1) 3^1 = 2 (3-1 = 2) 最后将 与运算 作为判断 例如 3&2 = 1 (3 = 1 + 2, 由 1和2组成 ,所以判断3&2 = 1 ) 3&4 = 0 ( 3 没有由 4组成,所以判断3&4 = 0)
阅读全文
摘要:CREATETABLEt1(yearYEAR(4),monthINT(2)UNSIGNEDZEROFILL,dayINT(2)UNSIGNEDZEROFILL);INSERTINTOt1VALUES(2000,1,1),(2000,1,20),(2000,1,30),(2000,2,2),(2000,2,3),(2000,2,3);示例表中含有代表用户访问网页的年-月-日值。可以使用以下查询来确定每个月的访问天数:SELECTyear,month,BIT_COUNT(BIT_OR(1<<day))ASdaysFROMt1GROUPBYyear,month;将返回:+------+-
阅读全文
摘要:<?php$data[] = array('volume' => 67, 'edition' => 2);$data[] = array('volume' => 86, 'edition' => 1);$data[] = array('volume' => 85, 'edition' => 6);$data[] = array('volume' => 98, 'edition' => 2);$data[] = ar
阅读全文
摘要:有时用yum升级一些文件时,会出现以下情况:another app is currently holding the yum lock;waiting for it to exit...可以通过强制关掉yum进程:#rm -f /var/run/yum.pid然后就可以使用yum了。
阅读全文
摘要:注意:操作之前可能需要先清除已安装的apache和mysql开始介绍如何在 CentOS 6.0 上安装 LAMP 组件。经过如下语句安装,目前安装到的版本为:PHP:5.3.2Apache:2.2.15MySQL:5.1.52一、安装 MySQL首先来进行 MySQL 的安装。打开超级终端,输入:[root@localhost ~]# yum install mysql mysql-server安装完毕,让 MySQL 能够随系统自动启动:[root@localhost ~]# chkconfig --levels 235 mysqld on[root@localhost ~]# /etc/
阅读全文
摘要:Ⅰ、基本概念一、入口文件入口文件内容:一般格式如下:<?php$yii=dirname(__FILE__).'/http://www.cnblogs.com/framework/yii.php';//Yii框架位置$config=dirname(__FILE__).'/protected/config/main.php';//当前应用程序的主配置文件位置// 部署正式环境时,去掉下面这行// defined('YII_DEBUG') ordefine('YII_DEBUG',true);//是否运行在调试模式下require
阅读全文
摘要:opener即谁打开我的,比如A页面利用window.open弹出了B页面窗口,那么A页面所在窗口就是B页面的opener,在B页面通过opener对象可以访问A页面。parent表示父窗口,比如一个A页面利用iframe或frame调用B页面,那么A页面所在窗口就是B页面的parent。在JS 中,window.opener只是对弹出窗口的母窗口的一个引用。比如:a.html中,通过点击按钮等方式window.open出一个新的窗口 b.html。那么在b.html中,就可以通过window.opener(省略写为opener)来引用a.html,包括a.html的 document等对象,
阅读全文
摘要:这几天在帮一些同学处理问题的时候,突然发现这些同学是使用file_get_contents()函数来采集页面内容的,貌似都没有curl的概念亦或是对这种工具特别不敏感,本文我来给大家详细介绍下cURL的简单的使用方法,下文我将会给大家详细介绍cURL的高级应用,好,废话不多说,我们先来认识下什么是cURL,可能还有很多同学没有听说过这个工具,我先来给大家简单介绍下什么是cURL:cURL可以使用URL的语法模拟浏览器来传输数据,因为它是模拟浏览器,因此它同样支持多种协议,FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE 以及 LDAP等协议都
阅读全文