{"id":793,"date":"2021-02-03T16:31:01","date_gmt":"2021-02-03T19:31:01","guid":{"rendered":"https:\/\/diblet.com\/blog\/?p=793"},"modified":"2021-02-03T16:36:56","modified_gmt":"2021-02-03T19:36:56","slug":"principales-novedades-de-php8","status":"publish","type":"post","link":"https:\/\/diblet.com\/blog\/principales-novedades-de-php8\/","title":{"rendered":"Principales novedades de PHP 8"},"content":{"rendered":"<p>Hace pocas semanas se ha liberado la \u00faltima versi\u00f3n de PHP. En los \u00faltimos tiempos el lenguaje m\u00e1s popular de la web ha experimentado diversas mejoras de rendimiento y seguridad.<\/p>\n<p>Nos agrada dar la noticia de que <strong>PHP 8 ya est\u00e1 disponible en todos nuestros planes de hosting compartido<\/strong> y para celebrar esta noticia en esta oportunidad mencionaremos 3 novedades sobresalientes de la nueva versi\u00f3n de este lenguaje.<\/p>\n<h2>1. Atributos<\/h2>\n<p>Los atributos (o mejor conocidos como annotations) son una utilidad ya conocida por los programadores de PHP, sin embargo, hasta ahora estas declaraciones no eran nativas del lenguaje. A partir de ahora lo son. Los atributos son una forma flexible de definir metadatos que pueden servir como configuraci\u00f3n y que pueden ser le\u00eddos en tiempo de ejecuci\u00f3n. Estos pueden ser usados en funciones, par\u00e1metros, propiedades y constantes de clase.<\/p>\n<p><strong>Ejemplo de sintaxis<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"php\">\u00a0\r\nclass TestController\r\n{\r\n    #[Route(\"\/api\/posts\/{id}\", methods: [\"GET\"])]\r\n    public function get($id) { \/* ... *\/ }\r\n}\r\n\u00a0\r\n\r\n<\/pre>\n<h2>2. Operador nullsafe<\/h2>\n<p>A partir de esta versi\u00f3n tenemos una forma sencilla de evaluar un elemento utilizando el operador de nullsafe. Este operador nos evitar\u00e1 tener que escribir condiciones para analizar si una expresi\u00f3n es nula. En PHP 8 esta comprobaci\u00f3n es autom\u00e1tica. Solo debemos ejecutar nuestra sentencia y, en caso de encontrar un elemento nulo, la expresi\u00f3n completa retornar\u00e1 null.<\/p>\n<p><strong>Ejemplo de sintaxis<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"php\">\u00a0\r\n$country = $session?-&gt;user?-&gt;getAddress()?-&gt;country;\r\n\u00a0\r\n<\/pre>\n<h2>3. Expresiones match<\/h2>\n<p>Las expresiones match son una versi\u00f3n mejorada del cl\u00e1sico case. Match nos permite comparar un valor contra m\u00faltiples alternativas. En esta nueva expresi\u00f3n no hace falta utilizar break, las comparaciones son estrictas y tenemos una sintaxis ligeramente diferente.<\/p>\n<p><strong>Ejemplo de sintaxis<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"php\">\u00a0\r\n$result = match ($x) {\r\n    9, 10, 11 =&gt; 'Valor 1',\r\n    15 =&gt; 'Valor 2',\r\n    18 =&gt; 'Valor 3',\r\n    20 =&gt; 'Valor 4',\r\n};\r\n\u00a0\r\n<\/pre>\n<p>\u00bfTe interesa conocer la lista completa de caracter\u00edsticas? Puedes <a href=\"https:\/\/www.php.net\/releases\/8.0\/en.php\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">verla aqu\u00ed<\/a>. Para adquirir un plan de hosting PHP 8 en Diblet puedes <a href=\"https:\/\/diblet.com\/hosting\/\">ingresar aqu\u00ed<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Hace pocas semanas se ha liberado la &uacute;ltima versi&oacute;n de PHP. En los &uacute;ltimos tiempos el lenguaje m&aacute;s popular de la web ha experimentado diversas mejoras de rendimiento y seguridad. [&hellip;]<\/p>\n","protected":false},"author":5,"featured_media":818,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[33,22],"tags":[67],"class_list":["post-793","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-destacado","category-programacion","tag-php"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v16.0.2 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Principales novedades de PHP 8 - Diblet<\/title>\n<link rel=\"canonical\" href=\"https:\/\/diblet.com\/blog\/principales-novedades-de-php8\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Principales novedades de PHP 8 - Diblet\" \/>\n<meta property=\"og:description\" content=\"Hace pocas semanas se ha liberado la &uacute;ltima versi&oacute;n de PHP. En los &uacute;ltimos tiempos el lenguaje m&aacute;s popular de la web ha experimentado diversas mejoras de rendimiento y seguridad. [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/diblet.com\/blog\/principales-novedades-de-php8\/\" \/>\n<meta property=\"og:site_name\" content=\"Diblet\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/dibletweb\/\" \/>\n<meta property=\"article:published_time\" content=\"2021-02-03T19:31:01+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-02-03T19:36:56+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/diblet.com\/blog\/wp-content\/uploads\/2021\/02\/diblet_com_php8.png\" \/>\n\t<meta property=\"og:image:width\" content=\"901\" \/>\n\t<meta property=\"og:image:height\" content=\"788\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@dibletweb\" \/>\n<meta name=\"twitter:site\" content=\"@dibletweb\" \/>\n<meta name=\"twitter:label1\" content=\"Tiempo de lectura\">\n\t<meta name=\"twitter:data1\" content=\"2 minutos\">\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https:\/\/diblet.com\/blog\/#organization\",\"name\":\"Diblet.com\",\"url\":\"https:\/\/diblet.com\/blog\/\",\"sameAs\":[\"https:\/\/www.facebook.com\/dibletweb\/\",\"https:\/\/twitter.com\/dibletweb\"],\"logo\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/diblet.com\/blog\/#logo\",\"inLanguage\":\"es-AR\",\"url\":\"https:\/\/diblet.com\/blog\/wp-content\/uploads\/2016\/02\/demo-1.jpg\",\"width\":846,\"height\":427,\"caption\":\"Diblet.com\"},\"image\":{\"@id\":\"https:\/\/diblet.com\/blog\/#logo\"}},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/diblet.com\/blog\/#website\",\"url\":\"https:\/\/diblet.com\/blog\/\",\"name\":\"Diblet\",\"description\":\"Blog sobre Tecnolog\\u00eda &amp; Programaci\\u00f3n\",\"publisher\":{\"@id\":\"https:\/\/diblet.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":\"https:\/\/diblet.com\/blog\/?s={search_term_string}\",\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"es-AR\"},{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/diblet.com\/blog\/principales-novedades-de-php8\/#primaryimage\",\"inLanguage\":\"es-AR\",\"url\":\"https:\/\/diblet.com\/blog\/wp-content\/uploads\/2021\/02\/diblet_com_php8.png\",\"width\":901,\"height\":788},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/diblet.com\/blog\/principales-novedades-de-php8\/#webpage\",\"url\":\"https:\/\/diblet.com\/blog\/principales-novedades-de-php8\/\",\"name\":\"Principales novedades de PHP 8 - Diblet\",\"isPartOf\":{\"@id\":\"https:\/\/diblet.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/diblet.com\/blog\/principales-novedades-de-php8\/#primaryimage\"},\"datePublished\":\"2021-02-03T19:31:01+00:00\",\"dateModified\":\"2021-02-03T19:36:56+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/diblet.com\/blog\/principales-novedades-de-php8\/#breadcrumb\"},\"inLanguage\":\"es-AR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/diblet.com\/blog\/principales-novedades-de-php8\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/diblet.com\/blog\/principales-novedades-de-php8\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"item\":{\"@type\":\"WebPage\",\"@id\":\"https:\/\/diblet.com\/blog\/\",\"url\":\"https:\/\/diblet.com\/blog\/\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"position\":2,\"item\":{\"@type\":\"WebPage\",\"@id\":\"https:\/\/diblet.com\/blog\/principales-novedades-de-php8\/\",\"url\":\"https:\/\/diblet.com\/blog\/principales-novedades-de-php8\/\",\"name\":\"Principales novedades de PHP 8\"}}]},{\"@type\":\"Article\",\"@id\":\"https:\/\/diblet.com\/blog\/principales-novedades-de-php8\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/diblet.com\/blog\/principales-novedades-de-php8\/#webpage\"},\"author\":{\"@id\":\"https:\/\/diblet.com\/blog\/#\/schema\/person\/0174989c486265ed82a2bc3a0dff0216\"},\"headline\":\"Principales novedades de PHP 8\",\"datePublished\":\"2021-02-03T19:31:01+00:00\",\"dateModified\":\"2021-02-03T19:36:56+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/diblet.com\/blog\/principales-novedades-de-php8\/#webpage\"},\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/diblet.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/diblet.com\/blog\/principales-novedades-de-php8\/#primaryimage\"},\"keywords\":\"php\",\"articleSection\":\"Destacado,Programaci\\u00f3n\",\"inLanguage\":\"es-AR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/diblet.com\/blog\/principales-novedades-de-php8\/#respond\"]}]},{\"@type\":\"Person\",\"@id\":\"https:\/\/diblet.com\/blog\/#\/schema\/person\/0174989c486265ed82a2bc3a0dff0216\",\"name\":\"John Tesla\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/diblet.com\/blog\/#personlogo\",\"inLanguage\":\"es-AR\",\"url\":\"https:\/\/diblet.com\/blog\/wp-content\/uploads\/2021\/01\/99576445_p05t65b9-150x150.jpg\",\"caption\":\"John Tesla\"},\"sameAs\":[\"https:\/\/diblet.com\/\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","_links":{"self":[{"href":"https:\/\/diblet.com\/blog\/wp-json\/wp\/v2\/posts\/793","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/diblet.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/diblet.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/diblet.com\/blog\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/diblet.com\/blog\/wp-json\/wp\/v2\/comments?post=793"}],"version-history":[{"count":24,"href":"https:\/\/diblet.com\/blog\/wp-json\/wp\/v2\/posts\/793\/revisions"}],"predecessor-version":[{"id":1077,"href":"https:\/\/diblet.com\/blog\/wp-json\/wp\/v2\/posts\/793\/revisions\/1077"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/diblet.com\/blog\/wp-json\/wp\/v2\/media\/818"}],"wp:attachment":[{"href":"https:\/\/diblet.com\/blog\/wp-json\/wp\/v2\/media?parent=793"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/diblet.com\/blog\/wp-json\/wp\/v2\/categories?post=793"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/diblet.com\/blog\/wp-json\/wp\/v2\/tags?post=793"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}