`

codeigniter搭配php 5.3中两个值得注意的问题

    博客分类:
  • PHP
PHP 
阅读更多
codegniter 1.7跟PHP5。3配合时,有些地方要改下的,主要是php 5.3有不少跟php 5.2不同的地方了,要特别留意下,

1 PHP:Deprecated: Function set_magic_quotes_runtime() is deprecated 错误:
  PHP5.3和PHP6.0之后移除了set_magic_quotes_runtime()函数。

set_magic_quotes_runtime(0)函数作用解释
在php.ini的配置文件中,有个布尔值的设置,就是magic_quotes_runtime,当它打开时,php的大部分函数自动的给从外部引入的(包括数据库或者文件)数据中的溢出字符加上反斜线。

当然如果重复给溢出字符加反斜线,那么字符串中就会有多个反斜线,所以这时就要用set_magic_quotes_runtime()与 get_magic_quotes_runtime()设置和检测php.ini文件中magic_quotes_runtime状态。

为了使自己的程序不管服务器是什么设置都能正常执行。可以在程序开始用get_magic_quotes_runtime检测设置状态秋决定是否要手工处理,或者在开始(或不需要自动转义的时候)用set_magic_quotes_runtime(0)关掉。

magic_quotes_gpc设置是否自动为GPC(get,post,cookie)传来的数据中的'"\加上反斜线。可以用 get_magic_quotes_gpc()检测系统设置。如果没有打开这项设置,可以使用addslashes()函数添加,它的功能就是给数据库查询语句等的需要在某些字符前加上了反斜线。这些字符是单引号(')、双引号(")、反斜线(\)与 NUL(NULL 字符)。


解决办法:

//@set_magic_quotes_runtime(0);

ini_set("magic_quotes_runtime",0);

就是用ini_set()办法替代原有的set_magic_quotes_runtime语法。



2  “The URI you submitted has disallowed characters.” error CodeIgniter
1) in codeigiter system/libraries open  URI.php  line 189 you’ll find

if ( ! preg_match("|^[".preg_quote($this->config->item('permitted_uri_chars'))."]+$|i", rawurlencode($str)))

Change that to:

if ( ! preg_match("|^[".($this->config->item('permitted_uri_chars'))."]+$|i", rawurlencode($str)))

Note we removed the preg_quote().  Now in your system/application/config/config.php file  look for line 126 (unless you’ve added a lot to you config will be around there somewhere)

Change the line

$config['permitted_uri_chars'] = 'a-z 0-9~%.:_-';

to:

$config['permitted_uri_chars'] = 'a-z 0-9~%\.\:_\-';


3 php5.3开始后,废除了php中的”=&”符号,所以要想复制,直接用=引用即可。
比如:
  freakauth_light = & new MyFAL();
改为 $obj->freakauth_light =  new MyFAL();
1
1
分享到:
评论

相关推荐

    PHP开发框架CodeIgniter中文参考资料

    资源中的三个文件分别提供了不同角度的CodeIgniter学习资料。 1. **CodeIgniter中文参考手册.pdf**:这份文档详细地介绍了CodeIgniter的各种组件和功能,包括控制器、模型、视图、数据库操作、表单验证、安全和会话...

    PHP框架之CodeIgniter留言板实例

    PHP框架之CodeIgniter留言板实例PHP框架之CodeIgniter留言板实例PHP框架之CodeIgniter留言板实例PHP框架之CodeIgniter留言板实例PHP框架之CodeIgniter留言板实例PHP框架之CodeIgniter留言板实例PHP框架之CodeIgniter...

    PHP CodeIgniter中文手册

    CI提供了错误报告和日志系统,便于开发者追踪和解决程序中的问题。此外,「Profiler」工具可以在页面底部显示执行时间、内存消耗等性能数据,帮助优化代码。 **9. 自动加载** CI支持自动加载类库、模型、库、助手...

    CodeIgniter3中文手册

    CodeIgniter 是一个用PHP编写的开源Web应用程序开发框架,它提供了一套工具包和类库,帮助开发者更快速地进行应用程序开发。CodeIgniter以其小巧、高性能、易于使用和配置、不需要命令行、无需新的模板语言、以及...

    php敏捷开发框架Codeigniter

    CodeIgniter是一个基于PHP的轻量级Web应用框架,它以高效、简洁和优雅而闻名。这个框架的主要目标是让开发者能够快速地构建高质量的PHP应用程序,而无需从头开始编写大量的基础代码。通过使用MVC(Model-View-...

    CodeIgniter简体中文语言包

    CodeIgniter是一个轻量级、高性能的PHP框架,它被广泛用于快速开发高效、优雅的Web应用程序。这个“CodeIgniter简体中文语言包”是专门为CodeIgniter 1.7版本设计的,目的是为了让使用中文的开发者或者用户能够更好...

    CodeIgniter 2.2.2 中文文档 CI2.2.2中文文档

    CodeIgniter 2.2.2 是一个流行的PHP框架,专为快速开发高效、优雅的Web应用程序而设计。CI(CodeIgniter)以其轻量级、高性能和丰富的库集著称,深受开发者喜爱。这份2.2.2版本的中文文档是针对这个特定版本的全面...

    CodeIgniter

    CodeIgniter是一个非常受欢迎的PHP框架,以其高效、开源和轻量级的特性著称。这个框架主要用于构建功能丰富的Web应用程序。"CodeIgniter 2.1.2"是该框架的一个特定版本,它在2012年发布,虽然现在已经有了更新的版本...

    PHP敏捷开发CodeIgniter框架

    CodeIgniter是一个基于PHP的轻量级Web应用框架,它以敏捷开发为核心,旨在简化PHP开发者构建高效、安全且易于维护的网站。该框架提供了一系列强大的工具和组件,包括Model-View-Controller (MVC)架构、数据库抽象层...

    codeigniter 2.0 中文手册

    CodeIgniter 2.0 是一个流行的开源PHP框架,它以其高效、轻量级和易于理解的特性在Web开发领域中备受青睐。本资源提供的"CodeIgniter 2.0 中文手册"是针对该框架的详细指南,帮助开发者更好地理解和运用这个框架。 ...

    codeigniter源代码函数中文解释

    - **文件位置与作用**:`CodeIgniter.php` 文件位于 `system` 目录下的 `codeigniter` 文件夹中,是框架的核心配置文件。 - **关键步骤**: - 引入 `Common.php` 文件来加载一些通用的辅助函数。 - `is_really_...

    codeigniter中文手册教程

    CodeIgniter是一个流行的开源PHP框架,专为构建高效、优雅的Web应用程序而设计。这个“codeigniter中文手册教程”是你个人制作并基于官网资料改编的,旨在为开发者提供更便捷的学习途径。在解压文件后,只需通过...

    CodeIgniter3.00中文手册pdf

    手册还专门讲解了CodeIgniter的常规主题,如项目结构、代码风格、安全性、维护等实际操作中经常遇到的问题,为开发者提供全面的指导。 此外,CodeIgniter鼓励开发者为框架做出贡献。如果用户希望贡献代码或文档,...

    CodeIgniter快速开发中文手册.zip

    总的来说,“CodeIgniter快速开发中文手册”是一个全面的学习资源,它涵盖了CodeIgniter的核心组件和最佳实践,旨在帮助开发者快速上手并熟练掌握这个强大的PHP框架。通过深入阅读和实践,你将能够有效地利用...

    CodeIgniter 1.7.1中文手册

    敏捷php开发框架CodeIgniter 1.7.1中文手册

    CodeIgniter2.0 中文手册

    它的中文手册提供了全面的文档,帮助开发者理解并熟练运用这个框架。以下是对CodeIgniter2.0的一些核心知识点的详细解释: 1. MVC架构:CodeIgniter遵循Model-View-Controller(MVC)设计模式,将业务逻辑、数据...

    CodeIgniter是一个简单快速的PHPMVC框架

    在"codeigniter4-CodeIgniter4-3425790"这个压缩包中,可能包含了完整的CodeIgniter 4源码、示例项目、文档以及相关的配置文件。解压后,开发者可以按照官方文档的指引进行安装和设置,开始使用这个强大的PHP框架...

    CodeIgniter 中文手册1.6.3版本

    在CodeIgniter 1.6.3版本中,以下几个主要知识点值得深入探讨: 1. MVC架构:MVC(Model-View-Controller)是CodeIgniter的核心设计模式。Model负责数据的处理和业务逻辑,View负责展示数据,而Controller作为中间...

    一个简单的Codeigniter用户登录验证例子程序

    在这个"一个简单的Codeigniter用户登录验证例子程序"中,我们将探讨如何在Codeigniter中实现用户认证和登录功能,这对于任何Web应用来说都是核心部分。这个程序包含了一些关键组件,如密码加密、session管理以及用户...

Global site tag (gtag.js) - Google Analytics