<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Line Education Center Academy &#187; PHP</title>
	<atom:link href="http://lec-academy.ro/category/php/feed/" rel="self" type="application/rss+xml" />
	<link>http://lec-academy.ro</link>
	<description>Descriere LEC-Academy.</description>
	<lastBuildDate>Wed, 16 May 2012 10:26:20 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=abc</generator>
		<item>
		<title>Tutorial PHP – lucrul cu cookies</title>
		<link>http://lec-academy.ro/tutorial-php-%e2%80%93-lucrul-cu-cookies/</link>
		<comments>http://lec-academy.ro/tutorial-php-%e2%80%93-lucrul-cu-cookies/#comments</comments>
		<pubDate>Wed, 04 Apr 2012 18:29:46 +0000</pubDate>
		<dc:creator>Andreea</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[cookies]]></category>

		<guid isPermaLink="false">http://lec-academy.ro/?p=8766</guid>
		<description><![CDATA[De obicei, la reîncărcarea unei pagini de tip PHP se resetează toate variabilele create anterior în script, astfel pierzându-se toate calculele efectuate. Uneori, însă, avem nevoie de a memora unele date despre utilizatorul care accesează pagina noastră pentru al recunoaşte de fiecare dată când revine la ea. Pentru aceasta există nişte containere de date (nişte variabile), numite cookies, care sunt stocate în cache-ul browser-ului clientului şi sunt pasate paginii noastre web de pe server (scriptului php) când clientul revine.]]></description>
			<content:encoded><![CDATA[<div class="mceTemp">
<dl id="attachment_226" class="wp-caption alignleft" style="width: 167px;"> <a href="http://lec-academy.ro/wp-content/uploads/2012/03/PHP-cook.bmp"><img class="size-full wp-image-226" title="PHP" src="http://lec-academy.ro/wp-content/uploads/2012/03/PHP-cook.bmp" alt="PHP" width="160" height="100" /></a> </dl>
</div>
<p><strong>1. Lucrul cu cookies în PHP</strong><br />
<!-- br--><br />
De obicei, la reîncărcarea unei pagini de tip PHP se resetează toate variabilele create anterior în script, astfel pierzându-se toate calculele efectuate. Uneori, însă, avem nevoie de a memora unele date despre utilizatorul care accesează pagina noastră pentru al recunoaşte de fiecare dată când revine la ea. Pentru aceasta există nişte containere de date (nişte variabile), numite cookies, care sunt stocate în cache-ul browser-ului clientului şi sunt pasate paginii noastre web de pe server (scriptului php) când clientul revine.<br />
<!-- br--><br />
Pe scurt – <strong>un cookie este o variabilă salvată în browserul clientului de către noi pentru a o prelua mai târziu.</strong><br />
<!-- br--><br />
Din punct de vedere al programatorului, un cookie este o metodă extrem de nesigură de stocare a datelor. Aceste date fiind stocate pe calculatorul clientului, pot fi şterse de către el intenţionat, pot fi şterse automat de către browserul clientului, sau în cazul în care apare vre-o defecţiune la hard diskul clientului şi se pierde toată informaţia de pe el – se pierde şi informaţia noastră stocată în cookies. Mai mult de atât, clientul poate specifica în opţiunile browser-ului ca acesta să nu accepte nici un cookie. Oricum, lucrul cu cookies este destul de răspândit deoarece sunt de mare folos la stocarea unor porţiuni mici de informaţie temporară (deobicei pentru statistici).<br />
<!-- br--><br />
De reţinut este faptul că <strong>nu trebuie salvată informaţie senzitivă sau un volum mare de date într-un cookie  şi nu trebuie reutilizată informaţia unui cooke fără a fi verficată mai întâi.</strong> Cookie-ul salvat pe calculatorul clientului poate fi citit şi modificat foarte uşor de către acesta.<br />
Ceea ce priveşte limitele de stocare a cookies de către browser, acesta poate salva nu mai puţin de 300 de cookies în total şi nu mai puţin de 20 de cookie per domeniu. Mărimea unui cookie nu trebuie să depăşească 4096bytes (4Kb).</p>
<p>Datele unui cookie stocate într-un browser sunt transmise serverului prin headere. Structura header-ului este următoarea:</p>
<p>Set-Cookie: username=php_lec; path=/; expires=Mon, 09-Dec-2009 13:46:00 GMT; domain=example.com<br />
<!-- br--><br />
Fiecare cookie are:<br />
•	denumire<br />
•	valoare<br />
•	dată de expirare<br />
•	calea pentru care e valabil<br />
•	domeniul pentru care e valabil<br />
<!-- br--><br />
În exemplul de mai sus, se transmite un cookie prin HTTP Headers de la client spre server cu denumirea “username” şi valoarea “php_lec”, care expiră la data de 9 decembrie 2009 şi este valabil pentru întreg site-ul (domeniul).<br />
<!-- br--><br />
Pentru a seta un cookie din PHP în browser-ul clientului se foloseşte funcţia setcookie($name, $value, $expire, $path, $domain). Cu ajutorul ei setăm un cookie cu denumirea $name, valoarea $value, care expiră la data $expire, valabil din calea $path pentru domeniul $domain. Link: http://www.php.net/manual/en/function.setcookie.php<br />
<!-- br--><br />
Exemplu:<br />
setcookie(&#8216;username&#8217;, &#8216;php_lec&#8217;, time() + 60 * 60 * 24 * 3, &#8216;/&#8217;, &#8216;example.com&#8217;);<br />
<!-- br--><br />
<strong>Parametrul $name</strong> (cu valoarea “username”) este obligatoriu. El va deveni numele cookie-ul şi îl va diferenţia de celelalte cookies setate de noi. Deci, trebuie să fie unic.<br />
<!-- br--><br />
<strong>Parametrul $value</strong> (cu valoarea “php_lec”) nu este obligatoriu. El reprezintă valoarea cookie-ului.<br />
<!-- br--><br />
<strong>Parametrul $expire</strong> (cu valoarea time() + 60 * 60 * 24 * 3) reprezintă data la care va expira cookie-ul în format Unix Timestamp – numărul de secunde de la apariţia epocii Unix. Pentru aceasta se foloseşte funcţia time(), care returnează numărul de secunde ce a trecut de la Unix Epoch până acum şi se adaugă un număr de secunde pentru care dorim să fie valabil cokie-ul. În cazul nostru am setat cookie-ul pentru 3 zile din momentul de acum: Unix Epoch Time + 60 sec * 60 min * 24 ore * 3 zile. Dacă nu specificăm acest parametru, atunci cookie-ul va fi şters de browser la închiderea acestuia. Link spre funcţia time(): http://www.php.net/manual/en/function.time.php<br />
<!-- br--><br />
<strong>Parametrul $path</strong> (cu valoarea “/”) este opţional. De obicei când setăm un cookie, îl vom putea accesa din directorul de unde l-am setat şi în subdirectoriile lui. Dacă setăm $path cu “/test”, atunci cookie-ul va fi valabil doar pentru calea www.example.com/test/. Pentru a-l putea accesa pe tot domeniul setăm path-ul cu &#8216;/&#8217;, ce reprezintă calea de root al domeniului.</p>
<p><strong>Parametrul $domain</strong> se foloseşte de obicei în cazul în care dorim ca un cookie să fie valabil doar pentru domeniul “example.com” nu şi pentru subdomeniul “test.example.com”. În practică se foloseşte foarte rar acest parametru al funcţiei.<br />
<!-- br--><br />
Cookies fiind transmis spre server prin headers <strong>trebuie setat înaintea afişării oricărui mesaj PHP sau HTML</strong>!!!<br />
<!-- br--><br />
Pentru a şterge un cookie setat mai devreme, se setează acelaşi cookie însă parametrul <strong>$expire</strong> primind o valoare negativă sau zero.<br />
<!-- br--><br />
Exemplu ştergere cookie setat mai sus:</p>
<p>setcookie(&#8216;username&#8217;, &#8221;, 0, &#8216;/&#8217;, &#8216;example.com&#8217;);<br />
<!-- br--><br />
Pentru accesarea cookies deja setate în PHP se verifică <strong>variabila $_COOKIE</strong> setată automat de PHP şi conţine toate cookies setate până acum (care nu au expirat încă).<br />
<!-- br--><br />
Exemplu accesare cookie setat mai sus:</p>
<p>echo $_COOKIE['username'];</p>
<p><strong>var_dump($_COOKIE)</strong> – afişează totul din arrayul $_COOKIE</p>
]]></content:encoded>
			<wfw:commentRss>http://lec-academy.ro/tutorial-php-%e2%80%93-lucrul-cu-cookies/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Cum se invata un limbaj de programare</title>
		<link>http://lec-academy.ro/cum-se-invata-un-limbaj-de-programare/</link>
		<comments>http://lec-academy.ro/cum-se-invata-un-limbaj-de-programare/#comments</comments>
		<pubDate>Thu, 29 Mar 2012 09:18:17 +0000</pubDate>
		<dc:creator>Andreea</dc:creator>
				<category><![CDATA[CSS, HTML si JavaScript]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[limbaj programare]]></category>
		<category><![CDATA[programare]]></category>
		<category><![CDATA[Python]]></category>

		<guid isPermaLink="false">http://lec-academy.ro/?p=8426</guid>
		<description><![CDATA[Programarea este o abilitate foarte complexa ce necesita multi ani de studiu pentru a fi  stapanita. Acest articol incepe prin a prezenta calea spre cunoastere explicand cateva alegeri ce trebuiesc luate de un incapator si o orientare spre instrumente si resurse. ]]></description>
			<content:encoded><![CDATA[<div class="mceTemp">
<dl id="attachment_226" class="wp-caption alignleft" style="width: 166px;"> <a href="http://lec-academy.ro/wp-content/uploads/2012/03/Programare.bmp"><img class="size-full wp-image-226" title="PowerPoint 2007" src="http://lec-academy.ro/wp-content/uploads/2012/03/Programare.bmp" alt="PowerPoint 2007" width="160" height="110" /></a> </dl>
</div>
<p>
Programarea este o abilitate foarte complexa ce necesita multi ani de studiu pentru a fi  stapanita. Acest articol incepe prin a prezenta calea spre cunoastere explicand cateva alegeri ce trebuiesc luate de un incepator si o orientare spre instrumente si resurse.<br />
</ br><br />
<strong>Pasii</strong></p>
<p></ br><br />
<strong>1. Sa te decizi in ceea ce vrei sa faci</strong><br />
</ br><br />
Programarea este un subiect destul de amplu: puteti face fie jocuri, fie site-uri si aplicatii web, procesare de texte, automatizari de task-uri (scripting), interfete grafice etc. Daca vi se pare cool sa invatati programare si nu aveti nicio aplicatie specifica in minte, este ok, dar gandirea in avans  la ceea ce doriti sa programati,va va ajuta sa luati decizii in cunostiinta de cauza in timpul studiului.<br />
</ br><br />
<strong>2. Alegerea unui limbaj de programare </strong><br />
</ br><br />
In primul rand  invatati un limbaj simplu, cum ar fi <strong>Python</strong>, dupa ce ati invatat destul de mult se trece la invatarea C/C++ pentru a intelege exact cum  functioneaza si cum interactioneaza programele. <strong>PERL</strong> si <strong>JAVA</strong> sunt alte doua limbaje cunoscute pentru  incepatori. Trebuie sa-ti cercetezi domeniul tinta pentru a sti care sunt limbajele ce trebuiesc cunoscute (ex.  SQL pentru baza de date) sau care ,dupa caz, trebuiesc evitate. Nu trebuie sa va lasati pacalati de jargoane precum: „orientat pe obiecte”, „concurent”, sau „dinamic”. Toate acestea inseamna ceva, dar vor fi intelese dupa capatarea unei anumite experiente in programare.<br />
</ br><br />
<strong>3. Gasirea resurselor de invatare </strong><br />
</ br><br />
Cautati site-uri Web bune pentru a incepe studierea  limbajelor mentionate mai sus si  vizitati pagina oficiala (daca exista) a limbajului pentru a gasi un tutorial sau manual pentru incepatori. De asemenea  cautati o persoana care stie deja sa programeze. Tutorialele online sunt bunicele, dar pot fi frustrante cateodata daca nu ofera raspunsurile dorite. Uneori <a href="http://leconline.ro/">cursurile de programare</a> si <a href="http://lec-academy.ro/">videotutorialele</a> va ajuta mult.<br />
</ br><br />
<strong>4. Se incepe usor </strong><br />
</ br><br />
Nu va  puteti astepta sa scrieti cea mai bine vanduta capodopera de 700 de pagini daca nu aveti nicio experienta practica in scris. Cam acelasi lucru se intampla si cu programarea. Incepeti cu constructii de baza si  scrieti programe scurte (de la 10 la 30 de linii) pentru a va testa intelegerea conceptului.<br />
Intinde-te daca e nevoie, dar nu incerca sa alergi inainte sa stii  sa mergi!<br />
</ br><br />
<strong>5. Calcularea timpului</strong><br />
</ br><br />
Inainte sa va puteti numi un expert  este nevoie de multe ore de practica pentru rezolvarea diferitelor probleme. <strong>Project Euler</strong> are multe sarcini mici, clasificate in functie de dificultate care sunt utile tocmai pentru finisarea abilitatilor si retinerea in practica, de asemenea ajuta la realizarea shemelor logice.<br />
</ br><br />
<strong>6. Perseverenta</strong><br />
</ br><br />
Programarea poate fi foarte frustranta, dar finalizarea cu succes a unui program este un sentiment profund de satisfactie si multumire. Nu renuntati daca nu intelegeti un concept, programarea poate deveni  un lucru foarte abstract de invatat. Atunci cand lucrati pe o problema deosebit de complexa luati pauze periodice pentru a permite creierului sa se relaxeze. Asigurati-va un bun program pentru a lucra.<br />
</ br><br />
<strong>7. Continua sa inveti </strong><br />
</ br><br />
Sa stiti un limbaj de programare este bine, dar sa stiti patru sau cinci este si mai bine. Indiferent ce limbaj folosesti cel mai des, sa ai cunostinta si de altele pe care sa le proiectezi te face un mai bun programator si mai capabil sa intelegi concepte comune si probleme in abstract. Deci invatati mai multe limbaje de programare, in special 2-3 cu diferite filozofii de difertie de proiectare cum ar fi <strong>Lisp, Java si Perl</strong>. </p>
]]></content:encoded>
			<wfw:commentRss>http://lec-academy.ro/cum-se-invata-un-limbaj-de-programare/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>20 dintre cei mai importanti oameni din Programare</title>
		<link>http://lec-academy.ro/20-cei-mai-importanti-oameni-din-programare/</link>
		<comments>http://lec-academy.ro/20-cei-mai-importanti-oameni-din-programare/#comments</comments>
		<pubDate>Mon, 26 Mar 2012 13:12:06 +0000</pubDate>
		<dc:creator>Andreea</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Noutati]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://lec-academy.ro/?p=8030</guid>
		<description><![CDATA[Acest articol va prezinta cei mai importanti oameni din Programare. Oamenii care au facut istorie in lumea IT-ului, care si-au pus amprenta asupra limbajelor de programare (PHP, Javascript, etc). 
Mai jos aveti lista cu 20 cei mai importanti oameni din Programare:]]></description>
			<content:encoded><![CDATA[<p>
Acest articol va prezinta cei mai importanti oameni din Programare. Oamenii care au facut istorie in lumea IT-ului, care si-au pus amprenta asupra limbajelor de programare (PHP, Javascript, etc).<br />
Mai jos aveti lista cu 20 dintre cei mai importanti oameni din Programare. Tinem sa precizem ca persoanele din aceasta lista sunt puse intr-o ordine intamplatoare, si nu o ordine a importantei <img src='http://lec-academy.ro/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><p align="center">
<strong>Tim Berners-Lee</strong>
</p>
<div class="mceTemp">
<dl id="attachment_226" class="wp-caption alignleft" style="width: 156px;"> <a href="http://lec-academy.ro/wp-content/uploads/2012/03/Tim.bmp"><img class="size-full wp-image-226" title="Tim Berners-Lee" src="http://lec-academy.ro/wp-content/uploads/2012/03/Tim.bmp" alt="Tim Berners-Lee" width="150" height="150" /></a> </dl>
</div>
<p></ br><br />
</ br></p>
<p align="left">
Wikipedia Page – <a href="http://en.wikipedia.org/wiki/Tim_Berners-Lee">http://en.wikipedia.org/wiki/Tim_Berners-Lee</a><br />
</ br><br />
Tim Berners-Lee este inventatorul HTML (Hyper Text Markup Language) si WWW (World Wide Web).<br />
</ br> In 2007, el a fost clasat pe locul intai, pe acelasi loc cu Albert Hofmann, in lista Telegraph a celor 100  de genii.
</p>
<p></ br><br />
</ br><br />
</ br></p>
<p align="center">
<strong>Matt Mullenweg</strong>
</p>
<div class="mceTemp">
<dl id="attachment_226" class="wp-caption alignleft" style="width: 156px;"> <a href="http://lec-academy.ro/wp-content/uploads/2012/03/Matt.bmp"><img class="size-full wp-image-226" title="Matt Mullenweg" src="http://lec-academy.ro/wp-content/uploads/2012/03/Matt.bmp" alt="Matt Mullenweg" width="150" height="150" /></a> </dl>
</div>
<p></ br><br />
Matt – <a href="http://ma.tt/">http://ma.tt</a><br />
WordPress – <a href="http://www.wordpress.com">http://www.wordpress.com</a><br />
WordPress Blog – <a href="http://matt.wordpress.com">http://matt.wordpress.com</a><br />
Wikipedia Page – <a href="http://en.wikipedia.org/wiki/Matt_Mullenweg">http://en.wikipedia.org/wiki/Matt_Mullenweg</a><br />
</ br><br />
Matt este fondatorul si creatorul platformei de blogging <strong>WordPress</strong>.<br />
In 2005, el a infiintat compania Automatic, compania din spatele WordPress si Akismet.<br />
</ br><br />
</ br><br />
</ br></p>
<p align="center">
<strong>Larry Page</strong>
</p>
<p></ br></p>
<div class="mceTemp">
<dl id="attachment_226" class="wp-caption alignleft" style="width: 156px;"> <a href="http://lec-academy.ro/wp-content/uploads/2012/03/Larry.bmp"><img class="size-full wp-image-226" title="Larry Page" src="http://lec-academy.ro/wp-content/uploads/2012/03/Larry.bmp" alt="Larry Page" width="150" height="150" /></a> </dl>
</div>
<p></ br><br />
Google – <a href="http://www.google.com">http://www.google.com</a><br />
Wikipedia Page – <a href="http://en.wikipedia.org/wiki/Larry_Page">http://en.wikipedia.org/wiki/Larry_Page</a><br />
</ br><br />
<strong>Larry Page</strong> este binecunoscutul co-fondator al Google, alaturi de Sergey Brin.<br />
</ br><br />
Este in top 6 celor mai bogati oameni din America si top 27 a celor mai bogati miliardari la nivel mondial conform Forbes.<br />
</ br><br />
</ br><br />
</ br><br />
</ br></p>
<p align="center">
<strong>Sergey Brin</strong>
</p>
<p></ br></p>
<div class="mceTemp">
<dl id="attachment_226" class="wp-caption alignleft" style="width: 156px;"> <a href="http://lec-academy.ro/wp-content/uploads/2012/03/Sergey.bmp"><img class="size-full wp-image-226" title="Sergey Brin" src="http://lec-academy.ro/wp-content/uploads/2012/03/Sergey.bmp" alt="Sergey Brin" width="150" height="150" /></a> </dl>
</div>
<p></ br><br />
Google – <a href="http://www.google.com">http://www.google.com</a><br />
Wikipedia Page – <a href="http://en.wikipedia.org/wiki/Sergey_Brin">http://en.wikipedia.org/wiki/Sergey_Brin</a><br />
</ br><br />
Sergey a fost co-fondator la Google, alaturi de Larry Page.<br />
</ br><br />
Este in top 28 cei mai bogati miliardari la nivel mondial conform Forbes, iar in 2009 a fost in topul 50 celor mai bogati miliardari.<br />
</ br><br />
</ br><br />
</ br></p>
<p align="center">
<strong>Linus Torvalds</strong>
</p>
<p></ br><br />
</ br></p>
<div class="mceTemp">
<dl id="attachment_226" class="wp-caption alignleft" style="width: 156px;"> <a href="http://lec-academy.ro/wp-content/uploads/2012/03/Linus.bmp"><img class="size-full wp-image-226" title="Linus Torvalds" src="http://lec-academy.ro/wp-content/uploads/2012/03/Linus.bmp" alt="Linus Torvalds" width="150" height="150" /></a> </dl>
</div>
<p></ br><br />
Wikipedia Page – <a href="http://en.wikipedia.org/wiki/Linus_Torvalds">http://en.wikipedia.org/wiki/Linus_Torvalds</a><br />
</ br><br />
Linus este creatorul sistemul de operare binecunoscut, Linux.<br />
</ br><br />
Astazi, exista mii de variante de servere de web Linux.<br />
</ br><br />
</ br><br />
</ br><br />
</ br></p>
<p align="center">
<strong>Dennis Ritchie</strong>
</p>
<div class="mceTemp">
<dl id="attachment_226" class="wp-caption alignleft" style="width: 156px;"> <a href="http://lec-academy.ro/wp-content/uploads/2012/03/Dennis.bmp"><img class="size-full wp-image-226" title="Dennis Ritchie" src="http://lec-academy.ro/wp-content/uploads/2012/03/Dennis.bmp" alt="Dennis Ritchie" width="150" height="150" /></a> </dl>
</div>
<p></ br><br />
</ br><br />
Dennis Ritchie’s Websites – <a href="http://cm.bell-labs.com/who/dmr/">http://cm.bell-labs.com/who/dmr/</a><br />
C Programming Language Book – <a href="http://en.wikipedia.org/wiki/The_C_Programming_Language_">http://en.wikipedia.org/wiki/The_C_Programming_Language</a><br />
Wikipedia Page – <a href="http://en.wikipedia.org/wiki/Dennis_Ritchie">http://en.wikipedia.org/wiki/Dennis_Ritchie</a><br />
</ br><br />
Dennis este creatorul limbajului C si a avut o contributie esentiala in dezvoltatea sistemului de operare UNIX.<br />
</ br><br />
</ br></p>
<p align="center">
<strong>Brian Kernighan</strong>
</p>
<p></ br></p>
<div class="mceTemp">
<dl id="attachment_226" class="wp-caption alignleft" style="width: 156px;"> <a href="http://lec-academy.ro/wp-content/uploads/2012/03/Brian.bmp"><img class="size-full wp-image-226" title="Brian Kernighan" src="http://lec-academy.ro/wp-content/uploads/2012/03/Brian.bmp" alt="Brian Kernighan" width="150" height="150" /></a> </dl>
</div>
<p></ br><br />
</ br><br />
Bell Labs – <a href="http://cm.bell-labs.com/cm/cs/who/bwk/">http://cm.bell-labs.com/cm/cs/who/bwk/</a><br />
C Programming Language Book –<a href="http://en.wikipedia.org/wiki/The_C_Programming_Language"> http://en.wikipedia.org/wiki/The_C_Programming_Language</a><br />
Wikipedia Page – <a href="http://en.wikipedia.org/wiki/Brian_Kernighan">http://en.wikipedia.org/wiki/Brian_Kernighan</a><br />
</ br><br />
Brian este autorul unei serii de programe UNIX si este cunoscut ca inventator al expresiei WYSIWYG.<br />
</ br><br />
</ br><br />
</ br></p>
<p align="center">
<strong>Ken Thompson</strong>
</p>
<p></ br><br />
</ br></p>
<div class="mceTemp">
<dl id="attachment_226" class="wp-caption alignleft" style="width: 156px;"> <a href="http://lec-academy.ro/wp-content/uploads/2012/03/Ken.bmp"><img class="size-full wp-image-226" title="Ken" src="http://lec-academy.ro/wp-content/uploads/2012/03/Ken.bmp" alt="Ken" width="150" height="150" /></a> </dl>
</div>
<p></ br><br />
Bell Labs – <a href="http://plan9.bell-labs.com/who/ken/">http://plan9.bell-labs.com/who/ken/</a><br />
Wikipedia Page – <a href="http://en.wikipedia.org/wiki/Ken_Thompson">http://en.wikipedia.org/wiki/Ken_Thompson</a><br />
</ br><br />
Ken este un pionier american in informatica, si a ajutat la crearea limbajului de programare B (care a fost ulterior inlocuit de binecunoscutul limbaj de programare C).<br />
</ br><br />
El a creat UNIX alaturi de Kerighan si Ritchie si a ajutat la crearea sistemelor de operare Plan 9, distribuit de Bell Labs.<br />
</ br><br />
</ br><br />
</ br></p>
<p align="center">
<strong>Rasmus Lerdorf</strong>
</p>
<p></ br><br />
</ br></p>
<div class="mceTemp">
<dl id="attachment_226" class="wp-caption alignleft" style="width: 156px;"> <a href="http://lec-academy.ro/wp-content/uploads/2012/03/Rasmus.bmp"><img class="size-full wp-image-226" title="Ramus" src="http://lec-academy.ro/wp-content/uploads/2012/03/Rasmus.bmp" alt="Ramus" width="150" height="150" /></a> </dl>
</div>
<p></ br>
</p>
<p>Bio – <a href="http://lerdorf.com/bio.php">http://lerdorf.com/bio.php</a><br />
Toys – <a href="http://toys.lerdorf.com">http://toys.lerdorf.com</a><br />
PHP – <a href="http://www.php.net">http://www.php.net</a><br />
Wikipedia – <a href="http://en.wikipedia.org/wiki/Rasmus_Lerdorf">http://en.wikipedia.org/wiki/Rasmus_Lerdorf</a><br />
</ br></p>
<p>Rasmus Lerdorf este creatorul PHP-ului. El este dezvoltatorul primelor 2 versiuni de PHP, si apoi a contribuit la dezvoltarea celor mai recente versiuni ale PHP.<br />
Astazi, PHP ruleaza peste 34% dintre site-urile.<br />
</ br><br />
</ br><br />
</ br></p>
<p align="center">
<strong>Jason Fried</strong>
</p>
<p></ br></p>
<div class="mceTemp">
<dl id="attachment_226" class="wp-caption alignleft" style="width: 156px;"> <a href="http://lec-academy.ro/wp-content/uploads/2012/03/Jason.bmp"><img class="size-full wp-image-226" title="Ramus" src="http://lec-academy.ro/wp-content/uploads/2012/03/Jason.bmp" alt="Ramus" width="150" height="150" /></a> </dl>
</div>
<p></ br><br />
37 Signals – <a href="http://www.37signals.com">http://www.37signals.com</a><br />
Twitter – <a href="http://twitter.com/jasonfried">http://twitter.com/jasonfried</a><br />
</ br><br />
Jason Fried este fondatorul 37 signals. 37 Signals contine unele aplicatii web uimitoare si de asemenea a unui popular blog despre design si business.<br />
</ br><br />
</ br><br />
</ br><br />
</ br><br />
</ br></p>
<p align="center">
<strong>James Gosling</strong>
</p>
<p></ br></p>
<div class="mceTemp">
<dl id="attachment_226" class="wp-caption alignleft" style="width: 156px;"> <a href="http://lec-academy.ro/wp-content/uploads/2012/03/James.bmp"><img class="size-full wp-image-226" title="James Gosling" src="http://lec-academy.ro/wp-content/uploads/2012/03/James.bmp" alt="James Gosling" width="150" height="150" /></a> </dl>
</div>
<p></ br><br />
James Gosling – <a href="http://www.jamesgosling.com">http://www.jamesgosling.com</a><br />
Apple Science Profile – <a href="http://www.apple.com/science/profiles/gosling/">http://www.apple.com/science/profiles/gosling/</a><br />
Wikipedia Page – <a href="http://en.wikipedia.org/wiki/James_Gosling">http://en.wikipedia.org/wiki/James_Gosling</a><br />
</ br><br />
James Gosling este un faimos programator si este cunoscut ca fiind parintele limbajului Java.<br />
</ br><br />
</ br><br />
</ br><br />
</ br></p>
<p align="center">
<strong>Brendan Eich</strong>
</p>
<p></ br></p>
<div class="mceTemp">
<dl id="attachment_226" class="wp-caption alignleft" style="width: 156px;"> <a href="http://lec-academy.ro/wp-content/uploads/2012/03/Brendan.bmp"><img class="size-full wp-image-226" title="Brendan" src="http://lec-academy.ro/wp-content/uploads/2012/03/Brendan.bmp" alt="Brendan" width="150" height="150" /></a> </dl>
</div>
<p></ br><br />
Twitter – <a href="http://twitter.com/brendaneich">http://twitter.com/brendaneich</a><br />
Wikipedia Page – <a href="http://en.wikipedia.org/wiki/Brendan_Eich">http://en.wikipedia.org/wiki/Brendan_Eich</a><br />
</ br><br />
Brendan Eich este programator si creatorul limbajului JavaScript.<br />
</ br><br />
In prezent el este Chief Technology Officer la Mozilla Corporation.<br />
</ br><br />
</ br><br />
</ br></p>
<p align="center">
<strong>Carl Sassenrath</strong>
</p>
<p></ br></p>
<div class="mceTemp">
<dl id="attachment_226" class="wp-caption alignleft" style="width: 156px;"> <a href="http://lec-academy.ro/wp-content/uploads/2012/03/Carl.bmp"><img class="size-full wp-image-226" title="Carl" src="http://lec-academy.ro/wp-content/uploads/2012/03/Carl.bmp" alt="Carl" width="150" height="150" /></a> </dl>
</div>
<p></ br><br />
</ br><br />
Official Site – <a href="http://www.sassenrath.com">http://www.sassenrath.com</a><br />
Wikipedia Page – <a href="http://en.wikipedia.org/wiki/Carl_Sassenrath">http://en.wikipedia.org/wiki/Carl_Sassenrath</a><br />
</ br><br />
Carl Sassenrath este un arhitect de sisteme de operare si al limbajelor de programare. In prezent, el este designer al limbajului REBOL, precum si CTO la Technologies REBOL.<br />
</ br><br />
</ br><br />
</ br></p>
<p align="center">
<strong>Bjarne Stroustrup</strong>
</p>
<p></ br></p>
<div class="mceTemp">
<dl id="attachment_226" class="wp-caption alignleft" style="width: 156px;"> <a href="http://lec-academy.ro/wp-content/uploads/2012/03/Bjarne.bmp"><img class="size-full wp-image-226" title="Bjarne" src="http://lec-academy.ro/wp-content/uploads/2012/03/Bjarne.bmp" alt="Bjarne" width="150" height="150" /></a> </dl>
</div>
<p></ br><br />
ATT Research – <a href="http://www.research.att.com/~bs/">http://www.research.att.com</a><br />
Wikipedia – <a href="http://en.wikipedia.org/wiki/Bjarne_Stroustrup">http://en.wikipedia.org/wiki/Bjarne_Stroustrup</a><br />
</ br><br />
Bjarne Stroustrup este un om de stiinta care a dezvoltat limbajul C++ de programare.<br />
El este in prezent profesor titular al Colegiului de Inginerie, Catedra de Informatic la Universitatea Texas A&#038;M.<br />
</ br><br />
</ br></p>
<p align="center">
<strong>Bram Cohen</strong>
</p>
<p></ br></p>
<div class="mceTemp">
<dl id="attachment_226" class="wp-caption alignleft" style="width: 156px;"> <a href="http://lec-academy.ro/wp-content/uploads/2012/03/Bram.bmp"><img class="size-full wp-image-226" title="Bram Cohen" src="http://lec-academy.ro/wp-content/uploads/2012/03/Bram.bmp" alt="Bram Cohen" width="150" height="150" /></a> </dl>
</div>
<p></ br><br />
Bram Cohen – <a href="http://bramcohen.com">http://bramcohen.com</a><br />
Wikipedia Page – <a href="http://en.wikipedia.org/wiki/Bram_Cohen">http://en.wikipedia.org/wiki/Bram_Cohen</a><br />
</ br><br />
Bram Cohen este un programator american si este binecunoscutul autor al peer-to-peer (P2P) BitTorrent.<br />
El a creat, de asemenea, primul program de file sharing pentru a utiliza protocolul, cunoscut sub numele de BitTorrent.<br />
</ br><br />
</ br></p>
<p align="center">
<strong>Alan Cooper</strong>
</p>
<p></ br></p>
<div class="mceTemp">
<dl id="attachment_226" class="wp-caption alignleft" style="width: 156px;"> <a href="http://lec-academy.ro/wp-content/uploads/2012/03/Alan.bmp"><img class="size-full wp-image-226" title="Alan Cooper" src="http://lec-academy.ro/wp-content/uploads/2012/03/Alan.bmp" alt="Alan Cooper" width="150" height="150" /></a> </dl>
</div>
<p></ br><br />
Cooper – <a href="http://www.cooper.com/alan/father_of_vb.html">http://www.cooper.com/alan/father_of_vb.html</a><br />
Wikipedia Page – <a href="http://en.wikipedia.org/wiki/Alan_Cooper">http://en.wikipedia.org/wiki/Alan_Cooper</a><br />
</ br><br />
Cooper este numit parintele &#8220;Visual Basic&#8221;, desi o mare parte din munca pentru Visual Basic a fost realizata de grupul intern de la Microsoft.<br />
Cooper a fost forta conducatoare din spatele VB 1.0 si a contribuit la interfata grafica pentru sistemul API.<br />
</ br><br />
</ br><br />
</ br></p>
<p align="center">
<strong>Larry Wall</strong>
</p>
<p></ br></p>
<div class="mceTemp">
<dl id="attachment_226" class="wp-caption alignleft" style="width: 156px;"> <a href="http://lec-academy.ro/wp-content/uploads/2012/03/Larry-Wall.bmp"><img class="size-full wp-image-226" title="Larry Wall" src="http://lec-academy.ro/wp-content/uploads/2012/03/Larry-Wall.bmp" alt="Larry Wall" width="150" height="150" /></a> </dl>
</div>
<p></ br><br />
Perl – <a href="http://www.perl.org">http://www.perl.org</a><br />
Wall – <a href="http://www.wall.org/~larry/">http://www.wall.org/~larry/</a><br />
Wikipedia Page – <a href="http://en.wikipedia.org/wiki/Larry_Wall">http://en.wikipedia.org/wiki/Larry_Wall</a><br />
</ br><br />
Larry Wall este programator si a contribuit la crearea limbajului de programare Perl (din 1987).<br />
</ br><br />
</ br><br />
</ br></p>
<p align="center">
<strong>Edsger Wybe Dijkstra</strong>
</p>
<p></ br></p>
<div class="mceTemp">
<dl id="attachment_226" class="wp-caption alignleft" style="width: 156px;"> <a href="http://lec-academy.ro/wp-content/uploads/2012/03/Edsger.bmp"><img class="size-full wp-image-226" title="Edsger" src="http://lec-academy.ro/wp-content/uploads/2012/03/Edsger.bmp" alt="Edsger" width="150" height="150" /></a> </dl>
</div>
<p></ br><br />
Wikipedia Page – <a href="http://en.wikipedia.org/wiki/Edsger_Dijkstra">http://en.wikipedia.org/wiki/Edsger_Dijkstra</a><br />
Dijkstra’s Algorithm – <a href="http://en.wikipedia.org/wiki/Dijkstra%27s_algorithm">http://en.wikipedia.org/wiki/Dijkstra%27s_algorithm</a><br />
</ br><br />
Edsger Wybe Dijkstra a fost un om de stiinta olandez in informatica.<br />
El a primit Premiul Turing din 1972 pentru contributii fundamentale la dezvoltarea limbajelor de programare si a fost presedintele Centenarului Schlumberger de Informatica de la Universitatea din Texas, din 1984 pana în 2000.<br />
</ br><br />
</ br></p>
<p align="center">
<strong>John Resig</strong>
</p>
<p></ br></p>
<div class="mceTemp">
<dl id="attachment_226" class="wp-caption alignleft" style="width: 156px;"> <a href="http://lec-academy.ro/wp-content/uploads/2012/03/John.bmp"><img class="size-full wp-image-226" title="John" src="http://lec-academy.ro/wp-content/uploads/2012/03/John.bmp" alt="John" width="150" height="150" /></a> </dl>
</div>
<p></ br><br />
eJohn – <a href="http://ejohn.org">http://ejohn.org</a><br />
jQuery – <a href="http://www.jquery.com">http://www.jquery.com</a><br />
Twitter – <a href="http://twitter.com/jeresig">http://twitter.com/jeresig</a><br />
</ br><br />
John este creatorul librariei jQuery pentru Javascript. Este de asemenea programator Javascript si blogger.<br />
El in prezent lucreaza la cea de-a doua carte “Secrets of the javascript ninja”.<br />
</ br><br />
</ br></p>
<p align="center">
<strong>Guido van Rossum</strong>
</p>
<p></ br></p>
<div class="mceTemp">
<dl id="attachment_226" class="wp-caption alignleft" style="width: 156px;"> <a href="http://lec-academy.ro/wp-content/uploads/2012/03/Guido.bmp"><img class="size-full wp-image-226" title="Guido" src="http://lec-academy.ro/wp-content/uploads/2012/03/Guido.bmp" alt="Guido" width="150" height="150" /></a> </dl>
</div>
<p></ br><br />
Python – <a href="http://python.org/~guido/">http://python.org/~guido/</a><br />
Twitter – <a href="http://twitter.com/gvanrossum">http://twitter.com/gvanrossum</a><br />
</ br><br />
Guido este cel care a contribuit la dezvoltarea limbajului de programare Python. El s-a alaturat echipei Google in 2005.<br />
</ br><br />
In iunie 2003, el a fost finalist in categoria IT Software (individual) a Premiilor Network World Technology.<br />
</ br><br />
</ br><br />
</ p></p>
]]></content:encoded>
			<wfw:commentRss>http://lec-academy.ro/20-cei-mai-importanti-oameni-din-programare/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Programarea Orientată pe Obiect &#8211; Episod 5: Membri statici</title>
		<link>http://lec-academy.ro/membri-static/</link>
		<comments>http://lec-academy.ro/membri-static/#comments</comments>
		<pubDate>Thu, 13 Jan 2011 19:56:29 +0000</pubDate>
		<dc:creator>Andreea</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[membri statici]]></category>
		<category><![CDATA[static]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://lec-academy.ro/?p=3320</guid>
		<description><![CDATA[În acest tutorial veţi afla ce sunt membrii statici şi cum funcţionează ei.
Vom crea un exemplu simplu cu o clasă ce are doi membri, dintre care unul este static şi vom atribui valori acestora din instante de clase.]]></description>
			<content:encoded><![CDATA[<div class="mceTemp">
<dl id="attachment_226" class="wp-caption alignleft" style="width: 85px;">
<dt class="wp-caption-dt"><a href="http://lec-academy.ro/wp-content/uploads/2010/06/Php-carte.png"><img class="size-full wp-image-226" title="Tutorial PowerPoint" src="http://lec-academy.ro/wp-content/uploads/2010/06/Php-carte.png" alt="Tutorial PowerPoint" width="78" height="88" /></a></dt>
</dl>
</div>
<p>În acest tutorial veţi afla ce sunt membrii statici şi cum funcţionează ei.<br />
Vom crea un exemplu simplu cu o clasă ce are doi membri, dintre care unul este static şi vom atribui valori acestora din instante de clase.<br />
</ br><br />
</ br><br />
</ br><br />
<strong>Veţi învăţa:</strong></p>
<ul>
<li>Ce este un membru static</li>
<li>Cum se comporta un membru static</li>
</ul>
<p></ br><br />
<strong>Detalii:</strong></p>
<ul>
<li>Durata: 3 min</li>
<li>Dificultate: începător-mediu</li>
</ul>
<p></ br><br />
<strong>Întreaga serie (titlu):</strong></p>
<ul>
<li>Episod 5: Membri statici</li>
</ul>
<p></ br><br />
<strong>Linkuri utile:</strong></p>
<ul>
<li><a href="http://php.net/manual/en/language.oop5.static.php">http://php.net/manual/en/language.oop5.static.php</a></li>
</ul>
<p><iframe src="http://player.vimeo.com/video/18756838?portrait=0&amp;color=c9ff23" width="600" height="450" frameborder="0"></iframe></p>
<div class="banner-training"><img class="banner-training-img" src="http://lec-academy.ro/wp-content/uploads/2010/06/Php-carte.png" alt="PHP Training" width="59" height="83" /></p>
<h4 class="banner-training-titlu">Training PHP</h4>
<p class="banner-training-text">Dacă ţi-a plăcut acest tutorial, cu siguranţă vei găsi utile cursurile noastre de <a href="http://leconline.ro/curs-it/curs-php">Iniţiere în PHP</a> şi <a href="http://leconline.ro/curs-it/php-advanced.html">Initiere in PHP</a>. Predate de traineri care lucrează ca developeri PHP, aceste cursuri sunt bazate doar pe exemple practice astfel încât să îţi fie cât mai uşor să înveţi acest limbaj.</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://lec-academy.ro/membri-static/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Error Handling în PHP</title>
		<link>http://lec-academy.ro/error-handling-in-php/</link>
		<comments>http://lec-academy.ro/error-handling-in-php/#comments</comments>
		<pubDate>Sat, 08 Jan 2011 15:03:57 +0000</pubDate>
		<dc:creator>Andreea</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[error]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://lec-academy.ro/?p=3231</guid>
		<description><![CDATA[Verificarea erorilor în php este într-o oarecare măsura încorporată în execuţia standard de către server. Cum php este de la versiunea 5 orientat pe obiect, ne putem verifica erorile într-un mod mult mai bun. 
Modul în care trebuie să scriem codul într-o structura <em>try – throw – catch</em> este următorul.]]></description>
			<content:encoded><![CDATA[<div class="mceTemp">
<dl id="attachment_226" class="wp-caption alignleft" style="width: 93px;">
<dt class="wp-caption-dt"><a href="http://lec-academy.ro/wp-content/uploads/2010/06/Php-carte.png"><img class="size-full wp-image-226" title="Tutorial PowerPoint" src="http://lec-academy.ro/wp-content/uploads/2010/06/Php-carte.png" alt="Tutorial PowerPoint" width="80" height="87" /></a></dt>
</dl>
</div>
<p>Verificarea erorilor în php este într-o oarecare măsura încorporată în execuţia standard de către server. Cum php este de la versiunea 5 orientat pe obiect, ne putem verifica erorile într-un mod mult mai bun.<br />
Modul în care trebuie să scriem codul într-o structura <em>try – throw – catch</em> este următorul:</p>
<p>        <strong>1 Try</strong> – Codul pe care dorim să îl executăm îl pune într-o structură <em>try</em>. Daca codul scris în structura <em>try</em> se execută atunci codul continuă în mod normal. Dacă nu se reusteşte executarea atunci o excepţie va fi “aruncată”.</p>
<p>	<strong>2 Throw</strong> – Comanda cu care se transmite eroarea. Pentru fiecare throw trebuie să existe un catch.</p>
<p>	<strong>3 Catch</strong> – Este blocul care returnează mesajul de eroare şi crează un obiect ce conţine informaţii despre eroare.</p>
<p>< ?php<br />
function checkNum($number)<br />
  {<br />
  if($number>1)<br />
    {<br />
    throw new Exception(&#8220;Value must be 1 or below&#8221;);<br />
    }<br />
  return true;<br />
  }<br />
try<br />
  {<br />
  checkNum(2);<br />
  echo &#8216;If you see this, the number is 1 or below&#8217;;<br />
  }</p>
<p>catch(Exception $e)<br />
  {<br />
  echo &#8216;Message: &#8216; .$e->getMessage();<br />
  }<br />
?><br />
</ br><br />
<strong>Ce se întamplă în codul de mai sus:</strong><br />
-funcţia checkNum() verifică dacă un număr este mai mare decat 0, şi dacă este o excepţie va fi aruncată.<br />
-se apelează checkNum() într-un bloc catch<br />
-se aruncă excepţia din checkNum()<br />
-blocul catch prinde eroarea şi creaza un obiect $e de tipul Exception ce contine informaţiile despre eroare<br />
-eroarea este afişată folosindu-se de metoda obiectului $e getMessage()</p>
<p><strong>Crearea unei clase custom de excepţii.</strong><br />
In funcţie de codul executat, o excepţie poate avea anumite caracteristici. Ca urmare tipul obiectului cu informaţiile despre eroare poate fi modificat. Ne putem crea un astfel de tip definind o clasă ce extinde clasa Exception.</p>
<p>< ?php<br />
class EroareCustom extends Exception<br />
  {<br />
  public function errorMessage()<br />
    {<br />
    $msg = 'Eroare pe linia '.$this->getLine().&#8217; in &#8216;.$this->getFile()<br />
    .&#8217;: <b>&#8216;.$this->getMessage().&#8217;</b> nu este o adresa de email valida&#8217;;<br />
    return $msg;<br />
    }<br />
  }</p>
<p>$email = &#8220;stefan@yahoo&#8230;com&#8221;;</p>
<p>try<br />
  {<br />
  if(filter_var($email, FILTER_VALIDATE_EMAIL) === FALSE)<br />
    {<br />
    throw new EroareCustom($email);<br />
    }<br />
  }</p>
<p>catch (EroareCustom $e)<br />
  {<br />
  echo $e->errorMessage();<br />
  }<br />
?><br />
</ br><br />
<strong>Ce se întâmplă mai sus:</strong><br />
-se crează clasa EroareCustom ca o clasa Exception modificată. Asta înseamnă că a moştenit toate metodele clasei Exception inclusive getMessage(), getLine() şi getMessage.<br />
-funcţia errorMessage este creată în clasa EroareCustom, funcţie ce returnează mesajul nostru.<br />
-se crează variabila $email ce conţine o adresa de email scrisă greşit.<br />
-se execută blocul try şi se arunca eroarea.<br />
-blocul catch prinde excepţia şi o salvează în noul obiect, după care returneaza mesajul.<br />
</ br><br />
<strong>Linkuri utile:</strong></p>
<ul>
<li><a href="http://php.net/manual/en/language.exceptions.php"</a>http://php.net/manual/en/language.exceptions.php</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://lec-academy.ro/error-handling-in-php/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Citirea dintr-un XML</title>
		<link>http://lec-academy.ro/citirea-dintr-un-xml/</link>
		<comments>http://lec-academy.ro/citirea-dintr-un-xml/#comments</comments>
		<pubDate>Thu, 16 Dec 2010 14:56:19 +0000</pubDate>
		<dc:creator>Andreea</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://lec-academy.ro/?p=3095</guid>
		<description><![CDATA[<strong>XML</strong> sau <strong>eXtensible Markup Language</strong> reprezintă o modalitate de a structura informaţii într-un mod comun tuturor limbajelor de programare. În fişierele XML informaţia este strucurată cu ajutorul unor taguri de marcare, la fel ca în HTML (corect spus este ca html este un fel de XML). Toate tagurile din interiorul fişierului se află într-un tag, numit tag root, pe care îl folosim ca să adăugam taguri noi în fişier. ]]></description>
			<content:encoded><![CDATA[<div class="mceTemp">
<dl id="attachment_226" class="wp-caption alignleft" style="width: 93px;">
<dt class="wp-caption-dt"><a href="http://lec-academy.ro/wp-content/uploads/2010/06/Php-carte.png"><img class="size-full wp-image-226" title="Tutorial PowerPoint" src="http://lec-academy.ro/wp-content/uploads/2010/06/Php-carte.png" alt="Tutorial PowerPoint" width="80" height="87" /></a></dt>
</dl>
</div>
<p><strong>XML</strong> sau <strong>eXtensible Markup Language</strong> reprezintă o modalitate de a structura informaţii într-un mod comun tuturor limbajelor de programare. În fişierele XML informaţia este strucurată cu ajutorul unor taguri de marcare, la fel ca în HTML (corect spus este ca html este un fel de XML). Toate tagurile din interiorul fişierului se află într-un tag, numit tag root, pe care îl folosim ca să adăugam taguri noi în fişier. Nu se pot adăuga mai multe taguri root. În exemplul nostru tagul root va fi tagul “persoane”.</p>
<p>< ?XML version="1.0" encoding="ISO-8859-1"? ><br />
< persoane ><br />
	< persoana ><br />
		< nume >Marin< /nume><br />
		< prenume >Georgescu< /prenume><br />
< /persoana><br />
< nume >Florin< /nume ><br />
		< prenume >Popescu< /prenume ><br />
	< persoana ><br />
< /persoana ><br />
< /persoane ><br />
</ br><br />
Aplicaţia din exemplul nostru se va folosi de un fişier XML pentru a stoca numele şi prenumele unor persoane. Pentru asta vom crea o pagina php ce conţine un form care preia numele şi prenumele, trimitându-le prin get aceleiaşi pagini. Din acest motiv în pagina vom avea cod php în două locuri, însa pentru ambele cazuri vom avea nevoie de definirea obiectului de tip DOMDcoument, lucru pe care îl facem in partea de sus a paginii.  Tot în partea de sus a paginii vom avea structura care se ocupă cu scrierea in XML ţi deci se execută dacă s-a transmis ceva prin GET. Cealaltă parte de cod php este partea care va afişa elementele din XML, va fi scrisă după elementul form, şi va fi executată întotdeauna.</p>
<p>< ?php<br />
$doc = new DOMDocument();<br />
$doc->load(&#8220;fisier.xml&#8221;);<br />
$root = $doc->documentElement;</p>
<p>if (isset($_GET["executat"])){<br />
	$persoana = $doc->createElement(&#8220;persoana&#8221;);<br />
	$nume = $doc->createElement(&#8220;nume&#8221;,$_GET["nume"]);<br />
	$prenume = $doc->createElement(&#8220;prenume&#8221;,$_GET["prenume"]);	</p>
<p>	$persoana->appendChild($nume);<br />
	$persoana->appendChild($prenume);</p>
<p>	$root->appendChild($persoana);<br />
	$doc->Save(&#8220;fisier.xml&#8221;);<br />
}<br />
?><br />
< html ><br />
	< head ><br />
		< title >DomDocument< /title ><br />
	< /head ><br />
	< body ><br />
		< form action="XML.php" ><br />
			Nume &nbsp;&nbsp;&nbsp; < input type="text" name="nume" />< br /><br />
			Prenume < input type="text" name="prenume" />< br /><br />
			< input type="submit" name="executat" value="Salveaza"/ ><br />
		< /form><br />
		<?php<br />
			$elemente = $root->getElementsByTagName(&#8220;persoana&#8221;);<br />
			foreach ($elemente AS $element){<br />
				$date = $element->childNodes;<br />
				echo &#8220;< h3 >&#8220;;<br />
				foreach ($date AS $data){<br />
					echo $data->nodeValue.&#8221; &#8220;;<br />
				}<br />
				echo &#8220;</h3>
<p>&#8220;;<br />
			}</p>
<p>		?><br />
	< /body><br />
< /html></p>
<p>Parcurgerea cu php se va face cu ajutorul unui obiect de tip DOMDocument. Acesta are metoda load, metoda ce primeste ca parametru calea catre fisierul XML. Pentru a putea lucra cu fisiere XML va trebui sa ne folosim de elementul root, atat pentru citire cat si pentru scriere. Ne legam la root-ul documentului folosin proprietatea documentELement. </p>
<p>Parcurgerea se face folosind rezultatul metodei <strong>getElementsByTagName()</strong>, metoda ce creaza o lista de noduri(elemente) ce corespund numelui respective. In aplicatia noastra parcurgem elementele intr-un foreach. La fiecare parcurgere a foreach-ului ne aflam la cate un element de tip persoana. Insa vrem sa afisam valorile elementelor din interiorul elementului persoana. Extragem elementele interioare unui alt element folosind proprietatea <strong>childNodes</strong>. Atentie ca childNodes nu este acelas lucru cu getElementsByTagName intrucat childNodes returneaza toate elementele interioare. Parcurgem si lista returnata de childNodes si afisam valoarea din interiorul elementelor folosindu-ne de proprietatea  <strong>nodeValue</strong>.</p>
<p><strong>Introducerea de date</strong> in XML se face creeând un element pe care îl adăugăm root-ului. Dupa ce l-am adăugat pentru a şi scire în fişierul XML vom apela metoda Save(). Aceasta primeşte ca parametru calea către fişierul respectiv. Pentru a creea elementul “persoana”, element ce îl vom adauga în root vom folosi metoda <strong>createElement()</strong> a obiectului de tip DOMDocument. Aceasta poate să primească mai multe structuri de parametrii. Daca îi transmitem un singur parametru de tip text atunci se va crea un element simplu, având numele valoarea transmisa prin parametru. Dacă după parametrul corespunzător numelui ăi mai transmitem un al doilea prametru de tip text, atunci acea a doua valoare va fi textul interior elementului. În cazul nostru atribuim decât numele pentru elementul persoana, iar pentru cele doua elemente, nume şi premume, vom transmite şi al doilea prametru, şi anume valorile corespunzătoare transmise prin GET. Pentru a faca elementele nume şi prenume să aparţină elementului persoana ne folosim de metoda appendChild ce primeşte ca parametru elementul ce va fi adaugat elementului care a apelat metoda. Aceast lucru va trebui sa îl facem pentru adăugarea elementului nou creat, persoana, în root. La final, dupa cum am spus, apelăm metoda Save ca să salvăm structura din memoria virtuala în fişier.<br />
</ br><br />
<strong>Linkuri utile:</strong></p>
<ul>
<li><a href="http://www.php.net/manual/en/refs.xml.php"</a>http://www.php.net/manual/en/refs.xml.php</a></li>
</ul>
<p>Vă invităm să încercaţi si voi acest exemplu.</p>
]]></content:encoded>
			<wfw:commentRss>http://lec-academy.ro/citirea-dintr-un-xml/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Programarea Orientată pe Obiect &#8211; Episod 4: Constructorii</title>
		<link>http://lec-academy.ro/programarea-orientat-pe-obiecte-episod-3-constructorii/</link>
		<comments>http://lec-academy.ro/programarea-orientat-pe-obiecte-episod-3-constructorii/#comments</comments>
		<pubDate>Thu, 09 Dec 2010 17:37:53 +0000</pubDate>
		<dc:creator>Andreea</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[constructor]]></category>
		<category><![CDATA[mosternie]]></category>
		<category><![CDATA[parent]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://lec-academy.ro/?p=3016</guid>
		<description><![CDATA[În acest tutorial  veţi învăţa depre lucrul cu constructorii. Aceştia sunt funcţii care apelează în momentul în care se instanţiază un obiect şi ne putem folosi de ei pentru a iniţializa atribute sau pentru a porni anumite acţiuni cum ar fi un timer.]]></description>
			<content:encoded><![CDATA[<div class="mceTemp">
<dl id="attachment_226" class="wp-caption alignleft" style="width: 93px;">
<dt class="wp-caption-dt"><a href="http://lec-academy.ro/wp-content/uploads/2010/06/Php-carte.png"><img class="size-full wp-image-226" title="Tutorial PowerPoint" src="http://lec-academy.ro/wp-content/uploads/2010/06/Php-carte.png" alt="Tutorial PowerPoint" width="80" height="87" /></a></dt>
</dl>
</div>
<p>În acest tutorial  veţi învăţa depre lucrul cu constructorii. Aceştia sunt funcţii care apelează în momentul în care se instanţiază un obiect şi ne putem folosi de ei pentru a iniţializa atribute sau pentru a porni anumite acţiuni cum ar fi un timer.<br />
</ br><br />
</ br><br />
</ br><br />
<strong>Veţi învăţa:</strong></p>
<ul>
<li>Ce este un constructor</li>
<li>Cum lucreaza constructorii cu moştenirea</li>
</ul>
<p></ br><br />
<strong>Detalii</strong><br />
</ br></p>
<ul>
<li>Durata:6 min</li>
<li>Dificulatate: mediu</li>
</ul>
<p></ br><br />
<strong>Întreaga serie (titlu):</strong></p>
<ul>
<li>Episod 4: Constructorii</li>
</ul>
<p></ br><br />
<strong>Linkuri utile:</strong></p>
<ul>
<li><a href="http://php.net/manual/en/language.oop5.decon.php"</a>http://php.net/manual/en/language.oop5.decon.php</li>
</ul>
<p><iframe src="http://player.vimeo.com/video/17637178?portrait=0&amp;color=c9ff23" width="600" height="450" frameborder="0"></iframe></p>
<div class="banner-training">
<img src="http://lec-academy.ro/wp-content/uploads/2010/06/Php-carte.png" alt="PHP Training" class="banner-training-img" width="59" height="83" /></p>
<h4 class="banner-training-titlu">Training PHP</h4>
<p class="banner-training-text">Dacă ţi-a plăcut acest tutorial, cu siguranţă vei găsi utile cursurile noastre de <a href="http://leconline.ro/curs-it/curs-php">Iniţiere în PHP</a> şi <a href="http://leconline.ro/curs-it/php-advanced.html">Initiere in PHP</a>. Predate de traineri care lucrează ca developeri PHP, aceste cursuri sunt bazate doar pe exemple practice astfel încât să îţi fie cât mai uşor să înveţi acest limbaj.</p>
</div>
<p></p>
]]></content:encoded>
			<wfw:commentRss>http://lec-academy.ro/programarea-orientat-pe-obiecte-episod-3-constructorii/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Programarea Orientată pe Obiect &#8211; Episod 3: Modificatori de acces</title>
		<link>http://lec-academy.ro/programarea-orientata-pe-obiect-episod-3-modificatori-de-acces/</link>
		<comments>http://lec-academy.ro/programarea-orientata-pe-obiect-episod-3-modificatori-de-acces/#comments</comments>
		<pubDate>Thu, 02 Dec 2010 16:33:08 +0000</pubDate>
		<dc:creator>Andreea</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[acces]]></category>
		<category><![CDATA[getteri]]></category>
		<category><![CDATA[modifiers]]></category>
		<category><![CDATA[private]]></category>
		<category><![CDATA[protected]]></category>
		<category><![CDATA[public]]></category>
		<category><![CDATA[setteri]]></category>

		<guid isPermaLink="false">http://lec-academy.ro/?p=2927</guid>
		<description><![CDATA[În acest tutorial veţi învaţa despre modificatorii de acces în <a href="http://www.leconline.ro/main/curs_php">PHP</a> şi unde îi puteţi folosi. Ne vom referi la public, private şi protected făcând referire la cazurile în care aceştia sunt necesari. De asemenea vom lucra şi cu setteri şi getteri.]]></description>
			<content:encoded><![CDATA[<div class="mceTemp">
<dl id="attachment_226" class="wp-caption alignleft" style="width: 93px;">
<dt class="wp-caption-dt"><a href="http://lec-academy.ro/wp-content/uploads/2010/06/Php-carte.png"><img class="size-full wp-image-226" title="Tutorial PowerPoint" src="http://lec-academy.ro/wp-content/uploads/2010/06/Php-carte.png" alt="Tutorial PowerPoint" width="80" height="87" /></a></dt>
</dl>
</div>
<p>În acest tutorial veţi învaţa despre modificatorii de acces în <a href="http://www.leconline.ro/main/curs_php">PHP</a> şi unde îi puteţi folosi. Ne vom referi la public, private şi protected făcând referire la cazurile în care aceştia sunt necesari. De asemenea vom lucra şi cu setteri şi getteri.<br />
</ br><br />
</ br><br />
</ br><br />
<strong>Veţi învăţa:</strong></p>
<ul>
<li>Ce însemană public</li>
<li>Ce însemană private</li>
<li>Ce însemană protected</li>
<li>Ce sunt getteri şi setteri</li>
</ul>
<p></ br><br />
<strong>Detalii</strong><br />
</ br></p>
<ul>
<li>Durata: 7:30 min</li>
<li>Dificulatate: mediu</li>
</ul>
<p></ br><br />
<strong>Întreaga serie (titlu):</strong></p>
<ul>
<li>Episod 3: Modificatori de acces</li>
</ul>
<p></ br><br />
<strong>Linkuri utile:</strong></p>
<ul>
<li><a href="http://php.net/manual/en/language.oop5.visibility.php">http://php.net/manual/en/language.oop5.visibility.php</a></li>
</ul>
<p><iframe src="http://player.vimeo.com/video/17405214?portrait=0&amp;color=c9ff23" width="600" height="450" frameborder="0"></iframe></p>
<div class="banner-training">
<img src="http://lec-academy.ro/wp-content/uploads/2010/06/Php-carte.png" alt="PHP Training" class="banner-training-img" width="59" height="83" /></p>
<h4 class="banner-training-titlu">Training PHP</h4>
<p class="banner-training-text">Dacă ţi-a plăcut acest tutorial, cu siguranţă vei găsi utile cursurile noastre de <a href="http://leconline.ro/curs-it/curs-php">Iniţiere în PHP</a> şi <a href="http://leconline.ro/curs-it/php-advanced.html">Initiere in PHP</a>. Predate de traineri care lucrează ca developeri PHP, aceste cursuri sunt bazate doar pe exemple practice astfel încât să îţi fie cât mai uşor să înveţi acest limbaj.</p>
</div>
<p></p>
]]></content:encoded>
			<wfw:commentRss>http://lec-academy.ro/programarea-orientata-pe-obiect-episod-3-modificatori-de-acces/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP date</title>
		<link>http://lec-academy.ro/php-date/</link>
		<comments>http://lec-academy.ro/php-date/#comments</comments>
		<pubDate>Thu, 25 Nov 2010 17:55:51 +0000</pubDate>
		<dc:creator>Andreea</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[functia date]]></category>
		<category><![CDATA[functia print]]></category>
		<category><![CDATA[php date]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://lec-academy.ro/?p=2842</guid>
		<description><![CDATA[<strong>Funcţia  date</strong> returnează informaţii despre momentul în care este apelată. Aceasta primeşte ca parametru un string ce îi spune ce informaţii despre data dorim să aflăm. Aceasta poate returna informaţii despre <strong><em>secunde,minute,ora,zi,luna</em></strong> etc.
]]></description>
			<content:encoded><![CDATA[<div class="mceTemp">
<dl id="attachment_226" class="wp-caption alignleft" style="width: 93px;">
<dt class="wp-caption-dt"><a href="http://lec-academy.ro/wp-content/uploads/2010/06/Php-carte.png"><img class="size-full wp-image-226" title="Tutorial PowerPoint" src="http://lec-academy.ro/wp-content/uploads/2010/06/Php-carte.png" alt="Tutorial PowerPoint" width="80" height="90" /></a></dt>
</dl>
</div>
<p><strong>Funcţia date</strong> returnează informaţii despre momentul în care este apelată. Aceasta primeşte ca parametru un string ce îi spune ce informaţii despre data dorim să aflăm. Aceasta poate returna informaţii despre <strong><em>secunde,minute,ora,zi,luna</em></strong> etc.<br />
</ br><br />
</ br><br />
</ br><br />
<strong><em> < html ><br />
< head ><br />
< title >Schimbare background < / title ><br />
< / head ><br />
< ? php<br />
$ora = date("H");<br />
print("$ora");<br />
if($ora > 5 &#038; $ora < 10) {<br />
	$bgcolor = "#0000FF";<br />
} else if($ora >= 10 &#038; $ora < 19) {<br />
	$bgcolor = "#FFFF00";<br />
} else if($ora >= 19 &#038; $ora < 21) {<br />
	$bgcolor = "#FF0080";<br />
} else if($ora >= 21 &#038; $ora < 10) {<br />
	$bgcolor = "#808080";<br />
} </p>
<p>print("< body bgcolor=\"$bgcolor\" >\n&#8221;);<br />
?><br />
< br >Se schimba culoarea de background în funcţie de oră<br />
< / body ><br />
< / html ></em></strong></p>
<p></ br><br />
În exemplul de mai sus folosim <strong>funcţia date</strong> pentru a controla culoarea de background a unei pagini în funcţie de momentul zilei. Am ales 4 perioade din zi cărora să le corespundă o altă culoare de background. Între orele 5 dimineaţa şi 10 dimineaţa pagina va avea culoarea albastru deschis. Între orele 10 dimineaţa şi 7 după masa culoarea va fi galben, sugerând un soare puternic. Între orele 7 şi 9 seara culoarea va fi corespunzatoare cu culoarea cerului la apus. Între orele 9 seara şi 10 dimineaţa culoarea de background va fi gri închis.<br />
</ br><br />
În variabila <strong>$ora</strong> am salvat ora actuală apelând <strong>funcţia date()</strong> cu parametrul “H”. Afişeză ora folosind <strong>funcţia print</strong> pentru a verifica codul după care într-o structura if – else verificam in ce interval ne aflam. Am atribuit culorile cu ajutorul codului hexazecimal RGB.<br />
Cu ajutorul <strong>funcţiei print</strong> am printat tagul de inceput al elementului body, tag în care avem definită şi culoarea de background. De menţionat că efectul putea fi obtinut şi folosindu-ne de <em>CSS</em>, ceea ce ar fi fost şi recomandat, însă am ales această modalitate pentru a face exemplul mai simplu.<br />
</ br><br />
Vă invităm să incercaţi şi voi acest exemplu şi să ne spuneţi părerea vostră.</p>
]]></content:encoded>
			<wfw:commentRss>http://lec-academy.ro/php-date/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Programarea Orientată pe Obiect &#8211; Episod 2: Moştenirea</title>
		<link>http://lec-academy.ro/programarea-orientata-pe-obiecte-episod-2-mostenirea/</link>
		<comments>http://lec-academy.ro/programarea-orientata-pe-obiecte-episod-2-mostenirea/#comments</comments>
		<pubDate>Fri, 19 Nov 2010 10:03:31 +0000</pubDate>
		<dc:creator>Andreea</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[extends]]></category>
		<category><![CDATA[inheretance]]></category>
		<category><![CDATA[mostenire]]></category>
		<category><![CDATA[obiect]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://lec-academy.ro/?p=2692</guid>
		<description><![CDATA[În acest tutorial veţi învăţa cum funcţionează moştenirea claselor. 
Vom crea două clase: pisică şi câine ce vor moşteni atributele şi metodele unei clase animal, venind însa şi cu unele noi.]]></description>
			<content:encoded><![CDATA[<div class="mceTemp">
<dl id="attachment_226" class="wp-caption alignleft" style="width: 93px;">
<dt class="wp-caption-dt"><a href="http://lec-academy.ro/wp-content/uploads/2010/06/Php-carte.png"><img class="size-full wp-image-226" title="Tutorial PowerPoint" src="http://lec-academy.ro/wp-content/uploads/2010/06/Php-carte.png" alt="Tutorial PowerPoint" width="80" height="87" /></a></dt>
</dl>
</div>
<p>În acest tutorial veţi învăţa cum funcţionează moştenirea claselor.<br />
Vom crea două clase: pisică şi câine ce vor moşteni atributele şi metodele unei clase animal, venind însa şi cu unele noi.<br />
</ br><br />
</ br><br />
</ br><br />
<strong>Veţi învăţa:</strong></p>
<ul>
<li>Ce înseamnă moştenirea</li>
<li>Cum să folosiţi moştenirea</li>
</ul>
<p></ br><br />
<strong>Detalii</strong><br />
</ br></p>
<ul>
<li>Durata: 5:30 min</li>
<li>Dificulatate: începător-mediu</li>
</ul>
<p></ br><br />
<strong>Întreaga serie (titlu):</strong></p>
<ul>
<li>Episod 2: moştenirea</li>
</ul>
<p></ br><br />
<strong>Linkuri utile:</strong></p>
<ul>
<li><a href="http://www.php.net/manual/en/language.oop5.inheritance.php"></a>http://www.php.net/manual/en/language.oop5.inheritance.php</li>
</ul>
<p><iframe src="http://player.vimeo.com/video/16992115?portrait=0&amp;color=c9ff23" width="600" height="450" frameborder="0"></iframe></p>
<div class="banner-training">
<img src="http://lec-academy.ro/wp-content/uploads/2010/06/Php-carte.png" alt="PHP Training" class="banner-training-img" width="59" height="83" /></p>
<h4 class="banner-training-titlu">Training PHP</h4>
<p class="banner-training-text">Dacă ţi-a plăcut acest tutorial, cu siguranţă vei găsi utile cursurile noastre de <a href="http://leconline.ro/curs-it/curs-php">Iniţiere în PHP</a> şi <a href="http://leconline.ro/curs-it/php-advanced.html">Initiere in PHP</a>. Predate de traineri care lucrează ca developeri PHP, aceste cursuri sunt bazate doar pe exemple practice astfel încât să îţi fie cât mai uşor să înveţi acest limbaj.</p>
</div>
<p></p>
]]></content:encoded>
			<wfw:commentRss>http://lec-academy.ro/programarea-orientata-pe-obiecte-episod-2-mostenirea/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

