A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Yt雨天 初级黑马   /  2017-4-13 22:56  /  566 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

require 和 require_once的区别
同require 和 require_once的区别
在被载入文件中return语句的作用

一个载入语句 如果载入成功 其实 就是有返回值的 为 1 如果载入失败 则返回的是 false
如果被载入文件有reurn语句  此时就有另外的机制和作用
  1retum语句此时的作用是终止载入过程--该retum语句的后续被载入文件的代码不在载入
代码
<?php
include"./page2.php";
$v1 = incude_once "./page2.php";
echo "<br />";var_dump($v1);
$v2 = incude_once "./no_rhis_page.php";
echo "<br />";var_dump($v2);
echo"<br />";
$v1 = incude_once "./page3.php";
echo "<br />111";
?>

retum语句也可以用于被载入文件载入时返回一个数据 形式为:return  xx数据

错误处理
错误的分类
通常分3中
语法错误:
   程序运行之前 都要先检查语句。如果语法有错误 就会立即错报错  并且不会去执行程序。
运行时错误
  程序语法检查通过后,开始运行程序 并在此过程中遇到的错误。常见 3中
  提示性错误:
  警告性错误:
  致命错误:
逻辑错误
  :程序本身可以正常执行,没有报错——但“计算结果”错了。
错误的分级
php语言中 将各种错误进行不容的分类归纳 并形成大约有10几个级别的错误 称为 技术层面的错误分级。
每一级别的错误 都有一盒“代号”,这个代号其实也就是一个系统的“常量”
系统常见错误
E_error:致命错误
E_WARANING:警告错误
E_NOTICE: 提示性错误
用户可自定义错误
E_user_error:    致命错误
E_user_WARANING: 警告错误
E_user_NOTICE:  提示性错误
其他
E_STRICT :严谨性语法检查错误
E_ALL     代表“所有错误”

错误的触发
错误的触发 就是让 错误“发生”
有两种防止会触发错误:
系统触发:
程序运行到某行代码 确实出现了某种错误 此时系统就会报错, 这就是触发了系统错误
  系统触发的典型错误有三种

E_NOTICE: 提示性错误: 会输出错误提示 并继续执行后续代码:
   
E_WARANING:警告错误:会输出错误提示 并继续执行后续代码

E_error:致命错误: 导致程序无法执行 后续语句
一个不存在的函数

自定义触发
当处理某些数据的时候 本来数据本身是没有错误的 但根据具体应用(业务)的需要 会要求数据满足某种条件 而该数据并不满足的时候  我们就可以在程序中“主动”去触发(创建)一个错误 ,以表明该数据的“非法性”
trigger_error("错误提示信息内容")
其中出发了 用户的致命错误(e_user_error)也会终止程序的后续执行

错误报告的显示信息
所谓错误报告 就是显示所在网页伤的错误提示内容
有关错误报告 有2个问题需要处理
是否显示错误报告
  有两种做法可以来设定是否显示
1
在pap.ini文件中 设定 display_erros 的值,为 on(显示 )或 off(不显示)
  前提条件都是我们 apache已经装载了 php.ini文件   这需要在apache 的配置文件 httpd.config中加入下一行:
    PHPPniDir “php.ini文件的位置(路径)”

  直接在 php的脚本文件中使用 函数 ini_set()来对其设置
1 不管哪种形式 单词是一样的display:enors
2使用php.ini配置 影响的是全局(即所有的php网页);
3 在某个脚本代码中使用 ini_set()设置,就致使影响该脚本代码本身  
  4脚本中的设置邮箱与php.ini中的设置

显示那些级别的错误报告
前提是 “display_errors”设置为O你(或1)表示可以显示
显示哪些级别的错误报告
  1:在php.ini文件中
error_reporting
修改为E_NOTICE
error_reporting=E_NOTICE
  2很php.ini这哦那个设置其实是一样
ini_set(""error——reporting", E_NOTICE);
错误日志的巨鹿问题
错误日志其实就是错误报告  致使它会”写入文件中“ 此时就称为错误日志
也有2个问题 每个问题也有两种做法:
是否记录
php.ini中:
log_errors=On  或off
脚本中
ini_set(”log_erros“,1);或0
记录到哪里 error_log:
一般只有2个写法
1 直接使用一个文件名此时系统会自动在每个文件下都建立该文件名 并用其记录该文件夹下的所有网页文件发生的错误信息
  2 使用一个特殊的名字”svslog“此时所有的错误信息都会记录到系统的”日志文件“中
自定义错误处理器
什么叫做 错误处理器
  一旦发生错误 用来处理该错误的一种”机器“其实就是一个函数
自定义错误处理 就是指:
让系统不要去处理错误了 而王权有我们(开发者)来对错误进行处理 显示和记录.
做法1
  设定要用于处理错误的函数名!
  set_error_handler("f1")
   2定义该函数
  function f1 (){
  可以写任意代码 自然正常去显示错误报告,和记录错误日志
}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马