{"id":1831,"date":"2005-12-30T12:18:21","date_gmt":"2005-12-30T10:18:21","guid":{"rendered":"https:\/\/www.fullo.net\/blog\/?p=1831"},"modified":"2005-12-30T12:26:19","modified_gmt":"2005-12-30T10:26:19","slug":"php-e-programmazione-fluente","status":"publish","type":"post","link":"https:\/\/www.fullo.net\/blog\/2005\/12\/30\/php-e-programmazione-fluente\/","title":{"rendered":"PHP e programmazione fluente"},"content":{"rendered":"<p>Leggo con un certo interesse del nuovo meme di planet-php, cio\u00e8  <a href=\"http:\/\/andigutmans.blogspot.com\/2005\/12\/fluent-interfaces.html\">dell&#8217;uso di <\/a> <a href=\"http:\/\/paul-m-jones.com\/blog\/?p=188\">interfacce<\/a> <a href=\"http:\/\/www.mikenaberezny.com\/archives\/35\">fluent<\/a>.<\/p>\n<p>A seguire un piccolo tutorial su come utilizzarle.<\/p>\n<p><!--more--><\/p>\n<p>In cosa consistono le interfaccie fluent? Detto in maniera semplice si tratta del principio di <em>method chaining<\/em> di linguaggi come SmallTalk che comporta l&#8217;esecuzione metodi in cascata senza dichiarare ogni volta l&#8217;oggetto, in modo da poter leggerne il codice <em>fluentemente<\/em> come se fosse una frase. <\/p>\n<p>Cio\u00e8 invece che scrivere:<\/p>\n<p>[php]<br \/>\n$pippo = new Oggetto();<br \/>\n$pippo->faccioQuesto();<br \/>\n$pippo->poiQuello();<br \/>\n$pippo->eQuellaltro();<br \/>\n[\/php]<\/p>\n<p>usando un&#8217;interfaccia fluent riscrivo cos\u00ec:<\/p>\n<p>[php]<br \/>\n$pippo= new Oggetto();<br \/>\n$pippo->faccioQuesto()->poiQuello()->eQuellaltro();<br \/>\n[\/php]<\/p>\n<p>che pu\u00f2 essere poi reso pi\u00f9 leggibile grazie alla gestione degli spazi e degli a capo di php ed usando un&#8217;opportuna tabulazione<\/p>\n<p>[php]<br \/>\n$pippo= new Oggetto();<br \/>\n$pippo->faccioQuesto()<br \/>\n            ->poiQuello()<br \/>\n            ->eQuellaltro();<br \/>\n[\/php]<\/p>\n<p>ma come funziona un codice del genere? semplicemente restituendo all&#8217;interno dei metodi sempre l&#8217;oggetto iniziale<\/p>\n<p>[php]<br \/>\nclass Oggetto()<br \/>\n{<br \/>\n            var $variabile = &#8221;;<\/p>\n<p>            function public faccioQuesto()<br \/>\n            {<br \/>\n                        echo &#8216;ciao&#8217;;<br \/>\n                        return $this;<br \/>\n            }<\/p>\n<p>            function public poiQuello()<br \/>\n            {<br \/>\n                       $this->poiQuelloPrivato();<br \/>\n                       return $this;<br \/>\n            }<\/p>\n<p>            function public eQuellaltro()<br \/>\n            {<br \/>\n                        echo $this->variabile;<br \/>\n                        return $this;<br \/>\n            }<\/p>\n<p>            function private poiQuelloPrivato()<br \/>\n            {<br \/>\n                        $this->variabile = &#8216;mondo&#8217;;<br \/>\n            }<br \/>\n}<br \/>\n[\/php]<\/p>\n<p>anche se <strong>pi\u00f9 comodo da leggere e da usare<\/strong> questo metodo di programmazione ha alcuni limitazioni: <\/p>\n<ul>\n<li>innanzitutto per alcune procedure complesse <strong>bisogner\u00e0 sempre conoscere a priori la sequenza di comandi da eseguire<\/strong> (<em>anche se spesso \u00e8 cos\u00ec anche nella normale programmazione ad oggetti<\/em>), e bisogner\u00e0 conoscere tutti i parametri da passare a questi ultimi<\/li>\n<li>il codice qui sopra esposto <strong>funziona solo con php 5<\/strong> che permette di <a href=\"http:\/\/www.zend.com\/php5\/andi-book-excerpt.php\" title=\"deferencing object\">restituire l&#8217;oggetto iniziale direttamente dai metodi<\/a><\/li>\n<li>scordatevi una Naming Convention decente dei metodi, o si usano dei termini &#8220;fluidi&#8221; e facili da concatenare o il giochetto perde di significato in leggibilit\u00e0<\/li>\n<li> e ultima cosa, come fa notare <a href=\"http:\/\/andigutmans.blogspot.com\/\">Andi Gutsman<\/a>, l&#8217;utilizzo di una <em>fluent interface<\/em> comporta l&#8217;uso metodico delle exception (non sempre usate dagli <em>sviluppatori procedurali<\/em>).<\/li>\n<\/ul>\n<p>ciuaz<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Leggo con un certo interesse del nuovo meme di planet-php, cio\u00e8 dell&#8217;uso di interfacce fluent. A seguire un piccolo tutorial su come utilizzarle.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_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":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[9],"tags":[959,960,2248,125,542],"class_list":["post-1831","post","type-post","status-publish","format-standard","hentry","category-php","tag-fluid-interface","tag-method-chaining","tag-php","tag-php-5","tag-programming"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.0 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>PHP e programmazione fluente - Fullo<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.fullo.net\/blog\/2005\/12\/30\/php-e-programmazione-fluente\/\" \/>\n<meta property=\"og:locale\" content=\"it_IT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"PHP e programmazione fluente - Fullo\" \/>\n<meta property=\"og:description\" content=\"Leggo con un certo interesse del nuovo meme di planet-php, cio\u00e8 dell&#8217;uso di interfacce fluent. A seguire un piccolo tutorial su come utilizzarle.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.fullo.net\/blog\/2005\/12\/30\/php-e-programmazione-fluente\/\" \/>\n<meta property=\"og:site_name\" content=\"Fullo\" \/>\n<meta property=\"article:published_time\" content=\"2005-12-30T10:18:21+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2005-12-30T10:26:19+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/i0.wp.com\/www.fullo.net\/blog\/wp-content\/uploads\/2021\/05\/FB_IMG_1515748807284.jpg?fit=1453%2C1453&ssl=1\" \/>\n\t<meta property=\"og:image:width\" content=\"1453\" \/>\n\t<meta property=\"og:image:height\" content=\"1453\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Francesco Fullone\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@fullo\" \/>\n<meta name=\"twitter:site\" content=\"@fullo\" \/>\n<meta name=\"twitter:label1\" content=\"Scritto da\" \/>\n\t<meta name=\"twitter:data1\" content=\"Francesco Fullone\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tempo di lettura stimato\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minuti\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/2005\\\/12\\\/30\\\/php-e-programmazione-fluente\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/2005\\\/12\\\/30\\\/php-e-programmazione-fluente\\\/\"},\"author\":{\"name\":\"Francesco Fullone\",\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/#\\\/schema\\\/person\\\/24e91bc6caea6c411a8668df5639428c\"},\"headline\":\"PHP e programmazione fluente\",\"datePublished\":\"2005-12-30T10:18:21+00:00\",\"dateModified\":\"2005-12-30T10:26:19+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/2005\\\/12\\\/30\\\/php-e-programmazione-fluente\\\/\"},\"wordCount\":316,\"commentCount\":2,\"publisher\":{\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/#\\\/schema\\\/person\\\/24e91bc6caea6c411a8668df5639428c\"},\"keywords\":[\"fluid interface\",\"method chaining\",\"php\",\"php 5\",\"programming\"],\"articleSection\":[\"php\"],\"inLanguage\":\"it-IT\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.fullo.net\\\/blog\\\/2005\\\/12\\\/30\\\/php-e-programmazione-fluente\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/2005\\\/12\\\/30\\\/php-e-programmazione-fluente\\\/\",\"url\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/2005\\\/12\\\/30\\\/php-e-programmazione-fluente\\\/\",\"name\":\"PHP e programmazione fluente - Fullo\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/#website\"},\"datePublished\":\"2005-12-30T10:18:21+00:00\",\"dateModified\":\"2005-12-30T10:26:19+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/2005\\\/12\\\/30\\\/php-e-programmazione-fluente\\\/#breadcrumb\"},\"inLanguage\":\"it-IT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.fullo.net\\\/blog\\\/2005\\\/12\\\/30\\\/php-e-programmazione-fluente\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/2005\\\/12\\\/30\\\/php-e-programmazione-fluente\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"PHP e programmazione fluente\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/\",\"name\":\"Fullo\",\"description\":\"nulla e&#039; impossibile per chi non lo deve fare!\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/#\\\/schema\\\/person\\\/24e91bc6caea6c411a8668df5639428c\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"it-IT\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/#\\\/schema\\\/person\\\/24e91bc6caea6c411a8668df5639428c\",\"name\":\"Francesco Fullone\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\\\/\\\/i0.wp.com\\\/www.fullo.net\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/10\\\/hawiaina-gold-circled-white.png?fit=622%2C622&ssl=1\",\"url\":\"https:\\\/\\\/i0.wp.com\\\/www.fullo.net\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/10\\\/hawiaina-gold-circled-white.png?fit=622%2C622&ssl=1\",\"contentUrl\":\"https:\\\/\\\/i0.wp.com\\\/www.fullo.net\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/10\\\/hawiaina-gold-circled-white.png?fit=622%2C622&ssl=1\",\"width\":622,\"height\":622,\"caption\":\"Francesco Fullone\"},\"logo\":{\"@id\":\"https:\\\/\\\/i0.wp.com\\\/www.fullo.net\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/10\\\/hawiaina-gold-circled-white.png?fit=622%2C622&ssl=1\"},\"sameAs\":[\"http:\\\/\\\/www.fullo.net\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/fullo\",\"https:\\\/\\\/x.com\\\/fullo\"],\"url\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/author\\\/fullo\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"PHP e programmazione fluente - Fullo","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.fullo.net\/blog\/2005\/12\/30\/php-e-programmazione-fluente\/","og_locale":"it_IT","og_type":"article","og_title":"PHP e programmazione fluente - Fullo","og_description":"Leggo con un certo interesse del nuovo meme di planet-php, cio\u00e8 dell&#8217;uso di interfacce fluent. A seguire un piccolo tutorial su come utilizzarle.","og_url":"https:\/\/www.fullo.net\/blog\/2005\/12\/30\/php-e-programmazione-fluente\/","og_site_name":"Fullo","article_published_time":"2005-12-30T10:18:21+00:00","article_modified_time":"2005-12-30T10:26:19+00:00","og_image":[{"width":1453,"height":1453,"url":"https:\/\/i0.wp.com\/www.fullo.net\/blog\/wp-content\/uploads\/2021\/05\/FB_IMG_1515748807284.jpg?fit=1453%2C1453&ssl=1","type":"image\/jpeg"}],"author":"Francesco Fullone","twitter_card":"summary_large_image","twitter_creator":"@fullo","twitter_site":"@fullo","twitter_misc":{"Scritto da":"Francesco Fullone","Tempo di lettura stimato":"2 minuti"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.fullo.net\/blog\/2005\/12\/30\/php-e-programmazione-fluente\/#article","isPartOf":{"@id":"https:\/\/www.fullo.net\/blog\/2005\/12\/30\/php-e-programmazione-fluente\/"},"author":{"name":"Francesco Fullone","@id":"https:\/\/www.fullo.net\/blog\/#\/schema\/person\/24e91bc6caea6c411a8668df5639428c"},"headline":"PHP e programmazione fluente","datePublished":"2005-12-30T10:18:21+00:00","dateModified":"2005-12-30T10:26:19+00:00","mainEntityOfPage":{"@id":"https:\/\/www.fullo.net\/blog\/2005\/12\/30\/php-e-programmazione-fluente\/"},"wordCount":316,"commentCount":2,"publisher":{"@id":"https:\/\/www.fullo.net\/blog\/#\/schema\/person\/24e91bc6caea6c411a8668df5639428c"},"keywords":["fluid interface","method chaining","php","php 5","programming"],"articleSection":["php"],"inLanguage":"it-IT","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.fullo.net\/blog\/2005\/12\/30\/php-e-programmazione-fluente\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.fullo.net\/blog\/2005\/12\/30\/php-e-programmazione-fluente\/","url":"https:\/\/www.fullo.net\/blog\/2005\/12\/30\/php-e-programmazione-fluente\/","name":"PHP e programmazione fluente - Fullo","isPartOf":{"@id":"https:\/\/www.fullo.net\/blog\/#website"},"datePublished":"2005-12-30T10:18:21+00:00","dateModified":"2005-12-30T10:26:19+00:00","breadcrumb":{"@id":"https:\/\/www.fullo.net\/blog\/2005\/12\/30\/php-e-programmazione-fluente\/#breadcrumb"},"inLanguage":"it-IT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.fullo.net\/blog\/2005\/12\/30\/php-e-programmazione-fluente\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.fullo.net\/blog\/2005\/12\/30\/php-e-programmazione-fluente\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.fullo.net\/blog\/"},{"@type":"ListItem","position":2,"name":"PHP e programmazione fluente"}]},{"@type":"WebSite","@id":"https:\/\/www.fullo.net\/blog\/#website","url":"https:\/\/www.fullo.net\/blog\/","name":"Fullo","description":"nulla e&#039; impossibile per chi non lo deve fare!","publisher":{"@id":"https:\/\/www.fullo.net\/blog\/#\/schema\/person\/24e91bc6caea6c411a8668df5639428c"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.fullo.net\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"it-IT"},{"@type":["Person","Organization"],"@id":"https:\/\/www.fullo.net\/blog\/#\/schema\/person\/24e91bc6caea6c411a8668df5639428c","name":"Francesco Fullone","image":{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/i0.wp.com\/www.fullo.net\/blog\/wp-content\/uploads\/2024\/10\/hawiaina-gold-circled-white.png?fit=622%2C622&ssl=1","url":"https:\/\/i0.wp.com\/www.fullo.net\/blog\/wp-content\/uploads\/2024\/10\/hawiaina-gold-circled-white.png?fit=622%2C622&ssl=1","contentUrl":"https:\/\/i0.wp.com\/www.fullo.net\/blog\/wp-content\/uploads\/2024\/10\/hawiaina-gold-circled-white.png?fit=622%2C622&ssl=1","width":622,"height":622,"caption":"Francesco Fullone"},"logo":{"@id":"https:\/\/i0.wp.com\/www.fullo.net\/blog\/wp-content\/uploads\/2024\/10\/hawiaina-gold-circled-white.png?fit=622%2C622&ssl=1"},"sameAs":["http:\/\/www.fullo.net","https:\/\/www.linkedin.com\/in\/fullo","https:\/\/x.com\/fullo"],"url":"https:\/\/www.fullo.net\/blog\/author\/fullo\/"}]}},"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p3OSc1-tx","jetpack_likes_enabled":true,"jetpack-related-posts":[{"id":2116,"url":"https:\/\/www.fullo.net\/blog\/2006\/11\/14\/e-piu-forte-di-me\/","url_meta":{"origin":1831,"position":0},"title":"\u00c9 pi\u00f9 forte di me&#8230;","author":"Francesco Fullone","date":"14\/11\/2006","format":false,"excerpt":"Ma quando qualcuno mi dice: Php \u00e8 un linguaggio \"giocattolo\", va bene per delle cose rapide, ma quando bisogna fare delle cose ad un certo livello \u00e8 pi\u00f9 saggio utilizzare Java. Questo perch\u00e9 Php non \u00e8 un linguaggio completo, ad esempio il supporto per la programmazione ad oggetti \u00e8 ridicolo...\u2026","rel":"","context":"In &quot;pensieri&quot;","block_context":{"text":"pensieri","link":"https:\/\/www.fullo.net\/blog\/category\/pensieri\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1957,"url":"https:\/\/www.fullo.net\/blog\/2006\/05\/09\/montare-un-disco-remoto-con-fuse-e-sshfs\/","url_meta":{"origin":1831,"position":1},"title":"Montare un disco remoto con FUSE e SSHFS","author":"Francesco Fullone","date":"09\/05\/2006","format":false,"excerpt":"Dovendo lavorare spesso su server remoti nasce la necessit\u00e0 di accedere velocemente ai file per poterli modificare al volo. Normalmente una cosa del genere la si pu\u00f2 benissimo fare usando VI da una qualsiasi shell remota aperta con SSH, ogni tanto per\u00f2 c'\u00e8 bisogno di modificare il file in questione\u2026","rel":"","context":"In &quot;linux&quot;","block_context":{"text":"linux","link":"https:\/\/www.fullo.net\/blog\/category\/tecnologia\/linux\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":2278,"url":"https:\/\/www.fullo.net\/blog\/2007\/06\/01\/modrewrite-e-wordpress-un-piccolo-plugin\/","url_meta":{"origin":1831,"position":2},"title":"ModRewrite e WordPress, un piccolo plugin","author":"Francesco Fullone","date":"01\/06\/2007","format":false,"excerpt":"Ultimamente, facendo un paio di migrazioni di blog fatti con WordPress (e non) per clienti mi sono ritrovato con lo spigoloso problema dell'integrit\u00e0 delle url con la nuova struttura del blog. Il problema \u00e8 stato per la maggior parte delle volte risolto con un alias sul server, dove non \u00e8\u2026","rel":"","context":"In &quot;php&quot;","block_context":{"text":"php","link":"https:\/\/www.fullo.net\/blog\/category\/tecnologia\/php\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":2120,"url":"https:\/\/www.fullo.net\/blog\/2006\/11\/15\/zend-studio-55-beta\/","url_meta":{"origin":1831,"position":3},"title":"Zend Studio 5.5 beta","author":"Francesco Fullone","date":"15\/11\/2006","format":false,"excerpt":"E' stata rilasciata la nuova beta di Zend Studio 5.5, beta che come al solito prover\u00f2 immediatamente sto gi\u00e0 provando... ;). Tra le cose interessanti una migliore gestione di CVS\/SVN, l'inclusione dello Zend Framework e dello Zend Platform di cui ora compaiono i men\u00f9 nell'interfaccia inoltre \u00e8 stato inserito supporto\u2026","rel":"","context":"In &quot;php&quot;","block_context":{"text":"php","link":"https:\/\/www.fullo.net\/blog\/category\/tecnologia\/php\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1877,"url":"https:\/\/www.fullo.net\/blog\/2006\/02\/16\/ajax-imp-dimp\/","url_meta":{"origin":1831,"position":4},"title":"Ajax + Imp = DImp","author":"Francesco Fullone","date":"16\/02\/2006","format":false,"excerpt":"Dynamic Imp \u00e8 l'evoluzione di Horde\/Imp che presto vedremo sulla maggior parte dei server. Questo webmail sfrutter\u00e0 al suo interno le ormai stra-note librerie Prototype e Script.alicio.us per gestire l'interfaccia utente. Oltre a DIMP \u00e8 in sviluppo anche MIMP che ha un'interfaccia ottimizzata per i display di device portatili (la\u2026","rel":"","context":"In &quot;ajax&quot;","block_context":{"text":"ajax","link":"https:\/\/www.fullo.net\/blog\/category\/tecnologia\/ajax\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":2121,"url":"https:\/\/www.fullo.net\/blog\/2006\/11\/17\/approvato-lo-scripting-for-the-java-platform\/","url_meta":{"origin":1831,"position":5},"title":"Approvato lo &#8220;Scripting for the Java Platform&#8221;","author":"Francesco Fullone","date":"17\/11\/2006","format":false,"excerpt":"Il 6 di Novembre \u00e8 stato approvato il JSR intitolato \"Scripting for the Java Platform\" che introduce a partire dalla versione 6 di Java SE la possibilit\u00e0 per Java di dialogare con linguaggi di scripting per il web (PHP prima di tutti), delegando a questi ultimi il compito di front\u2026","rel":"","context":"In &quot;altri linguaggi&quot;","block_context":{"text":"altri linguaggi","link":"https:\/\/www.fullo.net\/blog\/category\/tecnologia\/altri-linguaggi\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"_links":{"self":[{"href":"https:\/\/www.fullo.net\/blog\/wp-json\/wp\/v2\/posts\/1831","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.fullo.net\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.fullo.net\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.fullo.net\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.fullo.net\/blog\/wp-json\/wp\/v2\/comments?post=1831"}],"version-history":[{"count":0,"href":"https:\/\/www.fullo.net\/blog\/wp-json\/wp\/v2\/posts\/1831\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.fullo.net\/blog\/wp-json\/wp\/v2\/media?parent=1831"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.fullo.net\/blog\/wp-json\/wp\/v2\/categories?post=1831"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.fullo.net\/blog\/wp-json\/wp\/v2\/tags?post=1831"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}