01 2016 档案
摘要:如果你不使用 CodeIgniter 的 模板引擎, 那么你就只能在视图文件中使用纯 PHP 语法了。为了精简视图文件, 使其更可读,建议你在写控制结构或 echo 语句时使用 PHP 的替代语法。 如果你还不熟悉这个语法,下面将介绍如何通过这个语法来消灭你代码 中的大括号和 echo 语句。 自动
阅读全文
摘要:开发者常常希望当系统运行在开发环境或生产环境中时能有不同的行为, 例如,在开发环境如果程序能输出详细的错误信息将非常有用,但是在 生产环境这将造成一些安全问题。 ENVIRONMENT 常量 CodeIgniter 默认使用 $_SERVER['CI_ENV'] 的值作为 ENVIRONMENT 常
阅读全文
摘要:什么是CLI: CLI (命令行界面)是一种基于文本的和计算机交互的方式。 更多信息, 请查看 维基百科 。 为什么使用CLI? 虽然不是很明显,但是有很多情况下我们需要使用命令行来运行 CodeIgniter。 使用 cron 定时运行任务,而不需要使用 wget 或 curl 通过函数 is_c
阅读全文
摘要:CodeIgniter 可以让你通过缓存页面来达到更好的性能。 尽管 CodeIgniter 已经相当高效了,但是网页中的动态内容、主机的内存 CPU 和数据库读取速度等因素直接影响了网页的加载速度。 依靠网页缓存, 你的网页可以达到近乎静态网页的加载速度,因为程序的输出结果 已经保存下来了。 缓存
阅读全文
摘要:一般情况下,一个 URL 字符串和它对应的控制器中类和方法是一一对应的关系。 URL 中的每一段通常遵循下面的规则:example.com/class/function/id/ 但是有时候,你可能想改变这种映射关系,调用一个不同的类和方法,而不是 URL 中对应的那样。 例如,假设你希望你的 URL
阅读全文
摘要:哈希算法是一个单向函数。它可以将任何大小的数据转化为定长的“指纹”,并且无法被反向计算 依赖性 crypt() 函数需支持 CRYPT_BLOWFISH 常量 PASSWORD_BCRYPT PASSWORD_DEFAULT 函数 1、string password_hash($password,
阅读全文
摘要:CodeIgniter 的"自动加载"特性可以允许系统每次运行时自动初始化类库、辅助函数和模型。 如果你需要在整个应用程序中全局使用某些资源,为方便起见可以考虑自动加载它们。支持自动加载的有下面这些: libraries/目录下的核心类 helpers/目录下的辅助函数 config/目录下的...
阅读全文
摘要:有些时候,你可能想在你的控制器之外新建一些类,但同时又希望 这些类还能访问 CodeIgniter 的资源任何在你的控制器方法中初始化的类都可以简单的通过get_instance()函数来访问 CodeIgniter 资源。这个函数返回一个 CodeIgniter 对象。通常来说,调用 CodeIg...
阅读全文
摘要:这个本来是很基础的东西,基本上用过CI的人都知道这些,原本是不消说的~但是因为毕业论文是关于CodeIgniter的,所以我必须把大大小小的东西都写出来做成记录~CodeInigter,一个轻量,功能全面的PHP框架,使开发者可以轻易的使用MVC的结构来开发web应用。下载一份CI的代码(最新的为2...
阅读全文
摘要:CI输出类Output.php的功能是将最终web页面发送给浏览器,这里面的东西可能是你用的最少的。你使用装载器加载了一个视图文件, 这个视图文件的内容会自动传递给输出类对象, 然后呢,在方法执行完毕后会自动调用输出类对象将执行的结果输出.值得注意的是这里面有评测器profiler和file cac...
阅读全文
摘要:class CI_Model { /** * Class constructor * * @return void */ public function __construct() { log_message('info', 'M...
阅读全文
摘要:顾名思义,装载器就是加载元素的,使用CI时,经常加载的有:加载类库文件:this->load->view()加载模型文件:this->load->database()加载帮助文件:$...
阅读全文
摘要:is_loaded, TRUE)) { return; } idiom == '') { $deft_lang = ( ! i...
阅读全文
摘要:class CI_Input { //用户ip地址 protected user_agent = FALSE; //允...
阅读全文
摘要:钩子 - 扩展框架核心CodeIgniter 的钩子特性提供了一种方法来修改框架的内部运作流程,而无需修改 核心文件。CodeIgniter 的运行遵循着一个特定的流程,你可以参考这个页面的应用程序流程图。但是,有些时候你可能希望在 执行流程中的某些阶段添加一些动作,例如在控制器加载之前或之后执行一...
阅读全文
摘要:使用CI框架,我们通常使用一下三个函数处理错误:show_error('消息' [, int $status_code = 500 ] )show_404('页面' [, 'log_error'])log_message('级别', '消息'),有一下三种错误信息:错误类型的消息。 这种是真正的错误...
阅读全文
摘要:application/config/config.php 文件config['index_page'] = "index.ph...
阅读全文
摘要:system/core/Common.php 文件中可以定义公共函数,我们可以在这里定义自己的公共函数。在任何情况下你都能够使用这些函数。使用他们不需要载入任何类库或辅助函数。接下来分析下该文件中自带的一些方法: 1 0)219 {220 foreach (k...
阅读全文
摘要:Benchmark.php文件中定义的CI_Benchmark类可以让你标记点,并计算它们之间的时间差。还可以显示内存消耗。Benchmarking类库,它是被系统自动被加载的,不需要手工加载 1 class CI_Benchmark { 2 3 /** 4 * List of ...
阅读全文
摘要:Config:该文件包含CI_Config类,这个类包含启用配置文件来管理的方法 1 /** 2 * 加载配置文件 3 * 4 * @param string $file 配置文件名 5 * @param bool ...
阅读全文
摘要:驱动器目录及文件结构下面是驱动器目录和文件结构布局的简单例子:/application/libraries/Driver_nameDriver_name.php //驱动器名称drivers //子目录Driver_name_subclass_1.p...
阅读全文
摘要:移除 URL 中的 index.php默认情况,你的 URL 中会包含index.php文件:example.com/index.php/news/article/my_article如果你的 Apache 服务器启用了mod_rewrite,你可以简单的通过一个 .htaccess 文件再加上一些...
阅读全文
摘要:当我们使用 “类库” 这个词的时候,通常我们指的是位于 libraries 这个目录下的那些类。接下来我们将介绍 如何在 application/libraries 目录下创建你自己的类库,和全局的框架类库独立开来。另外,如果你希望在现有的类库中添加某些额外功能,CodeIgniter 允许你扩展原...
阅读全文
摘要:memcache:分布式缓存机制使用场景:1.对数据的存储要求不高,就算丢失也关系不大(因为memcache是非持久化存储)2.不适合单机使用,即不适合将memcache和数据库等都放到同一台机器上(因为memcache是分布式存储,且很耗内存)3.key/value格式存储,不支持List,Arr...
阅读全文
摘要:配置自动启动服务1、添加到系统服务sccreateSVNServicebinpath=“D:\subversion\bin\svnserve.exe--service-rD:/svnroot”start=auto特别注意:在binpath=后面有一个空格在start=后面也有一个空格必填,谨记!!!...
阅读全文
摘要:权限控制问题:当前采用单仓库或多仓库配置中,所有的文件权限都是可读写的,这样就会存在一个问题,只要任何知道了我们的访问地址,那么都可以对文件进行读写操作。1、为什么需要权限控制打开服务器端的项目文件夹:svnserve.conf:项目的主配置文件,功能的开启和关闭passwd:主要定义系统中拥有哪些...
阅读全文
摘要:数据备份 差异存储法:版本回退版本冲突原理图:解决办法:三种方案:1)合理分配项目开发模块wangcai:文章,邮件,会员xiaoqiang:静态化,缓存,前台2)合理分配项目开发时间wangcai:上午开发xiaoqiang:下午开发3)多者同时开发某一文件,产生了问题,那么可以采用如下方式解决:...
阅读全文
摘要:1、代表服务器端与客户端文件相同,没有任何更改2、当前文件如果有修改,那么将显示如下图标3、当前要提交的文件,与服务器上其他人提交的文件有冲突,那么将显示如下图标4、当前文件,在服务器上已被删除,那么将显示如下图标5、当我们的文件,在服务器中,无法找到,那么将显示如下图标6、当我们的文件出现5的提示...
阅读全文
摘要:在svn中我们的项目,不能称之为项目或文件夹,而是称之为“仓库”仓库的建立步骤:1、创建代码仓库l在任意盘符下建立文件夹(D:\svn\myApp\)做为我们的版本库根目录,如我们需要建立一个shop的项目,当前shop也只能算一个文件夹,而不是“仓库”lsvnadmincreateD:\svn\m...
阅读全文
摘要:1、SVN分为服务器端与客户端l服务器端:VisualSVNSubVersionl客户端:TortoiseSVNserverhttp://www.visualsvn.com/clienthttp://tortoisesvn.net/downloads2、软件安装顺序先安装服务器端,服务器没有版本位数...
阅读全文
摘要:一、为什么需要SVN你们在做中级项目中,都是采用小组合作开发的?那么说说你们在后期整合中遇到问题?主要应用于:1、协作开发2、远程协作3、版本回退二、什么是SVNlsvn全称SubVersionlsvn是近年来崛起的版本管理工具,是cvs的接班人。目前,绝大多数开源软件都使用svn作为代码版本管理软...
阅读全文
摘要:1、改表法可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改成"%"CODE:mysql -u root -p123mysql>u...
阅读全文
摘要:需求:一个table 需要在第一列生成序号:1、2、3、4、5...... 并且自适应行数不使用后台程序,开始考虑使用JS,但是一旦前台排序后,序号就乱了,最后采用CSS的一个计数器方法实现!Note: IE8 supports these properties only if a !DOCTYPE...
阅读全文
摘要:Memcached 运行Memcached命令的运行:$ /usr/local/memcached/bin/memcached -h注意:如果使用自动安装, memcached 命令位于/usr/local/bin/memcached。例如:memcached -d -m 64 -p11211-u ...
阅读全文