{"id":28967,"date":"2018-11-12T14:55:57","date_gmt":"2018-11-12T12:55:57","guid":{"rendered":"https:\/\/mamchenkov.net\/wordpress\/?p=28967"},"modified":"2018-11-12T14:55:57","modified_gmt":"2018-11-12T12:55:57","slug":"brick-math-arbitrary-precision-arithmetic-library-for-php","status":"publish","type":"post","link":"https:\/\/mamchenkov.net\/wordpress\/2018\/11\/12\/brick-math-arbitrary-precision-arithmetic-library-for-php\/","title":{"rendered":"brick\/math &#8211; Arbitrary-precision arithmetic library for PHP"},"content":{"rendered":"<!-- google_ad_section_start -->\n<p>PHP is well-known for its rather basic interpretation of <a href=\"http:\/\/php.net\/manual\/en\/language.types.float.php\">precision numbers<\/a> and operations on those.\u00a0 <a href=\"http:\/\/php.net\/manual\/en\/book.bc.php\">BC Match extension<\/a> helps, but sometimes one needs more.\u00a0 <a href=\"https:\/\/github.com\/brick\/math\">brick\/math<\/a> is a composer-installable library that helps with arbitrary-precision arithmetic.<\/p>\n<!-- google_ad_section_end -->\n","protected":false},"excerpt":{"rendered":"<!-- google_ad_section_start -->\n<p>PHP is well-known for its rather basic interpretation of precision numbers and operations on those.\u00a0 BC Match extension helps, but sometimes one needs more.\u00a0 brick\/math is a composer-installable library that helps with arbitrary-precision arithmetic.<\/p>\n<!-- google_ad_section_end -->\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"brick\/math - Arbitrary-precision arithmetic library for PHP #WebDev #PHP #math","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false,"_links_to":"","_links_to_target":""},"categories":[1,18,62,1334],"tags":[1101,38,1330],"keyring_services":[],"class_list":["post-28967","post","type-post","status-publish","format-standard","hentry","category-general","category-programming","category-technology","category-web-work","tag-math","tag-php","tag-web-development"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.8 - aioseo.com -->\n\t<meta name=\"description\" content=\"PHP is well-known for its rather basic interpretation of precision numbers and operations on those. BC Match extension helps, but sometimes one needs more. brick\/math is a composer-installable library that helps with arbitrary-precision arithmetic.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Leonid Mamchenkov\"\/>\n\t<meta name=\"google-site-verification\" content=\"VHvdD0_usx1_4DzKy_QCVcICVgX2EgA2ybELT-wl7kQ\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/mamchenkov.net\/wordpress\/2018\/11\/12\/brick-math-arbitrary-precision-arithmetic-library-for-php\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.8\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Leonid Mamchenkov - Life, universe, and everything else\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"brick\/math \u2013 Arbitrary-precision arithmetic library for PHP - Leonid Mamchenkov\" \/>\n\t\t<meta property=\"og:description\" content=\"PHP is well-known for its rather basic interpretation of precision numbers and operations on those. BC Match extension helps, but sometimes one needs more. brick\/math is a composer-installable library that helps with arbitrary-precision arithmetic.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/mamchenkov.net\/wordpress\/2018\/11\/12\/brick-math-arbitrary-precision-arithmetic-library-for-php\/\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"1024\" \/>\n\t\t<meta property=\"og:image:height\" content=\"1024\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2018-11-12T12:55:57+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2018-11-12T12:55:57+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/MamchenkovBlog\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:site\" content=\"@mamchenkov\" \/>\n\t\t<meta name=\"twitter:title\" content=\"brick\/math \u2013 Arbitrary-precision arithmetic library for PHP - Leonid Mamchenkov\" \/>\n\t\t<meta name=\"twitter:description\" content=\"PHP is well-known for its rather basic interpretation of precision numbers and operations on those. BC Match extension helps, but sometimes one needs more. brick\/math is a composer-installable library that helps with arbitrary-precision arithmetic.\" \/>\n\t\t<meta name=\"twitter:creator\" content=\"@mamchenkov\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BlogPosting\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2018\\\/11\\\/12\\\/brick-math-arbitrary-precision-arithmetic-library-for-php\\\/#blogposting\",\"name\":\"brick\\\/math \\u2013 Arbitrary-precision arithmetic library for PHP - Leonid Mamchenkov\",\"headline\":\"brick\\\/math &#8211; Arbitrary-precision arithmetic library for PHP\",\"author\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#person\"},\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2018\\\/11\\\/12\\\/brick-math-arbitrary-precision-arithmetic-library-for-php\\\/#articleImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g\",\"width\":96,\"height\":96,\"caption\":\"Leonid Mamchenkov\"},\"datePublished\":\"2018-11-12T14:55:57+02:00\",\"dateModified\":\"2018-11-12T14:55:57+02:00\",\"inLanguage\":\"en-US\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2018\\\/11\\\/12\\\/brick-math-arbitrary-precision-arithmetic-library-for-php\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2018\\\/11\\\/12\\\/brick-math-arbitrary-precision-arithmetic-library-for-php\\\/#webpage\"},\"articleSection\":\"All, Programming, Technology, Web work, math, PHP, web development\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2018\\\/11\\\/12\\\/brick-math-arbitrary-precision-arithmetic-library-for-php\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/#listItem\",\"name\":\"Technology\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/#listItem\",\"position\":2,\"name\":\"Technology\",\"item\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/programming\\\/#listItem\",\"name\":\"Programming\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/programming\\\/#listItem\",\"position\":3,\"name\":\"Programming\",\"item\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/programming\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2018\\\/11\\\/12\\\/brick-math-arbitrary-precision-arithmetic-library-for-php\\\/#listItem\",\"name\":\"brick\\\/math &#8211; Arbitrary-precision arithmetic library for PHP\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/#listItem\",\"name\":\"Technology\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2018\\\/11\\\/12\\\/brick-math-arbitrary-precision-arithmetic-library-for-php\\\/#listItem\",\"position\":4,\"name\":\"brick\\\/math &#8211; Arbitrary-precision arithmetic library for PHP\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/programming\\\/#listItem\",\"name\":\"Programming\"}}]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#person\",\"name\":\"Leonid Mamchenkov\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2018\\\/11\\\/12\\\/brick-math-arbitrary-precision-arithmetic-library-for-php\\\/#personImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g\",\"width\":96,\"height\":96,\"caption\":\"Leonid Mamchenkov\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\",\"url\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/\",\"name\":\"Leonid Mamchenkov\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2018\\\/11\\\/12\\\/brick-math-arbitrary-precision-arithmetic-library-for-php\\\/#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g\",\"width\":96,\"height\":96,\"caption\":\"Leonid Mamchenkov\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2018\\\/11\\\/12\\\/brick-math-arbitrary-precision-arithmetic-library-for-php\\\/#webpage\",\"url\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2018\\\/11\\\/12\\\/brick-math-arbitrary-precision-arithmetic-library-for-php\\\/\",\"name\":\"brick\\\/math \\u2013 Arbitrary-precision arithmetic library for PHP - Leonid Mamchenkov\",\"description\":\"PHP is well-known for its rather basic interpretation of precision numbers and operations on those. BC Match extension helps, but sometimes one needs more. brick\\\/math is a composer-installable library that helps with arbitrary-precision arithmetic.\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2018\\\/11\\\/12\\\/brick-math-arbitrary-precision-arithmetic-library-for-php\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\"},\"datePublished\":\"2018-11-12T14:55:57+02:00\",\"dateModified\":\"2018-11-12T14:55:57+02:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#website\",\"url\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/\",\"name\":\"Blog of Leonid Mamchenkov\",\"description\":\"Life, universe, and everything else\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#person\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"brick\/math \u2013 Arbitrary-precision arithmetic library for PHP - Leonid Mamchenkov","description":"PHP is well-known for its rather basic interpretation of precision numbers and operations on those. BC Match extension helps, but sometimes one needs more. brick\/math is a composer-installable library that helps with arbitrary-precision arithmetic.","canonical_url":"https:\/\/mamchenkov.net\/wordpress\/2018\/11\/12\/brick-math-arbitrary-precision-arithmetic-library-for-php\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"google-site-verification":"VHvdD0_usx1_4DzKy_QCVcICVgX2EgA2ybELT-wl7kQ","miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BlogPosting","@id":"https:\/\/mamchenkov.net\/wordpress\/2018\/11\/12\/brick-math-arbitrary-precision-arithmetic-library-for-php\/#blogposting","name":"brick\/math \u2013 Arbitrary-precision arithmetic library for PHP - Leonid Mamchenkov","headline":"brick\/math &#8211; Arbitrary-precision arithmetic library for PHP","author":{"@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author"},"publisher":{"@id":"https:\/\/mamchenkov.net\/wordpress\/#person"},"image":{"@type":"ImageObject","@id":"https:\/\/mamchenkov.net\/wordpress\/2018\/11\/12\/brick-math-arbitrary-precision-arithmetic-library-for-php\/#articleImage","url":"https:\/\/secure.gravatar.com\/avatar\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g","width":96,"height":96,"caption":"Leonid Mamchenkov"},"datePublished":"2018-11-12T14:55:57+02:00","dateModified":"2018-11-12T14:55:57+02:00","inLanguage":"en-US","mainEntityOfPage":{"@id":"https:\/\/mamchenkov.net\/wordpress\/2018\/11\/12\/brick-math-arbitrary-precision-arithmetic-library-for-php\/#webpage"},"isPartOf":{"@id":"https:\/\/mamchenkov.net\/wordpress\/2018\/11\/12\/brick-math-arbitrary-precision-arithmetic-library-for-php\/#webpage"},"articleSection":"All, Programming, Technology, Web work, math, PHP, web development"},{"@type":"BreadcrumbList","@id":"https:\/\/mamchenkov.net\/wordpress\/2018\/11\/12\/brick-math-arbitrary-precision-arithmetic-library-for-php\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress#listItem","position":1,"name":"Home","item":"https:\/\/mamchenkov.net\/wordpress","nextItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/#listItem","name":"Technology"}},{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/#listItem","position":2,"name":"Technology","item":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/","nextItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/#listItem","name":"Programming"},"previousItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/#listItem","position":3,"name":"Programming","item":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/","nextItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/2018\/11\/12\/brick-math-arbitrary-precision-arithmetic-library-for-php\/#listItem","name":"brick\/math &#8211; Arbitrary-precision arithmetic library for PHP"},"previousItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/#listItem","name":"Technology"}},{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/2018\/11\/12\/brick-math-arbitrary-precision-arithmetic-library-for-php\/#listItem","position":4,"name":"brick\/math &#8211; Arbitrary-precision arithmetic library for PHP","previousItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/#listItem","name":"Programming"}}]},{"@type":"Person","@id":"https:\/\/mamchenkov.net\/wordpress\/#person","name":"Leonid Mamchenkov","image":{"@type":"ImageObject","@id":"https:\/\/mamchenkov.net\/wordpress\/2018\/11\/12\/brick-math-arbitrary-precision-arithmetic-library-for-php\/#personImage","url":"https:\/\/secure.gravatar.com\/avatar\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g","width":96,"height":96,"caption":"Leonid Mamchenkov"}},{"@type":"Person","@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author","url":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/","name":"Leonid Mamchenkov","image":{"@type":"ImageObject","@id":"https:\/\/mamchenkov.net\/wordpress\/2018\/11\/12\/brick-math-arbitrary-precision-arithmetic-library-for-php\/#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g","width":96,"height":96,"caption":"Leonid Mamchenkov"}},{"@type":"WebPage","@id":"https:\/\/mamchenkov.net\/wordpress\/2018\/11\/12\/brick-math-arbitrary-precision-arithmetic-library-for-php\/#webpage","url":"https:\/\/mamchenkov.net\/wordpress\/2018\/11\/12\/brick-math-arbitrary-precision-arithmetic-library-for-php\/","name":"brick\/math \u2013 Arbitrary-precision arithmetic library for PHP - Leonid Mamchenkov","description":"PHP is well-known for its rather basic interpretation of precision numbers and operations on those. BC Match extension helps, but sometimes one needs more. brick\/math is a composer-installable library that helps with arbitrary-precision arithmetic.","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/mamchenkov.net\/wordpress\/#website"},"breadcrumb":{"@id":"https:\/\/mamchenkov.net\/wordpress\/2018\/11\/12\/brick-math-arbitrary-precision-arithmetic-library-for-php\/#breadcrumblist"},"author":{"@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author"},"creator":{"@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author"},"datePublished":"2018-11-12T14:55:57+02:00","dateModified":"2018-11-12T14:55:57+02:00"},{"@type":"WebSite","@id":"https:\/\/mamchenkov.net\/wordpress\/#website","url":"https:\/\/mamchenkov.net\/wordpress\/","name":"Blog of Leonid Mamchenkov","description":"Life, universe, and everything else","inLanguage":"en-US","publisher":{"@id":"https:\/\/mamchenkov.net\/wordpress\/#person"}}]},"og:locale":"en_US","og:site_name":"Leonid Mamchenkov - Life, universe, and everything else","og:type":"article","og:title":"brick\/math \u2013 Arbitrary-precision arithmetic library for PHP - Leonid Mamchenkov","og:description":"PHP is well-known for its rather basic interpretation of precision numbers and operations on those. BC Match extension helps, but sometimes one needs more. brick\/math is a composer-installable library that helps with arbitrary-precision arithmetic.","og:url":"https:\/\/mamchenkov.net\/wordpress\/2018\/11\/12\/brick-math-arbitrary-precision-arithmetic-library-for-php\/","og:image":"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg","og:image:secure_url":"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg","og:image:width":1024,"og:image:height":1024,"article:published_time":"2018-11-12T12:55:57+00:00","article:modified_time":"2018-11-12T12:55:57+00:00","article:publisher":"https:\/\/www.facebook.com\/MamchenkovBlog","twitter:card":"summary_large_image","twitter:site":"@mamchenkov","twitter:title":"brick\/math \u2013 Arbitrary-precision arithmetic library for PHP - Leonid Mamchenkov","twitter:description":"PHP is well-known for its rather basic interpretation of precision numbers and operations on those. BC Match extension helps, but sometimes one needs more. brick\/math is a composer-installable library that helps with arbitrary-precision arithmetic.","twitter:creator":"@mamchenkov","twitter:image":"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg"},"aioseo_meta_data":{"post_id":"28967","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"BlogPosting","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"ai":null,"created":"2023-07-19 17:34:22","updated":"2026-01-15 13:50:44","seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/mamchenkov.net\/wordpress\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/\" title=\"Technology\">Technology<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/\" title=\"Programming\">Programming<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tbrick\/math \u2013 Arbitrary-precision arithmetic library for PHP\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/mamchenkov.net\/wordpress"},{"label":"Technology","link":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/"},{"label":"Programming","link":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/"},{"label":"brick\/math &#8211; Arbitrary-precision arithmetic library for PHP","link":"https:\/\/mamchenkov.net\/wordpress\/2018\/11\/12\/brick-math-arbitrary-precision-arithmetic-library-for-php\/"}],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack-related-posts":[{"id":27844,"url":"https:\/\/mamchenkov.net\/wordpress\/2017\/08\/14\/secure-headers-a-php-library-for-easier-management-of-browser-security-features\/","url_meta":{"origin":28967,"position":0},"title":"Secure Headers &#8211; a PHP library for easier management of browser security features","author":"Leonid Mamchenkov","date":"August 14, 2017","format":false,"excerpt":"Modern browsers offer a variety of security mechanisms for web developers. \u00a0Unfortunately, some of these aren't so easy to manage. \u00a0One needs a deep understanding of the functionality as well as theory behind. \u00a0Secure Headers is a library that makes all that work a lot easier for PHP developers. \u00a0Here\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":28454,"url":"https:\/\/mamchenkov.net\/wordpress\/2018\/03\/26\/threadable-a-php-library-for-parallel-execution\/","url_meta":{"origin":28967,"position":1},"title":"Threadable &#8211; a PHP library for parallel execution","author":"Leonid Mamchenkov","date":"March 26, 2018","format":false,"excerpt":"Threadable is a PHP library that helps with building applications that need to run multiple threads in parallel.\u00a0 It relies on posix and pcntl PHP extensions and does all the heavy lifting of process control.\u00a0 I find this very useful, as not many PHP developers are familiar with process management.","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":28654,"url":"https:\/\/mamchenkov.net\/wordpress\/2018\/07\/01\/laravolt-avatar-plug-n-play-php-library-for-quick-dynamic-avatars\/","url_meta":{"origin":28967,"position":2},"title":"laravolt\/avatar &#8211; plug-n-play PHP library for quick dynamic avatars","author":"Leonid Mamchenkov","date":"July 1, 2018","format":false,"excerpt":"laravolt\/avatar is a PHP library that helps to avoid those old and boring anonymous face pictures for users who haven't uploaded or configured their avatar in your application.\u00a0 With library you can use any string - name, email, initials, or anything else you fancy - to generate a dynamic avatar\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2018\/07\/avatar-500x215.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":28842,"url":"https:\/\/mamchenkov.net\/wordpress\/2018\/10\/09\/php-excel-templator\/","url_meta":{"origin":28967,"position":3},"title":"PHP Excel Templator","author":"Leonid Mamchenkov","date":"October 9, 2018","format":false,"excerpt":"PHP Excel Templator is a PHP library that helps with generating Excel files based on the templates and placeholders.\u00a0 The documentation shows a few examples which look surprisingly short. Found via this article (in Russian).","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2018\/10\/php-excel-500x244.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":29074,"url":"https:\/\/mamchenkov.net\/wordpress\/2018\/12\/10\/php-password-exposed-helper-function\/","url_meta":{"origin":28967,"position":4},"title":"PHP &#8211; Password Exposed Helper Function","author":"Leonid Mamchenkov","date":"December 10, 2018","format":false,"excerpt":"Password Exposed Helper Function is a tiny PHP library that helps checking user passwords against the Have I Been P0wned website API. This is quite common new functionality on many websites and services (see GitHub, for example), which is now available as a quick composer dependency for your PHP projects.","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2018\/12\/password-exposed.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2018\/12\/password-exposed.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2018\/12\/password-exposed.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2018\/12\/password-exposed.png?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2018\/12\/password-exposed.png?resize=1050%2C600&ssl=1 3x"},"classes":[]},{"id":28453,"url":"https:\/\/mamchenkov.net\/wordpress\/2018\/03\/26\/systemdaemon-simple-base-for-system-daemons-in-php\/","url_meta":{"origin":28967,"position":5},"title":"SystemDaemon &#8211;  Simple base for system daemons in PHP","author":"Leonid Mamchenkov","date":"March 26, 2018","format":false,"excerpt":"SystemDaemon is a library that helps with writing system daemons and services in PHP.\u00a0 PHP is not my personal favorite language for such tasks, but there is often a need, despite the preference.\u00a0 Some examples are: scheduled tasks (cron jobs) that need to execute more often than once per minute\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"jetpack_sharing_enabled":true,"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts\/28967","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/comments?post=28967"}],"version-history":[{"count":0,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts\/28967\/revisions"}],"wp:attachment":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/media?parent=28967"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/categories?post=28967"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/tags?post=28967"},{"taxonomy":"keyring_services","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/keyring_services?post=28967"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}