Heim >Backend-Entwicklung >PHP-Tutorial > PHP捕捉异常的有关问题

PHP捕捉异常的有关问题

WBOY
WBOYOriginal
2016-06-13 13:01:00816Durchsuche

PHP捕捉错误的问题
先看看代码,很简单就是保存FLASH提交的betys图片数据。

<br />
function customError() {  }<br />
set_error_handler("customError");<br />
<br />
$destination_folder="face/"; //上传文件路径<br />
$xmlstr =$GLOBALS[HTTP_RAW_POST_DATA];//获取post提交的数据<br />
if(empty($xmlstr)) <br />
{<br />
	$xmlstr = file_get_contents('php://input');//读取post提交数据的另一种方法<br />
}<br />
if(!file_exists($destination_folder))<br />
{<br />
	mkdir($destination_folder);//创建存放图片的目录<br />
}<br />
$jpg = $xmlstr;//得到post过来的二进制原始数据<br />
$imgUrl=$destination_folder.time().rand(0, 99).".png";<br />
$file = fopen($imgUrl,"w");//打开文件准备写入<br />
fwrite($file,$jpg);//写入<br />
fclose($file);//关闭<br />
<br />
echo 1;<br />


现在无论如何,都会echo 1,
但是如果我想在保存失败的时候返回-1,比如磁盘满、路径错误或者没有定权限等,
要返回错误给flash来告之用户,这个怎么做呢?
php里面的try真是很难用啊
------解决方案--------------------
function customError() {  }
set_error_handler("customError");
 
$destination_folder="face/"; //上传文件路径
$xmlstr =$GLOBALS[HTTP_RAW_POST_DATA];//获取post提交的数据
if(empty($xmlstr)) 
{
    $xmlstr = file_get_contents('php://input');//读取post提交数据的另一种方法
}
if(!file_exists($destination_folder))
{
    mkdir($destination_folder);//创建存放图片的目录
}
$jpg = $xmlstr;//得到post过来的二进制原始数据
$imgUrl=$destination_folder.time().rand(0, 99).".png";
$file = fopen($imgUrl,"w");//打开文件准备写入
if(fwrite($file,$jpg))
{
  echo '1'; //写入成功
}
else
{
  echo '-1';//写入失败
}
fclose($file);//关闭
 

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn