尝试和赶上PHP应该在尝试块返回?
问题描述:
下面是我在函数中的try catch语句。我还没有使用try catch语句,我想知道如何在try catch语句中返回值,并且应该在try和catch语句之后返回值或在try块中返回是否正确?尝试和赶上PHP应该在尝试块返回?
function createBucket($bucket_name) {
if ($this->isValidBucketName($bucket_name)) {
if ($this->doesBucketExist($bucket_name)) {
return false;
} else {
try {
$this->s3Client->createBucket(
array(
'Bucket' => $bucket_name,
'ACL' => CannedAcl::PUBLIC_READ
//add more items if required here
));
return true;
} catch (S3Exception $e) {
$this->airbrake->notifyOnException($e);
return false;
}
}
} else {
$this->airbrake->notifyOnError('invalid bucket name');
return false;
}
}
答
返回在try块就可以了?
是的。如果您需要将值返回,请执行此操作。
try {
function_that_throws_exception();
return true; // <-- this will never happen if an exception is raised
}catch(Exception $e){
}
你试过了吗?这是绝对好 – Eric 2013-02-24 13:34:03