这篇文章将为大家详细讲解有关PHP出现异常,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
目前成都创新互联公司已为1000+的企业提供了网站建设、域名、网站空间、网站托管运营、企业网站设计、玉田网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

getMessage();
// die(); // 终止异常
}
/******************************************************
* php+MySQL+pdo
*****************************************************/
try {
$pdo = new PDO("mysql:host=localhost;dbname=mysql", "root", "");
} catch (PDOException $e) {
echo $e->getMessage();
// die(); // 终止异常
}
/******************************************************
* php+文件异常
*****************************************************/
/**
* PHP 读取大文件 SplFileObject :
* https://blog.csdn.net/ekliu/article/details/8855907
*/
// SqlFileObject相对于传统的open($filename, 'r')产生的对象的优点在于不需要打开文件句柄 不需要关闭句柄更加的方便
$handle = new SplFileObject("sid_list.txt");
while (!$handle->eof()) {
$item = $handle->fgets();
}
try {
$pdo = new SplFileObject("text.txt", "r");
echo "read File";
} catch (Exception $e) {
echo $e->getMessage();
// die(); // 终止异常
}
/******************************************************
* php异常 嵌套
*****************************************************/
try {
throw new Exception("测试异常1");
} catch (Exception $e) {
echo $e->getMessage();
// die(); // 终止异常
try {
throw new Exception("测试异常2");
} catch (Exception $e) {
echo $e->getMessage();
}
}
/******************************************************
* php异常 自定义异常封装
*****************************************************/
class MyException extends Exception
{
public function __construct($message = "", $code = 0, $previous = null)
{
parent::__construct($message, $code, $previous);
}
public function __toString()
{
$message = "出现异常,如下:
";
$message .= "" . __CLASS__ . "[{$this->code}:{$this->message}]
";
return $message;
}
/****************自定义异常方法***************/
public function test()
{
echo "这是自定义错误";
}
public function stop()
{
exit("异常 end...");
}
}
// 开始调用 MyException
try {
echo "出现异常啦";
throw new MyException("测试自定义异常", 3);
} catch (MyException $e) {
echo $e->getMessage();
}
// 嵌套使用 MyException 与 Exception (没有顺序)
try {
throw new MyException("测试自定义异常");
} catch (Exception $e) {
echo $e->getMessage();
} catch (MyException $e) {
echo $e->getMessage();
}
/******************************************************
* php异常 自定义异常封装 文件
*****************************************************/
class FileException extends Exception
{
public function getDetails()
{
switch ($this->code) {
case 0:
return "没有提供文件";
break;
case 1:
return "文件不存在";
break;
case 2:
return "不是一个文件";
break;
case 3:
return "文件不可写";
break;
case 4:
return "非法文件的操作模式";
break;
}
}
}
class WriteData
{
private $_message = "";
private $_fp = null;
public function __construct($filename = null, $mode = "w")
{
$this->_message = "文件:{$filename} ; 模式:{$mode}";
if (empty($filename)) throw new FileException($this->_message, 0);
if (!file_exists($filename)) throw new FileException($this->_message, 1);
if (!is_file($filename)) throw new FileException($this->_message, 2);
// is_writable — 判断给定的文件名是否可写
if (!is_writable($filename)) throw new FileException($this->_message, 3);
if (!in_array($mode, array("w", "w+", "a", "a
+"))) throw new FileException($this->_message, 4);
$this->_fp = fopen($filename, $mode);
}
public function write($data)
{
if (@!fwrite($this->_fp, $data . PHP_EOL)) throw new FileException($this->_message, 5);
}
public function close()
{
if ($this->_fp) {
if (!fclose($this->_fp)) throw new FileException($this->_message, 6);
$this->_fp = null;
}
}
public function __destruct()
{
$this->close();
}
}php的框架:1、Laravel,Laravel是一款免费并且开源的PHP应用框架。2、Phalcon,Phalcon是运行速度最快的一个PHP框架。3、Symfony,Symfony是一款为Web项目准备的PHP框架。4、Yii,Yii是一款快速、安全和专业的PHP框架。5、CodeIgniter,CodeIgniter是一款非常敏捷的开源PHP框架。6、CakePHP,CakePHP是一款老牌的PHP框架。7.Kohana,Kohana是一款敏捷但是功能强大的PHP框架。
关于“PHP出现异常”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。