{"id":595,"date":"2003-12-09T00:54:24","date_gmt":"2003-12-08T22:54:24","guid":{"rendered":"\/\/?p="},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T23:00:00","slug":"phplinks-persistance-layers","status":"publish","type":"post","link":"https:\/\/www.fullo.net\/blog\/2003\/12\/09\/phplinks-persistance-layers\/","title":{"rendered":"php::Links(&#8216; Persistance Layers &#8216;);"},"content":{"rendered":"<p>stasera ho scoperto il mondo dei <em>Persistance Layers<\/em>. Questi non sono altro che delle classi PHP per la gestione di database come se fossero oggetti, ed \u00e8 quindi possibile aggiungere valori, modificarli o creare nuove strutture in modo semplice ed immediato. <\/p>\n<blockquote><p>A persistence layer encapsulates the behaviour needed to make objects persistent, ie. to load, save and delete objects to and from persistent storage, usually an SQL database server. Currently the only supported persistence mechanisms are relational databases.<\/p><\/blockquote>\n<p>Qualche link di riferimento:<br \/>\n&#8211; <a href=\"http:\/\/pear.php.net\/package-info.php?pacid=80\">Pear DB-DataObject<\/a><br \/>\n&#8211; <a href=\"http:\/\/sourceforge.net\/projects\/phdwait\/\">phdWait<\/a><br \/>\n&#8211; <a href=\"http:\/\/work.sebastian-eichner.de\/projects\/phpsorm.html\">phpSorm<\/a><br \/>\n&#8211; <a href=\"http:\/\/www.sebi.com.ar\/projects\/php\/php_gen\/\">php Gen<\/a><br \/>\n&#8211; <a href=\"http:\/\/vidalcharles.free.fr\/pgosd\/\">pgosd<\/a><br \/>\n&#8211; <a href=\"http:\/\/www.appelsiini.net\/~tuupola\/php\/DB_DataContainer\/\">DB DataContainer<\/a><\/p>\n<p>ciuaz<\/p>\n","protected":false},"excerpt":{"rendered":"<p>stasera ho scoperto il mondo dei Persistance Layers. Questi non sono altro che delle classi PHP per la gestione di database come se fossero oggetti, ed \u00e8 quindi possibile aggiungere valori, modificarli o creare nuove strutture in modo semplice ed immediato. A persistence layer encapsulates the behaviour needed to make objects persistent, ie. to load, [&hellip;]<\/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":[5],"tags":[],"class_list":["post-595","post","type-post","status-publish","format-standard","hentry","category-tecnologia"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>php::Links(&#039; Persistance Layers &#039;); - 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\/2003\/12\/09\/phplinks-persistance-layers\/\" \/>\n<meta property=\"og:locale\" content=\"it_IT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"php::Links(&#039; Persistance Layers &#039;); - Fullo\" \/>\n<meta property=\"og:description\" content=\"stasera ho scoperto il mondo dei Persistance Layers. Questi non sono altro che delle classi PHP per la gestione di database come se fossero oggetti, ed \u00e8 quindi possibile aggiungere valori, modificarli o creare nuove strutture in modo semplice ed immediato. A persistence layer encapsulates the behaviour needed to make objects persistent, ie. to load, [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.fullo.net\/blog\/2003\/12\/09\/phplinks-persistance-layers\/\" \/>\n<meta property=\"og:site_name\" content=\"Fullo\" \/>\n<meta property=\"article:published_time\" content=\"2003-12-08T22:54:24+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<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/2003\\\/12\\\/09\\\/phplinks-persistance-layers\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/2003\\\/12\\\/09\\\/phplinks-persistance-layers\\\/\"},\"author\":{\"name\":\"Francesco Fullone\",\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/#\\\/schema\\\/person\\\/24e91bc6caea6c411a8668df5639428c\"},\"headline\":\"php::Links(&#8216; Persistance Layers &#8216;);\",\"datePublished\":\"2003-12-08T22:54:24+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/2003\\\/12\\\/09\\\/phplinks-persistance-layers\\\/\"},\"wordCount\":101,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/#\\\/schema\\\/person\\\/24e91bc6caea6c411a8668df5639428c\"},\"articleSection\":[\"tecnologia\"],\"inLanguage\":\"it-IT\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.fullo.net\\\/blog\\\/2003\\\/12\\\/09\\\/phplinks-persistance-layers\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/2003\\\/12\\\/09\\\/phplinks-persistance-layers\\\/\",\"url\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/2003\\\/12\\\/09\\\/phplinks-persistance-layers\\\/\",\"name\":\"php::Links(' Persistance Layers '); - Fullo\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/#website\"},\"datePublished\":\"2003-12-08T22:54:24+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/2003\\\/12\\\/09\\\/phplinks-persistance-layers\\\/#breadcrumb\"},\"inLanguage\":\"it-IT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.fullo.net\\\/blog\\\/2003\\\/12\\\/09\\\/phplinks-persistance-layers\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/2003\\\/12\\\/09\\\/phplinks-persistance-layers\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.fullo.net\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"php::Links(&#8216; Persistance Layers &#8216;);\"}]},{\"@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::Links(' Persistance Layers '); - 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\/2003\/12\/09\/phplinks-persistance-layers\/","og_locale":"it_IT","og_type":"article","og_title":"php::Links(' Persistance Layers '); - Fullo","og_description":"stasera ho scoperto il mondo dei Persistance Layers. Questi non sono altro che delle classi PHP per la gestione di database come se fossero oggetti, ed \u00e8 quindi possibile aggiungere valori, modificarli o creare nuove strutture in modo semplice ed immediato. A persistence layer encapsulates the behaviour needed to make objects persistent, ie. to load, [&hellip;]","og_url":"https:\/\/www.fullo.net\/blog\/2003\/12\/09\/phplinks-persistance-layers\/","og_site_name":"Fullo","article_published_time":"2003-12-08T22:54:24+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"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.fullo.net\/blog\/2003\/12\/09\/phplinks-persistance-layers\/#article","isPartOf":{"@id":"https:\/\/www.fullo.net\/blog\/2003\/12\/09\/phplinks-persistance-layers\/"},"author":{"name":"Francesco Fullone","@id":"https:\/\/www.fullo.net\/blog\/#\/schema\/person\/24e91bc6caea6c411a8668df5639428c"},"headline":"php::Links(&#8216; Persistance Layers &#8216;);","datePublished":"2003-12-08T22:54:24+00:00","mainEntityOfPage":{"@id":"https:\/\/www.fullo.net\/blog\/2003\/12\/09\/phplinks-persistance-layers\/"},"wordCount":101,"commentCount":0,"publisher":{"@id":"https:\/\/www.fullo.net\/blog\/#\/schema\/person\/24e91bc6caea6c411a8668df5639428c"},"articleSection":["tecnologia"],"inLanguage":"it-IT","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.fullo.net\/blog\/2003\/12\/09\/phplinks-persistance-layers\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.fullo.net\/blog\/2003\/12\/09\/phplinks-persistance-layers\/","url":"https:\/\/www.fullo.net\/blog\/2003\/12\/09\/phplinks-persistance-layers\/","name":"php::Links(' Persistance Layers '); - Fullo","isPartOf":{"@id":"https:\/\/www.fullo.net\/blog\/#website"},"datePublished":"2003-12-08T22:54:24+00:00","breadcrumb":{"@id":"https:\/\/www.fullo.net\/blog\/2003\/12\/09\/phplinks-persistance-layers\/#breadcrumb"},"inLanguage":"it-IT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.fullo.net\/blog\/2003\/12\/09\/phplinks-persistance-layers\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.fullo.net\/blog\/2003\/12\/09\/phplinks-persistance-layers\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.fullo.net\/blog\/"},{"@type":"ListItem","position":2,"name":"php::Links(&#8216; Persistance Layers &#8216;);"}]},{"@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-9B","jetpack_likes_enabled":true,"jetpack-related-posts":[{"id":496,"url":"https:\/\/www.fullo.net\/blog\/2003\/10\/10\/phplinks-news\/","url_meta":{"origin":595,"position":0},"title":"php::Links(&#8216; news &#8216;);","author":"Francesco Fullone","date":"10\/10\/2003","format":false,"excerpt":"benvenuti al riassunto della settimana delle risorse su php trovate in internet. phphub vuole essere un punto di partenza per la navigazione di tutti maniaci di php, al suo interno comprende infatti un aggregator con le ultime news pubblicate sui principali siti di informazione ed un interessante directory di link\u2026","rel":"","context":"In &quot;tecnologia&quot;","block_context":{"text":"tecnologia","link":"https:\/\/www.fullo.net\/blog\/category\/tecnologia\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":310,"url":"https:\/\/www.fullo.net\/blog\/2003\/06\/26\/phplinksdaogen\/","url_meta":{"origin":595,"position":1},"title":"php::Links(&#8216;daoGen&#8217;)","author":"Francesco Fullone","date":"26\/06\/2003","format":false,"excerpt":"Creare classi per la gestione di database non \u00e8 mai stato pi\u00f9 facile! Grazie a daoGen sar\u00e0 possibile creare e gestire un db in maniera semplice ed efficiente. Lo script, una volta immesse le specifiche del db ci creer\u00e0 4 file: il primo contentente la struttura SQL-compliant delle nostre tabelle,\u2026","rel":"","context":"In &quot;tecnologia&quot;","block_context":{"text":"tecnologia","link":"https:\/\/www.fullo.net\/blog\/category\/tecnologia\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":2206,"url":"https:\/\/www.fullo.net\/blog\/2007\/02\/05\/php-e-paradox\/","url_meta":{"origin":595,"position":2},"title":"PHP e Paradox","author":"Francesco Fullone","date":"05\/02\/2007","format":false,"excerpt":"I lavori pi\u00f9 strambi sono anche i pi\u00f9 divertenti, oggi ho recuperato un DB paradox di una decina di anni fa usando PHP, la PECL di Paradox ed una libreria ad hoc per linux. A seguire il piccolo tutorial per accedere ad un db Paradox. Piccola premessa, tutti i test\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":2350,"url":"https:\/\/www.fullo.net\/blog\/2007\/10\/17\/sqlserver-driver-per-php-5\/","url_meta":{"origin":595,"position":3},"title":"SQLServer driver per PHP 5","author":"Francesco Fullone","date":"17\/10\/2007","format":false,"excerpt":"Pare che Microsoft si sia svegliata ed abbia finalmente rilasciato un driver ufficiale per SQL Server 2005. Il driver supporta stream di dati, SQL parametrizzati ed ha a corredo, pare, una buona documentazione. Leggo per\u00f2 che a parte un discorso di chiusura del codice, opinabile in un linguaggio dichiaratamente OSS,\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":1680,"url":"https:\/\/www.fullo.net\/blog\/2005\/10\/05\/sql-designer\/","url_meta":{"origin":595,"position":4},"title":"SQL Designer","author":"Francesco Fullone","date":"05\/10\/2005","format":false,"excerpt":"SQL Designer \u00e8 un'applicazione ajax enabled che serve a disegnare schemi ER. Con questo script \u00e8 possibile creare nuove tabelle, foreign key, aggiungere e rimuovere campi dalle tabelle come se nulla fosse e con un'interfaccia grafica pulita e molto semplice da usare. Inoltre le relazioni sono controllate e se viene\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":1676,"url":"https:\/\/www.fullo.net\/blog\/2005\/10\/03\/gestire-db-con-i-dataobject\/","url_meta":{"origin":595,"position":5},"title":"Gestire DB con i DataObject","author":"Francesco Fullone","date":"03\/10\/2005","format":false,"excerpt":"Interessante questo articolo su phpRiot su come utilizzare una classe dataobject generica (e non quella di PEAR) per la gestione dei propri db. Nell'articolo vengono evidenziate passo passo tutte le possibili casistiche di utilizzo e ne viene realizzato il codice. ciuaz","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":[]}],"_links":{"self":[{"href":"https:\/\/www.fullo.net\/blog\/wp-json\/wp\/v2\/posts\/595","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=595"}],"version-history":[{"count":0,"href":"https:\/\/www.fullo.net\/blog\/wp-json\/wp\/v2\/posts\/595\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.fullo.net\/blog\/wp-json\/wp\/v2\/media?parent=595"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.fullo.net\/blog\/wp-json\/wp\/v2\/categories?post=595"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.fullo.net\/blog\/wp-json\/wp\/v2\/tags?post=595"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}