<?php namespace nur\b; use Throwable; class CurlException extends UserException { function __construct($ch, ?string $message=null, $code=0, ?Throwable $previous=null) { $user_msg = $message; if ($message === null) $message = "(unknown error)"; $tech_msg = 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) $tech_msg = implode(", ", $parts); } parent::__construct([$user_msg, $tech_msg], $code, $previous); } }