nulib-base/php/src/web/curl/CurlException.php

23 lines
667 B
PHP

<?php
namespace nulib\web\curl;
use nulib\UserException;
use Throwable;
class CurlException extends UserException {
function __construct($ch, ?string $message=null, $code=0, ?Throwable $previous=null) {
if ($message === null) $message = "(unknown error)";
$userMessage = $message;
$techMessage = null;
if ($ch !== null) {
$parts = [];
$errno = curl_errno($ch);
if ($errno != 0) $parts[] = "errno: $errno";
$error = curl_error($ch);
if ($error != "") $parts[] = "error: $error";
if ($parts) $techMessage = implode(", ", $parts);
}
parent::__construct($userMessage, $techMessage, $code, $previous);
}
}