[原创][技术]PHP学习笔记(5)--PHP高级2/2
来源:互联网 发布:淘宝上有卖发票的吗 编辑:程序博客网 时间:2024/06/06 11:16
主要内容:
PHP E-mail
PHP 安全 E-mail
PHP Error
PHP Exception
PHP Filter
正文:
-------------------------------------------------------------------
PHP E-mail<?php
$to = "someone@example.com";
$subject = "Test mail";
$message = "Hello! This is a simple email message.";
$from = "someonelse@example.com";
$headers = "From: $from";
mail($to,$subject,$message,$headers);
echo "Mail Sent.";
?>
看上去似乎不能运行,显示Failed to connect to mailserver at "localhost" port 25,
-------------------------------------------------------------------
PHP 安全 E-mail
-------------------------------------------------------------------
PHP Error
1) die()
<?php
if(!file_exists("welcome.txt"))
{
die("似乎不太对,但是我不会告诉你具体出了什么问题");
}
else
{
$file=fopen("welcome.txt","r");
}
?>
这样,本来应该显示“failed to open stream: No such file or directory ”的情况,变成了出现我们想要的提示。
2) 自定义错误和错误触发器
3) 错误报告
-------------------------------------------------------------------
PHP Exception
和一些面向对象的编程语言一样,有try ...throw...catch 可以用来处理异常(Exception)
<?php
//创建可抛出一个异常的函数
function checkNum($number)
{
if($number>1)
{
throw new Exception("Value must be 1 or below");
}
return true;
}
//在 "try" 代码块中触发异常
try
{
checkNum(2);
//If the exception is thrown, this text will not be shown
echo 'If you see this, the number is 1 or below';
}
//捕获异常
catch(Exception $e)
{
echo 'Message: ' .$e->getMessage();
}
?>
运行结果是:
Message: Value must be 1 or below
异常的规则
需要进行异常处理的代码应该放入 try 代码块内,以便捕获潜在的异常。
每个 try 或 throw 代码块必须至少拥有一个对应的 catch 代码块。
使用多个 catch 代码块可以捕获不同种类的异常。
可以在 try 代码块内的 catch 代码块中再次抛出(re-thrown)异常。
简而言之:如果抛出了异常,就必须捕获它
-------------------------------------------------------------------
PHP Filter
什么是 PHP 过滤器?
PHP 过滤器用于验证和过滤来自非安全来源的数据。
验证和过滤用户输入或自定义数据是任何 Web 应用程序的重要组成部分。
设计 PHP 的过滤器扩展的目的是使数据过滤更轻松快捷。
为什么使用过滤器?
几乎所有 web 应用程序都依赖外部的输入。这些数据通常来自用户或其他应用程序(比如 web 服务)。通过使用过滤器,您能够确保应有程序获得正确的输入类型。
您应该始终对外部数据进行过滤!
输入过滤是最重要的应用程序安全课题之一。
什么是外部数据?
来自表单的输入数据
Cookies
服务器变量
数据库查询结果
- [原创][技术]PHP学习笔记(5)--PHP高级2/2
- [原创][技术]PHP学习笔记(4)--PHP高级1/2
- [原创][技术]PHP学习笔记(2)--基础2/3
- [原创][技术]PHP学习笔记(6)--PHP与mySQL
- PHP学习笔记(2)----Mysql与PHP的整合[原创]
- [原创][技术]PHP学习笔记(1)--基础1/3
- [原创][技术]PHP学习笔记(3)--基础3/3
- php学习笔记--高级教程
- PHP学习笔记(5)----phplib的简介及安装[原创]
- PHP学习笔记2
- php 学习笔记 2
- PHP学习笔记----PHP接口技术
- php 技术内幕学习2
- PHP学习笔记2 - PHP配置
- PHP学习笔记-PHP语言基础2
- PHP学习笔记2-php基础语法
- php学习笔记:第九节--高级--Date()
- php高级程序设计2
- [原创][技术]PHP学习笔记(1)--基础1/3
- [原创][技术]PHP学习笔记(2)--基础2/3
- css控制链接不同的样式
- [原创][技术]PHP学习笔记(3)--基础3/3
- [原创][技术]PHP学习笔记(4)--PHP高级1/2
- [原创][技术]PHP学习笔记(5)--PHP高级2/2
- [原创][技术]PHP学习笔记(6)--PHP与mySQL
- [原创][技术]XML学习笔记(1)------XML 基础
- [转帖]80后创业要注意的十个“创业误区”
- [转贴]腾讯前COO告诫创业者:别做腾讯盯上的领域
- 《人性的弱点》读后感(1)
- [转]USB的八个问题和答案(适用初学者)--------转帖!!
- [转]哈佛图书馆自习室墙上的训言
- CSDN11期 软件创新 :小说下载阅读器 点评