2024-03-26 20:10:30 +01:00
<!DOCTYPE html>
< html lang = "en" >
< head >
< meta charset = "utf-8" >
< title > PHP Basics< / title >
< meta name = "viewport" content = "width=device-width, initial-scale=1.0" >
< base href = "../../" >
< link rel = "icon" href = "images/favicon.ico" / >
< link rel = "stylesheet" href = "css/normalize.css" >
< link rel = "stylesheet" href = "css/base.css" >
< link rel = "preconnect" href = "https://fonts.gstatic.com" >
< link href = "https://fonts.googleapis.com/css2?family=Open+Sans:wght@100;200;300;400;600;700&display=swap" rel = "stylesheet" >
< link href = "https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;600;700&display=swap" rel = "stylesheet" >
< link rel = "stylesheet" href = "css/template.css" >
< link rel = "stylesheet" href = "https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity = "sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin = "anonymous" / >
< link rel = "stylesheet" href = "https://cdn.jsdelivr.net/npm/prismjs@1.23.0/themes/prism-okaidia.css" >
< link rel = "stylesheet" href = "https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.css" >
< link rel = "stylesheet" href = "https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.css" >
< script src = "https://cdn.jsdelivr.net/npm/fuse.js@3.4.6" > < / script >
< script src = "https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2" > < / script >
< script src = "js/template.js" > < / script >
< script src = "js/search.js" > < / script >
< script defer src = "js/searchIndex.js" > < / script >
< / head >
< body id = "top" >
< header class = "phpdocumentor-header phpdocumentor-section" >
< h1 class = "phpdocumentor-title" > < a href = "" class = "phpdocumentor-title__link" > PHP Basics< / a > < / h1 >
< input class = "phpdocumentor-header__menu-button" type = "checkbox" id = "menu-button" name = "menu-button" / >
< label class = "phpdocumentor-header__menu-icon" for = "menu-button" >
< i class = "fas fa-bars" > < / i >
< / label >
< section data-search-form class = "phpdocumentor-search" >
< label >
< span class = "visually-hidden" > Search for< / span >
< svg class = "phpdocumentor-search__icon" width = "21" height = "20" viewBox = "0 0 21 20" fill = "none" xmlns = "http://www.w3.org/2000/svg" >
< circle cx = "7.5" cy = "7.5" r = "6.5" stroke = "currentColor" stroke-width = "2" / >
< line x1 = "12.4892" y1 = "12.2727" x2 = "19.1559" y2 = "18.9393" stroke = "currentColor" stroke-width = "3" / >
< / svg >
< input type = "search" class = "phpdocumentor-field phpdocumentor-search__field" placeholder = "Loading .." disabled / >
< / label >
< / section >
< nav class = "phpdocumentor-topnav" >
< ul class = "phpdocumentor-topnav__menu" >
< li class = "phpdocumentor-topnav__menu-item -menu" >
< a href = "https://packagist.org/packages/opencultureconsulting/basics" >
< span >
< i class = "fab fa-php" > < / i >
< / span >
< / a >
< / li >
< li class = "phpdocumentor-topnav__menu-item -menu" >
< a href = "https://github.com/opencultureconsulting/php-basics" >
< span >
< i class = "fab fa-github" > < / i >
< / span >
< / a >
< / li >
< / ul >
< / nav >
< / header >
< main class = "phpdocumentor" >
< div class = "phpdocumentor-section" >
< input class = "phpdocumentor-sidebar__menu-button" type = "checkbox" id = "sidebar-button" name = "sidebar-button" / >
< label class = "phpdocumentor-sidebar__menu-icon" for = "sidebar-button" >
Menu
< / label >
< aside class = "phpdocumentor-column -three phpdocumentor-sidebar" >
< section class = "phpdocumentor-sidebar__category -documentation" >
< h2 class = "phpdocumentor-sidebar__category-header" > Documentation< / h2 >
< h4 class = "phpdocumentor-sidebar__root-namespace" >
< a href = "guides/overview/index.html#overview" class = "" > Overview< / a >
< / h4 >
< ul class = "phpdocumentor-list" >
< li >
< a href = "guides/overview/datastructures.html#typed-datastructures" class = "" > Typed Datastructures< / a >
< / li >
< li >
< a href = "guides/overview/errorhandlers.html#error-and-exception-handlers" class = "" > Error and Exception Handlers< / a >
< / li >
< li >
< a href = "guides/overview/interfaces.html#interface-traits" class = "" > Interface Traits< / a >
< / li >
< li >
< a href = "guides/overview/traits.html#traits" class = "" > Traits< / a >
< / li >
< / ul >
< h4 class = "phpdocumentor-sidebar__root-namespace" >
< a href = "guides/usage/index.html#user-guide" class = "" > User Guide< / a >
< / h4 >
< ul class = "phpdocumentor-list" >
< li >
< a href = "guides/usage/requirements.html#requirements" class = "" > Requirements< / a >
< / li >
< li >
< a href = "guides/usage/installation.html#installation" class = "" > Installation< / a >
< / li >
< / ul >
< h4 class = "phpdocumentor-sidebar__root-namespace" >
< a href = "guides/changelog.html#changelog" class = "" > Changelog< / a >
< / h4 >
< / section >
< section class = "phpdocumentor-sidebar__category -namespaces" >
< h2 class = "phpdocumentor-sidebar__category-header" > Namespaces< / h2 >
< h4 class = "phpdocumentor-sidebar__root-namespace" >
< a href = "namespaces/occ.html" class = "" > OCC< / a >
< / h4 >
< ul class = "phpdocumentor-list" >
< li >
< a href = "namespaces/occ-basics.html" class = "" > Basics< / a >
< / li >
< / ul >
< / section >
< section class = "phpdocumentor-sidebar__category -packages" >
< h2 class = "phpdocumentor-sidebar__category-header" > Packages< / h2 >
< h4 class = "phpdocumentor-sidebar__root-namespace" >
< a href = "packages/Basics.html" class = "" > Basics< / a >
< / h4 >
< ul class = "phpdocumentor-list" >
< li >
< a href = "packages/Basics-DataStructures.html" class = "" > DataStructures< / a >
< / li >
< li >
< a href = "packages/Basics-ErrorHandlers.html" class = "" > ErrorHandlers< / a >
< / li >
< li >
< a href = "packages/Basics-Interfaces.html" class = "" > Interfaces< / a >
< / li >
< li >
< a href = "packages/Basics-Traits.html" class = "" > Traits< / a >
< / li >
< / ul >
< / section >
< section class = "phpdocumentor-sidebar__category -reports" >
< h2 class = "phpdocumentor-sidebar__category-header" > Reports< / h2 >
< h3 class = "phpdocumentor-sidebar__root-package" > < a href = "reports/deprecated.html" > Deprecated< / a > < / h3 >
< h3 class = "phpdocumentor-sidebar__root-package" > < a href = "reports/errors.html" > Errors< / a > < / h3 >
< h3 class = "phpdocumentor-sidebar__root-package" > < a href = "reports/markers.html" > Markers< / a > < / h3 >
< / section >
< section class = "phpdocumentor-sidebar__category -indices" >
< h2 class = "phpdocumentor-sidebar__category-header" > Indices< / h2 >
< h3 class = "phpdocumentor-sidebar__root-package" > < a href = "indices/files.html" > Files< / a > < / h3 >
< / section >
< / aside >
< div class = "phpdocumentor-column -nine phpdocumentor-content" >
< div class = "section" id = "error-and-exception-handlers" >
< h1 > Error and Exception Handlers< / h1 >
< div class = "admonition-wrapper" >
2024-03-31 17:41:04 +02:00
< div class = "admonition admonition-sidebar" > < p class = "sidebar-title" > API Documentation< / p >
< ul >
< li > < a href = "classes/OCC-Basics-ErrorHandlers-ThrowErrorException.html" > < abbr title = "\OCC\Basics\ErrorHandlers\ThrowErrorException" > ThrowErrorException< / abbr > < / a >
< / li >
< / ul >
2024-03-26 20:10:30 +01:00
< / div >
< / div >
< div class = "section" id = "throwerrorexception" >
< h2 > ThrowErrorException< / h2 >
2024-03-31 17:41:04 +02:00
< p > < em > Throws internal errors as exceptions.< / em > < / p >
< p > If registered as error handler, this handles an internal PHP error by converting it into an < a href = "https://www.php.net/errorexception" > \ErrorException< / a > . It respects the < a href = "https://www.php.net/error_reporting" > error_reporting< / a >
directive by only throwing an exception if the severity of the internal error is the same or higher than the setting.< / p >
< blockquote > < p > Usage:< / p > < pre > < code class = "language-php" > set_error_handler(new ThrowErrorException());< / code > < / pre > < / blockquote >
< div class = "phpdocumentor-admonition caution" >
< svg class = "phpdocumentor-admonition__icon" fill = "none" stroke = "currentColor" viewBox = "0 0 24 24" xmlns = "http://www.w3.org/2000/svg" > < path stroke-linecap = "round" stroke-linejoin = "round" stroke-width = "2" d = "M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z" > < / path > < / svg >
< article >
< p > By design user-defined error handlers can' t handle errors of severity < code > E_ERROR< / code > , < code > E_PARSE< / code > , < code > E_CORE_ERROR< / code > ,
< code > E_CORE_WARNING< / code > , < code > E_COMPILE_ERROR< / code > , < code > E_COMPILE_WARNING< / code > and most of < code > E_STRICT< / code > .< / p >
< / article >
< / div >
< div class = "admonition-wrapper" >
< div class = "admonition admonition-sidebar" > < p class = "sidebar-title" > API Documentation< / p >
< ul >
< li > < a href = "classes/OCC-Basics-ErrorHandlers-TriggerExceptionError.html" > < abbr title = "\OCC\Basics\ErrorHandlers\TriggerExceptionError" > TriggerExceptionError< / abbr > < / a >
< / li >
< / ul >
< / div >
< / div >
2024-03-26 20:10:30 +01:00
< / div >
< div class = "section" id = "triggerexceptionerror" >
< h2 > TriggerExceptionError< / h2 >
2024-03-31 17:41:04 +02:00
< p > < em > Triggers errors for uncaught exceptions.< / em > < / p >
< p > If registered as exception handler, this catches an uncaught exception and converts it into an internal PHP error of
severity < code > E_USER_ERROR< / code > .< / p >
< blockquote > < p > Usage:< / p > < pre > < code class = "language-php" > set_exception_handler(new TriggerExceptionError());< / code > < / pre > < / blockquote >
2024-03-26 20:10:30 +01:00
< / div >
< / div >
< / div >
< section data-search-results class = "phpdocumentor-search-results phpdocumentor-search-results--hidden" >
< section class = "phpdocumentor-search-results__dialog" >
< header class = "phpdocumentor-search-results__header" >
< h2 class = "phpdocumentor-search-results__title" > Search results< / h2 >
< button class = "phpdocumentor-search-results__close" > < i class = "fas fa-times" > < / i > < / button >
< / header >
< section class = "phpdocumentor-search-results__body" >
< ul class = "phpdocumentor-search-results__entries" > < / ul >
< / section >
< / section >
< / section >
< / div >
< a href = "guides/overview/errorhandlers.html#top" class = "phpdocumentor-back-to-top" > < i class = "fas fa-chevron-circle-up" > < / i > < / a >
< / main >
< script >
cssVars({});
< / script >
< script src = "https://cdn.jsdelivr.net/npm/prismjs@1.23.0/prism.min.js" > < / script >
< script src = "https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/autoloader/prism-autoloader.min.js" > < / script >
< script src = "https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.min.js" > < / script >
< script src = "https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.min.js" > < / script >
< / body >
< / html >