雷林鹏分享:PHP 错误处理】的更多相关文章

刚发现了博客的一个bug,标签页中一些标签带有空格,在url输出中使用了 urlencode 函数进行处理,导致空格被转换成了加号(+),这时通过url访问时会出现错误: 临时解决方法是在urlcode输出后,再把加号(+)转换成 %20 str_replace('+', '%20', urlencode($value['name'])) 至于为什么会出现错误,接着往下看: html会把url中的加号等同于空格处理,这样就成了: www.php230.com/tags/zoho projects…
在 PHP 中,默认的错误处理很简单.一条错误消息会被发送到浏览器,这条消息带有文件名.行号以及描述错误的消息. PHP 错误处理 在创建脚本和 Web 应用程序时,错误处理是一个重要的部分.如果您的代码缺少错误检测编码,那么程序看上去很不专业,也为安全风险敞开了大门. 本教程介绍了 PHP 中一些最为重要的错误检测方法. 我们将为您讲解不同的错误处理方法: 简单的 "die()" 语句 自定义错误和错误触发器 错误报告 基本的错误处理:使用 die() 函数 第一个实例展示了一个打开…
前面我们介绍我了 composer安装,这里我们接着来介绍 Laravel框架的安装. 这里我们安装的是laravel 4 项目下载地址:https://github.com/laravel/laravel 安装要求: 1.PHP最低版本:5.3.7 2.支持 mcrypt 扩展 3.支持 openssl 扩展 另外,需要支持 proc_open.proc_get_status函数,自己在安装过程中,因为不支持这2个函数,安装报错失败了 [Symfony\Component\Process\Ex…
在 CodeIgniter 中,使用数据库是非常频繁的事情.你可以使用框架自带的数据库类,就能便捷地进行数据库操作. 初始化数据库类 依据你的数据库配置载入并初始化数据库类: $this->load->database(); 被载入之后你可以在任何地方使用它. 以对象形式返回查询结果 $query = $this->db->query('SELECT name, title, email FROM my_table'); foreach ($query->result() a…
XML 语法规则 XML 的语法规则很简单,且很有逻辑.这些规则很容易学习,也很容易使用. 所有的 XML 元素都必须有一个关闭标签 在 HTML 中,某些元素不必有一个关闭标签: This is a paragraph. 在 XML 中,省略关闭标签是非法的.所有元素都必须有关闭标签: This is a paragraph. 注释:从上面的实例中,您也许已经注意到 XML 声明没有关闭标签.这不是错误.声明不是 XML 文档本身的一部分,它没有关闭标签. XML 标签对大小写敏感 XML 标…
XML 验证器 使用我们的 XML 验证器来对您的 XML 文件进行语法检查. XML 错误会终止您的程序 XML 文档中的错误会终止您的 XML 应用程序. W3C 的 XML 规范声明:如果 XML 文档存在错误,那么程序就不应当继续处理这个文档.理由是,XML 软件应当轻巧,快速,具有良好的兼容性. 如果使用 HTML,创建包含大量错误的文档是有可能的(比如您忘记了结束标签).其中一个主要的原因是 HTML 浏览器相当臃肿,兼容性也很差,并且它们有自己的方式来确定当发现错误时文档应该显示为…
查看 XML 文件 在所有主流的浏览器中,均能够查看原始的 XML 文件. 不要指望 XML 文件会直接显示为 HTML 页面. 查看 XML 文件 - Tove Jani Reminder Don't forget me this weekend! 查看这个 XML 文件:note.xml XML 文档将显示为代码颜色化的根以及子元素.通过点击元素左侧的加号(+)或减号( - ),可以展开或收起元素的结构.要查看原始的 XML 源(不包括 + 和 - 符号),选择"查看页面源代码"或…
XML 编码 XML 文档可以包含非 ASCII 字符,比如挪威语 æ ø å,或者法语 ê è é. 为了避免错误,需要规定 XML 编码,或者将 XML 文件存为 Unicode. XML 编码错误 如果您载入一个 XML 文档,您可以得到两个不同的错误,表示编码问题: 在文本内容中发现无效字符. 如果您的 XML 中包含非 ASCII 字符,且文件保存为没有指定编码的单字节 ANSI(或 ASCII),您会得到一个错误. 单字节编码属性的 XML 文件. 相同的单字节没有编码属性的 XML…
XML CDATA XML 文档中的所有文本均会被解析器解析. 只有 CDATA 区段中的文本会被解析器忽略. PCDATA - 被解析的字符数据 XML 解析器通常会解析 XML 文档中所有的文本. 当某个 XML 元素被解析时,其标签之间的文本也会被解析: This text is also parsed 解析器之所以这么做是因为 XML 元素可包含其他元素,就像这个实例中,其中的 元素包含着另外的两个元素(first 和 last): BillGates 而解析器会把它分解为像这样的子元素…
XML 编辑器 如果您希望极认真地学习和使用 XML,那么您一定会从一款专业的 XML 编辑器的使用上受益. XML 是基于文本的 XML 是基于文本的标记语言. 关于 XML 的一件很重要的事情是,XML 可被类似记事本这样的简单的文本编辑器来创建和编辑. 不过,在您开始使用 XML 进行工作时,您很快会发现,使用一款专业的 XML 编辑器来编辑 XML 文档会更好. 为什么不使用记事本? 许多 Web 开发人员使用记事本来编辑 HTML 和 XML 文档,这是因为最常用的操作系统都带有记事本…
XML 实例 这些例子演示了 XML 文件.XML 格式化和 XML 转换(XSLT). 还演示了与 XML 一起使用的 JavaScript(AJAX). 查看 XML 文件 查看一个简单的 XML 文件(note.xml) 查看一个带有错误的相同的 XML 文件 查看一个 XML 的 CD 目录 查看一个 XML 的植物目录 查看一个 XML 的食物菜单 实例解释 XML 和 CSS 查看一个 XML 的 CD 目录 查看对应的 CSS 文件 显示由 CSS 文件格式化的 CD 目录 实例解…
C# 程序结构 在我们学习 C# 编程语言的基础构件块之前,让我们先看一下 C# 的最小的程序结构,以便作为接下来章节的参考. C# Hello World 实例 一个 C# 程序主要包括以下部分: 命名空间声明(Namespace declaration) 一个 class Class 方法 Class 属性 一个 Main 方法 语句(Statements)& 表达式(Expressions) 注释 让我们看一个可以打印出 "Hello World" 的简单的代码: usi…
C# 预处理器指令 预处理器指令指导编译器在实际编译开始之前对信息进行预处理. 所有的预处理器指令都是以 # 开始.且在一行上,只有空白字符可以出现在预处理器指令之前.预处理器指令不是语句,所以它们不以分号(;)结束. C# 编译器没有一个单独的预处理器,但是,指令被处理时就像是有一个单独的预处理器一样.在 C# 中,预处理器指令用于在条件编译中起作用.与 C 和 C++ 不同指令不用,它们不是用来创建宏.一个预处理器指令必须是该行上的唯一指令. C# 预处理器指令列表 下表列出了 C# 中可用…
C# 异常处理 异常是在程序执行期间出现的问题.C# 中的异常是对程序运行时出现的特殊情况的一种响应,比如尝试除以零. 异常提供了一种把程序控制权从某个部分转移到另一个部分的方式.C# 异常处理时建立在四个关键词之上的:try.catch.finally 和 throw. try:一个 try 块标识了一个将被激活的特定的异常的代码块.后跟一个或多个 catch 块. catch:程序通过异常处理程序捕获异常.catch 关键字表示异常的捕获. finally:finally 块用于执行给定的语…
C# 特性(Attribute) 特性(Attribute)是用于在运行时传递程序中各种元素(比如类.方法.结构.枚举.组件等)的行为信息的声明性标签.您可以通过使用特性向程序添加声明性信息.一个声明性标签是通过放置在它所应用的元素前面的方括号([ ])来描述的. 特性(Attribute)用于添加元数据,如编译器指令和注释.描述.方法.类等其他信息..Net 框架提供了两种类型的特性:预定义特性和自定义特性. 规定特性(Attribute) 规定特性(Attribute)的语法如下: [att…
Ruby 变量 变量是持有可被任何程序使用的任何数据的存储位置. Ruby 支持五种类型的变量.您已经在前面的章节中大概了解了这些变量,本章节将为您详细讲解这五种类型的变量. Ruby 全局变量 全局变量以 $ 开头.未初始化的全局变量的值为 nil,在使用 -w 选项后,会产生警告. 给全局变量赋值会改变全局状态,所以不建议使用全局变量. 下面的实例显示了全局变量的用法. #!/usr/bin/ruby $global_variable = 10 class Class1 def print_…
Ruby 循环 Ruby 中的循环用于执行相同的代码块若干次.本章节将详细介绍 Ruby 支持的所有循环语句. Ruby while 语句 语法 while conditional [do] code end 当 conditional 为真时,执行 code.while 循环的 conditional 通过保留字 do.一个换行符.反斜线 \ 或一个分号 ; ,来与 code 分离开. 实例 #!/usr/bin/ruby $i = 0 $num = 5 while $i < $num do…
Ruby 方法 Ruby 方法与其他编程语言中的函数类似.Ruby 方法用于捆绑一个或多个重复的语句到一个单元中. 方法名应以小写字母开头.如果您以大写字母作为方法名的开头,Ruby 可能会把它当作常量,从而导致不正确地解析调用. 方法应在调用之前定义,否则 Ruby 会产生未定义的方法调用异常. 语法 def method_name [( [arg [= default]]...[, * arg [, &expr ]])] expr.. end 所以,您可以定义一个简单的方法,如下所示: de…
Ruby 字符串(String) Ruby 中的 String 对象存储并操作一个或多个字节的任意序列,通常表示那些代表人类语言的字符. 最简单的字符串是括在单引号(单引号字符)内.在引号标记内的文本是字符串的值: 'This is a simple Ruby string literal' 如果您需要在单引号字符串内使用单引号字符,那么需要在单引号字符串使用反斜杠,这样 Ruby 解释器就不会认为这个单引号字符会终止字符串: 'Won\'t you read O\'Reilly\'s book…
Ruby 异常 异常和执行总是被联系在一起.如果您打开一个不存在的文件,且没有恰当地处理这种情况,那么您的程序则被认为是低质量的. 如果异常发生,则程序停止.异常用于处理各种类型的错误,这些错误可能在程序执行期间发生,所以要采取适当的行动,而不至于让程序完全停止. Ruby 提供了一个完美的处理异常的机制.我们可以在 begin/end 块中附上可能抛出异常的代码,并使用 rescue 子句告诉 Ruby 完美要处理的异常类型. 语法 begin # - rescue OneTypeOfExce…
Ruby 数据库访问 - DBI 教程 本章节将向您讲解如何使用 Ruby 访问数据库.Ruby DBI 模块为 Ruby 脚本提供了类似于 Perl DBI 模块的独立于数据库的接口. DBI 即 Database independent interface,代表了 Ruby 独立于数据库的接口.DBI 在 Ruby 代码与底层数据库之间提供了一个抽象层,允许您简单地实现数据库切换.它定义了一系列方法.变量和规范,提供了一个独立于数据库的一致的数据库接口. DBI 可与下列进行交互: ADO…
Ruby CGI Cookies HTTP协议是无状态协议.但对于一个商业网站,它需要保持不同的页面间的会话信息. 如用户在网站注册过程中需要跳转页面,但又要保证之前填写的信息部丢失. 这种情况下 Cookie 很好的帮我们解决了问题. Cookie 是如何工作的? 几乎所有的网站设计者在进行网站设计时都使用了Cookie,因为他们都想给浏览网站的用户提供一个更友好的.人文化的浏览环境,同时也能更加准确地收集访问者的信息. 写入和读取 Cookies集合是附属于Response对象及Reques…
在平时项目开发过程中,除了处理那些繁琐的逻辑过程外,还有一个重要的任务就是对数据库的操作处理.这里总结下自己平时使用CI过程中使用的如何对数据库进行操作处理. 在CI框架中,我们一般会把对数据库的操作放在models中,下面以文章操作类article_model.php为例: 1.数据库链接 class Article_model extends CI_Model { private $admin = null; public function __construct() { $this->ad…
这2天休年假,在家宅着学习研究了YAF框架,用YAF做过APP接口的项目,但是没有用来做过WEB方面的应用.趁着这2天在家想把博客用YAF进行一下改版,目的也想进一步学习一下YAF. 在这过程中遇到不少问题,这里说下YAF路由的问题. 现在博客的URL规则,使用的也是CI框架的regex路由规则: 一级栏目:http://www.php230.com/category/ 二级栏目:http://www.php230.com/category/programming-language 三级栏目:h…
下午在安装 Laravel 框架过程中,遇到了不少问题,因为 Laravel 的安装依赖于 composer,这里就先介绍一下 composer 的安装方法: 安装方法: #下载 sudo curl -sS https://getcomposer.org/installer | sudo php -d detect_unicode=Off #更改文件权限 sudo chmod a+x composer.phar #移动文件 sudo chmod a+x composer.phar #更新 sud…
jQuery EasyUI 数据网格 - 设置冻结列 本实例演示如何冻结一些列,当用户在网格上移动水平滚动条时,冻结列不能滚动到视图的外部. 为了冻结列,您需要定义 frozenColumns 属性.frozenColumn 属性和 columns 属性一样. $('#tt').datagrid({ title:'Frozen Columns', iconCls:'icon-save', width:500, height:250, url:'data/datagrid_data.json',…
jQuery EasyUI 数据网格 - 创建复杂工具栏 数据网格(datagrid)的工具栏(toolbar)可以包含按钮及其他组件. 您可以通个一个已存在的 DIV 标签来简单地定义工具栏布局,该 DIV 标签将成为数据网格(datagrid)工具栏的内容. 本教程将向您展示如何创建数据网格(datagrid)组件的复杂工具栏. 创建工具栏(Toolbar) Date From: To: Language: url="data/combobox_data.json" valueFi…
jQuery EasyUI 数据网格 - 动态改变列 数据网格(DataGrid)列可以使用 'columns' 属性简单地定义.如果您想动态地改变列,那根本没有问题.为了改变列,您可以重新调用datagrid 方法,并传递一个新的 columns 属性. 创建数据网格(DataGrid) url="data/datagrid_data.json" singleSelect="true" iconCls="icon-save"> $('#t…
jQuery EasyUI 数据网格 - 格式化列 以下实例格式化在 easyui DataGrid 里的列数据,并使用自定义列的 formatter,如果价格小于 20 就将文本变为红色. 为了格式化一个数据网格(DataGrid)列,我们需要设置 formatter 属性,它是一个函数.这个格式化函数包含三个参数: value:当前列对应字段值. row:当前的行记录数据. index:当前的行下标. 创建数据网格(DataGrid) url="data/datagrid_data.json…
jQuery EasyUI 数据网格 - 设置排序 本实例演示如何通过点击列表头来排序数据网格(DataGrid). 数据网格(DataGrid)的所有列可以通过点击列表头来排序.您可以定义哪列可以排序.默认的,列是不能排序的,除非您设置 sortable 属性为 true. 创建数据网格(DataGrid) url="datagrid8_getdata.php" title="Load Data" iconCls="icon-save" row…