随笔分类 -  PHP/THINKPHP

摘要:在配置文件中,一般会用以下配置: 'db_oracle'=>array( 'class' => 'CDbConnection', 'connectionString'=>'oci:dbname=服务器地址/服务名', '... 阅读全文
posted @ 2014-07-23 18:43 Michael Zhang x 阅读(1029) 评论(0) 推荐(0) 编辑
摘要:// echo '"; exit;//自动完成的代码是:fcom+tab键 阅读全文
posted @ 2014-07-15 14:58 Michael Zhang x 阅读(1161) 评论(1) 推荐(0) 编辑
摘要:/****config.php***//******************/ignore_user_abort();//关掉浏览器,PHP脚本也可以继续执行.set_time_limit(0);// 通过set_time_limit(0)可以让程序无限制的执行下去$interval=60*30;/... 阅读全文
posted @ 2014-06-13 13:40 Michael Zhang x 阅读(444) 评论(0) 推荐(0) 编辑
摘要:插件,亦即Plug-in,是指一类特定的功能模块(通常由第三方开发者实现) 它的特点: 1. 随时安装、卸载、激活、禁用 2. 无论什么状态都不影响系统核心模块的运行, 3. 是一种非侵入式的模块化设计,实现了核心程序与插件程序的松散耦合。 一个健壮的PHP插件机制,我认为必须具备以下特点: 1. 插件的动态监听和加载(Lookup) 2. 插件的动态触发 以上两点的PHP插件机制实现均不影响核心程序的运行 钩子(Hooks) 要在程序中实现插件,我们首先应该想到的就是定义不同的钩子(Hooks);“钩子”是一个很形象的逻辑概念,你可以认为它是系统预留的插件触... 阅读全文
posted @ 2013-09-03 15:40 Michael Zhang x 阅读(1300) 评论(0) 推荐(0) 编辑
摘要:最近在做单点登录,需要session由sso的client生成。所以研究了下RBAC的类的代码。有了这两个seesion就可以用rbac进行权限验证$_SESSION[C('ADMIN_AUTH_KEY')] 判断是否是管理员$_SESSION[C('USER_AUTH_KEY')] 表示用户的id 阅读全文
posted @ 2013-09-03 01:35 Michael Zhang x 阅读(201) 评论(0) 推荐(0) 编辑
摘要:用.NET的webservice做调试很轻松。用soapserver的try和cacth获取不了多少信息 阅读全文
posted @ 2013-08-28 23:53 Michael Zhang x 阅读(226) 评论(0) 推荐(0) 编辑
摘要:try { import('@.Ext.xml'); header("Content-Type:text/html; charset=utf-8"); $soap = new SoapClient('http://localhost/index.php/Api/index?wsdl'); $usr = $_POST['usr']; $psw = $_POST['psw']; $ret = $soap->userLogin($usr, $psw); ... 阅读全文
posted @ 2013-08-28 16:46 Michael Zhang x 阅读(201) 评论(0) 推荐(0) 编辑
摘要:简单的记录下现在使用git的时候,暂时或者常用到的命令,纯粹自己备忘,没用到过的命令就不写了,日后有用到了在补充。1、把远程仓库克隆到本地:git clone 远程地址2、分支操作新建分支:git banch 分支名删除分支:git barnch -d 分支名切换分支:git checkout 分支名3、把远程仓库更新到本地:git push4、把本地仓库推送到远程仓库:git pull5、复位(回滚)git reset --hard:将最近一次提交回滚(在没有commit的时候,想还原代码可以用这个,这个已经用过了。下面两个备用暂时还没用到)git reset --hard commit-i 阅读全文
posted @ 2013-06-26 20:47 Michael Zhang x 阅读(297) 评论(0) 推荐(0) 编辑
摘要:本来的话在在httpd.ini或者.htaccess文件里面做下就行了。但是肯定的服务器供应商那边的装的是isapi_rewrite1.0的版本,我彻底无奈了。导致的问题就是表面上301重定向是成的,但是它返回的状态代码居然是302.无奈之下只好用php。这里有个问题,因为我用了重写所以,域名后面的路径及地址,变成了一个参数。我的网站使用thinkphp写的。301重定向代码如下:$currentdomain= $_SERVER['HTTP_HOST']; //获取域名或主机地址$ssss = $_GET['s'];If ($currentdomain!=&qu 阅读全文
posted @ 2013-06-04 14:38 Michael Zhang x 阅读(227) 评论(0) 推荐(0) 编辑
摘要:ISAPI_Rewrite的一些参数:# I 忽略大小写# RP 使用301转向 整个域名重定向# O 表示对URL进行标准化# L Last Rule 防止被其他匹配的规则再次重写如:RewriteCond Host: ^iseeyou\.cn$RewriteRule (.*) http\://www\.iseeyou\.cn$1 [I,RP] 阅读全文
posted @ 2013-05-15 11:11 Michael Zhang x 阅读(218) 评论(0) 推荐(0) 编辑
摘要:这段时间在做一个项目,有一个下载模块。通过一个php文件为中介,实现下载权限控制,隐藏真实地址。header('Content-Disposition: attachment; filename="' . $showname . '.'.$filetype.'"');在这里定义了,附件,文件名。但是下载的生活在FF,webkit浏览器下均正常,但是在IE下面不正常。在网上找了很久。后来发现源码里面已经带了,但是自己没有发现。故特此记录下。在这里学习到一个新的函数rawurlencode ,至于这个跟urlencode有什么区别 阅读全文
posted @ 2012-09-15 10:40 Michael Zhang x 阅读(521) 评论(0) 推荐(0) 编辑
摘要:正常安装的NetBeans在打开UTF-8编码的文件时,会提示“NetBeans无法使用编码GBK安全地打开该文件”,点击“是”强制打开后,中文会变成乱码。上述问题可以通过如下方式解决:用文本编辑器打开NetBeans安装目录下etc\netbeans.conf文件,找到”netbeans_default_options=”字段,在后面添加” -J-Dfile.encoding=UTF-8″。将# command line switches:netbeans_default_options="-J-client -J-Xss2m -J-Xms32m -J-XX:PermSize=32 阅读全文
posted @ 2012-09-15 09:06 Michael Zhang x 阅读(1284) 评论(0) 推荐(0) 编辑
摘要:在网站根目录下的子目录/data中找到文件config.inc.php,打开它,找到类似以下代码:define('UC_FOUNDERPW','256955f2e034sad74f0e2953572ea360');define('UC_FOUNDERSALT','217804');然后用以下代码替换上述代码:define('UC_FOUNDERPW','047099adb883dc19616dae0ef2adc5b6');define('UC_FOUNDERSALT','31 阅读全文
posted @ 2012-09-12 12:14 Michael Zhang x 阅读(326) 评论(0) 推荐(0) 编辑
摘要:foreach(range('a','z') as $letter){ echo$letter;} 阅读全文
posted @ 2012-08-27 16:08 Michael Zhang x 阅读(273) 评论(0) 推荐(0) 编辑
摘要:今天写下php中,如何通过各种方法 获取当前系统时间、时间戳,并备注各种格式的含义,可灵活变通。1、获取当前时间方法date()很简单,这就是获取时间的方法,格式为:date($format, $timestamp),format为格式、timestamp为时间戳--可填参数。2、获取时间戳方法time()、strtotime()这两个方法,都可以获取php中unix时间戳,time()为直接获取得到,strtotime($time, $now)为将时间格式转为时间戳,$time为必填。清楚了这个,想了解更多,请继续往下看。3、 date($format)用法比如:echo date(' 阅读全文
posted @ 2012-07-24 23:56 Michael Zhang x 阅读(18280) 评论(0) 推荐(0) 编辑
摘要:php保留两位小数并且四舍五入Php代码$num=123213.666666;echosprintf("%.2f",$num);php保留两位小数并且不四舍五入Php代码$num=123213.666666;echosprintf("%.2f",substr(sprintf("%.3f",$num),0,-2));另外有个方法感觉更好,更直观$a=floor(3.149569*100)/100php进一法取整Php代码echoceil(4.3);//5echoceil(9.999);//10php舍去法,取整数Php代码echoflo 阅读全文
posted @ 2012-07-24 23:55 Michael Zhang x 阅读(1615) 评论(0) 推荐(0) 编辑
摘要:PHP优化对于PHP的优化主要是对php.ini中的相关主要参数进行合理调整和设置,以下我们就来看看php.ini中的一些对性能影响较大的参数应该如何设置。# vi /etc/php.ini(1) PHP函数禁用找到:disable_functions =该选项可以设置哪些PHP函数是禁止使用的,PHP中有一些函数的风险性还是相当大的,可以直接执行一些系统级脚本命令,如果允许这些函数执行,当PHP程序出现漏洞时,损失是非常严重的!以下我们给出推荐的禁用函数设置:disable_functions = phpinfo,passthru,exec,system,popen,chroot,escap 阅读全文
posted @ 2012-07-24 08:54 Michael Zhang x 阅读(172) 评论(0) 推荐(0) 编辑
摘要:首先MYSQL里有个命令SHOW VARIABLES LIKE 'character%';执行以后Variable_nameValuecharacter_set_clientutf8character_set_connectionutf8character_set_databaseutf8character_set_filesystembinarycharacter_set_resultsutf8character_set_serverutf8character_set_systemutf8character_sets_dirF:\\APMServ5.2.6\\MySQL5.1 阅读全文
posted @ 2012-06-03 21:59 Michael Zhang x 阅读(256) 评论(0) 推荐(0) 编辑
摘要:PHP是弱类型语言,所以其它类型的数据一般可以直接应用于字符串操作函数里,而自动转换成字符串类型,进行处理,如:PHP:[Copy to clipboard]echosubstr("1234567",1,3); 和 PHP:[Copy to clipboard]echosubstr(123456,1,3); 是一样的 定义 一般用双引号或单引号标识一个字符串。比如 PHP:[Copy to clipboard]$str="iloveu";$str='iloveu'; 它者两者是有一些区别的。后者将一切单引号的内容都会当作字符处理;前者则不 阅读全文
posted @ 2012-05-30 09:03 Michael Zhang x 阅读(224) 评论(0) 推荐(0) 编辑
摘要:thinkPHP框架开发的应用程序,一般都采用单一入口的方式,下面是在应用首页文件中实现的定义:在首页定义thinkPHP框架路径定义项目名称及路径,一般项目名称与项目文件夹名称保持一致加载框架入口文件ThinkPHP.php对网站进行实例化:App::run(); 以上说明基本上就算是完成了首页index.php文件的定义实现。常用公共路径定义../Public //项目公共目录__PUBLIC__ //网站公共目录__ROOT__ //网站根目录__TMPL__ //当前模板目录__APP__ //当前项目地址__URL__ ... 阅读全文
posted @ 2012-05-30 00:08 Michael Zhang x 阅读(1154) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示