DOUG LLOYD: Mar sin, inár físeán ar PHP error, Labhair muid a lán faoi conas PHP Is féidir é a úsáid ag an líne ordaithe cláir ar shlí a reáchtáil go tá muid eolas maidir leor le ó C. Ach mar a luaigh mé freisin sa mhéid is go físeán, PHP Forbraíodh dtús chun cláir gréasáin a chur i bhfeidhm, láithreáin ghréasáin. Agus mar sin i físeán seo tá muid ag dul chun labhairt faoi conas táimid ag úsáid PHP i gcomhthéacs an forbairt gréasáin. Tá a fhios againn go, cheana, ó ár físeán ar HTML, go bhfuil láithreáin ghréasáin a tógadh as sraith de clibeanna HTML a shainmhíníonn semantically an struchtúr leathanach gréasáin. Ach go Tá suíomh gréasáin tógtha le HTML íon ag fulaingt ó an-, teorannú an-tromchúiseach. Agus chun an teorannú a léiriú, a ligean ar mheas ar an méid seo a leanas. Mar sin, anois is mian liom a thógáil ar an leathanach gréasáin go, aon uair na cuairteanna úsáideoir é, tugann sé dom an láthair am i Cambridge, Mass., thaispeánann sé go dtí an nóiméad is déanaí. Má bhí mé ag déanamh an ceart seo anois, D'fhéadfadh liom a rá rud éigin mar seo. Am atá ann faoi láthair i Cambridge-- ionas go mbeidh mé Clibeanna HTML, tags ceann, tags teideal, tags-- comhlacht ar an láthair Tá am i Cambridge 14:08, priontáil amach am míleata. Cad a tharlaíonn má tá sé anois 02:09, 14:09? Bhuel go dtí seo, le HTML, tá mé chun dul isteach agus é a athrú go 14:09. Agus ansin nóiméad amháin ina dhiaidh sin, Caithfidh mé a athrú arís. Agus ansin nóiméad amháin ina dhiaidh sin, Caithfidh mé a athrú arís. Agus mar is féidir leat a shamhlú, go dócha go bhfuil an post is measa riamh. Tá tú an stiúrthóir gréasáin le haghaidh leathanach gréasáin, agus gach nóiméad, 24 uair sa lá, is gá duit a thabhairt cothrom le dáta an t-am atá ann faoi láthair ag oscailt de láimh time.html agus ag athrú díreach Blúire de chód a rá an am atá ann faoi láthair i uair an chloig agus nóiméid. Sin is dócha nach bhfuil an- úsáid mhaith as ár n-acmhainní, idir acmhainní daonna agus ríomhaireachta. Láithreáin ghréasáin a bhfuil gach HTML go hiomlán statach. T-aon bhealach is féidir leat a thabhairt cothrom le dáta ábhar, mar atá le feiceáil againn ach, Is a oscailt de láimh siúd fhoinse comhaid, in eagar iad, agus iad a shábháil. Agus ansin nuair a bheidh an t-úsáideoir refreshes an leathanach, nó cuairt ar an leathanach le haghaidh an chéad am, beidh siad a fháil ar an ábhar is déanaí. Ach amháin mar gheall tá muid de láimh in eagar é. Má thosaíonn muid a mheascadh roinnt PHP i ann, is féidir ár cód fháil ar a lán níos solúbtha. Agus is féidir linn a bheith ar bhealach do ár leathanaigh a bheith dinimiciúil, nó a nuashonrú iad féin, gan gá ár bocht stiúrthóir gréasáin sa sampla roimhe a bheith de láimh rudaí thabhairt suas chun dáta. Is féidir leo é a dhéanamh go huathoibríoch. Nach bhfuil againn a idirghabháil a dhéanamh. Is féidir linn a fháil ar roinnt codlata. Cé acu is dócha go bhfuil an rud maith má bhfuil tú ag déanamh a lán de cláir gréasáin. Mar sin, i CS50 IDE, á reáchtáil againn freastalaí gréasáin ar a dtugtar Apache. Tá sé an-coitianta a úsáidtear, foinse oscailte córas fhreastalaí gréasáin. Tá an córas seo an cumas a léirmhíniú PHP, atá ag dul a bheith úsáideach má ba mhaith leat a dhéanamh ar aon cláir PHP. Agus i IDE CS50, ní mór dúinn a ordú chun seo a dhéanamh éasca é a dhéanamh, apache50 thosú. Agus ansin go Slais cosán, Slais go, Slais dir, go díreach ar bhealach gur coitianta léiríonn an méid atá tú a shonraítear anseo Is conair do áirithe go eolaire ag iarraidh a bheith ar an fhréamh suíomh, nó an leathanach fhréamh, nó an fillteán as a do fhreastalaí gréasáin Beidh tús chun comhaid a scrúdú agus a sheirbheáil suas iad do chliaint a iarraidh orthu. Mar sin, a ligean ar pop thar a CS50 IDE, ach a léiríonn tú, i ndáiríre tapaidh, conas a oibríonn sé seo. Mar sin, anseo i IDE CS50, tá mé i eolaire dtugtar Seachtain nialais Naoi. Agus tá mé two-- bhfuil mé chun báis ar ordú LS díreach thuas a thaispeáint duit go bhfuil mé dhá eolairí i anseo, PHP, a bhfuil an sraith de chomhaid a úsáidtear mé i an físeán error PHP, agus ansin PHP-gréasáin, a bhfuil an sraith de chomhaid go bhfuil mé ba mhaith leat a úsáid i físeán seo. Agus ba mhaith liom buíochas a thosú ásc freastalaí gréasáin leis an ábhar ar an fillteán PHP-gréasáin mar a bhfuil na comhaid á sheirbheáil suas. Mar sin, cad tá mé ag dul a dhéanamh? Mé ag dul chun cineál apache50 spás tús, PHP spás, gréasáin Fleasc. Sin an cosán a eolaire ó áit a bhfuil mé i láthair na huaire. Ansin, bhuail mé Iontráil. Tá sé seo ag dul a dhéanamh ar beagán de stuif anseo. Agus ansin tá sé ag dul a rá, Apache thosaigh go rathúil. Tá do láithreán ar fáil anois at-- agus ansin níl an URL don suíomh. Mar sin, cad tá mé ag dul a dhéanamh? Tá mé ag dul a chóipeáil go tapa seo. Agus tá mé ag dul a oscailt up-- agus Feicfidh mé zúmáil amach le beagán here-- Tá mé ag dul a oscailt suas cluaisín nua i Chrome. Agus tá mé ag dul chun cuairt a thabhairt go URL. Tá mé ag dul a bhuail Iontráil. Tá sé ag dul a luchtú. Agus beidh mé súmáil amach arís. Agus is féidir linn a fheiceáil anseo go bhfuil an t-ábhar de mo eolaire gréasáin PHP. Mar sin, anois cad atá ag tarlú go bunúsach anseo tá, mo shampla de CS50 IDE Tá ag freastal ar suas na comhaid seo le aon duine a iarrann orthu. Agus le linn na físeán seo, beidh orainn a shórtáil de chur le breathnú ar a bunch de na comhaid éagsúla i gcomhthéacs. Chun tástáil go bhfuil do Apache Tá freastalaí ag obair, atá ag dul go ginearálta a bheith ar an cás i CS50 IDE, ach má dhéanann tú é seo níos ginearálta, agus a thosaíonn tú ag tógáil do gréasáin féin freastalaithe, níl i ndáiríre saghas coitianta aschur a, "hello domhan," is é sin de ghnáth a úsáidtear le haghaidh forbairt gréasáin PHP. Cé acu is go mbeadh comhad comhdhéanta de ach an code-- a teormharcóir PHP leagtar le PHP info, lúibíní, leathstad idir eatarthu. Cé acu is bunúsach speisialta Fheidhm PHP a insíonn tú cén leagan de PHP tá tú ag rith. Mar sin, i CS50 IDE, tá mé go comhad ar fáil ach a thaispeáint duit cad a bheadh ​​sé seo cuma mhaith. Mar sin, tá mé ag féachaint ar mo innéacs ó mo shampla PHP. Tá mo Apache shampla ag rith an t-ábhar PHP-Web. Agus tá mé comhad a dtugtar anseo info.php. Tá mé ag dul a cliceáil sé, zúmáil amach. Is é seo a bhfuil tú ag dul a fheiceáil, go leor i bhfad. Tá sé seo go díreach ag insint dom go Is é mo freastalaí Apache oibre. Agus é seo, is cosúil, an leagan de PHP go bhfuil mé ag rith. Is é seo mo aschur a "Dia duit ar domhan." Mar sin, tá a fhios agam go bhfuil rudaí ag feidhmiú. Mar sin, tá muid go maith chun dul. Is féidir linn dul ar aghaidh ó anseo. Mar sin, a ligean ar athchuairt go Mar shampla am bhí muid ag caint faoi lenár stiúrthóir gréasáin bocht a raibh a thabhairt cothrom le dáta ar an leathanach i gcónaí. D'fhéadfadh sé seo a bheith ina shocrú maidir le conas Ba mhaith liom rudaí a chur i bhfeidhm ionas nach raibh an stiúrthóir gréasáin a choinneáil ar cothrom le dáta an t-am. Bheadh ​​sé ach saghas tarlú go huathoibríoch. An síos thíos, an HTML, tá sé leor den chineál céanna, le heisceacht amháin. Ach anseo tá mé fuair roinnt PHP ag an mbarr. Tá mé, is cosúil, ar a dtugtar an date_default_timezone_set feidhm. Agus nach bhfuil muid ag labhairt faoi na feidhmeanna i CS50, mar gheall ar PHP Tá dócha na mílte agus na mílte. D'fhéadfadh a bheith ina giotán de áibhéil, ach ní fhéadfadh sé a bheith. Tá sé seo fuair a lán de na feidhmeanna a tógadh i. Agus mar sin tá sé seo le feidhm cosúil Leagann mo chuid crios ama mar US / an Oirthir, a bhfuil an gcrios ama go bhfuil mé i láthair na huaire a dhéanamh físeán seo. Ansin a dhéanamh mé glaoch go fheidhm a dtugtar, dáta. Agus, is cosúil, tá mé ag a stóráil ar an A de rud ar a dtugtar, am. Mar sin, cad atá ar siúl anseo? Bhuel, go bunúsach cad atá ag tarlú é, tá mé ag déanamh glao le roinnt freastalaí go bhfuil dul go dtí inis dom cad é an t-am faoi láthair. Agus tá mé ag athrú sé le formáid na n-uaireanta, nóiméad, soicind. Agus an chúis tá sé go bhfuil caipiteal H seo ag dul a thabhairt dom 24 am uair an chloig, ní 12 am uair an chloig, rud a bheadh ​​u litreacha beaga. Agus tá mé díreach tar éis a stóráil go i athróg ar a dtugtar, am. Mar sin, go dara líne de PHP ann, an glaoch chun an fheidhm, dáta, ag fáil ach roinnt téad, a bhfuil ag dul a thabhairt dom an dáta, agus an am, agus a bunch na faisnéise eile. Agus an chéad argóint ann, go A, Tá aisti ach an chuid thábhachtach go bhfuil cúram mé faoi ar sampla seo, a bhfuil an uair an chloig, nóiméad, agus an dara. Mar sin, go bhfuil an go léir go bhfuil dul ar. Mar sin, a stóráil mé go i $ am athraitheach. Agus ansin síos ag an an-bun ann, mé tá go luathscríbhneoireachta le haghaidh priontáil amach an t-am atá ann faoi láthair. Mar sin, tá mé ag dul díreach tar éis a phriontáil amach cad é an t-am atá ann faoi láthair. Mar sin, a ligean ar ghlacadh le breathnú ar seo i IDE CS50 agus a fheiceáil conas tá muid anois coigilt go stiúrthóir gréasáin go leor trioblóide. Ceart go leor, mar sin anseo tá mé arís ar ais ag an eolaire fhréamh mo chás Apache. Agus tá mé comhad anseo ar a dtugtar time.php. Tá mé ag dul díreach a cliceáil ar sin. Agus beidh mé scrollbharra suas, mar gheall ar táimid súmáilte i go leor i bhfad. Is é an t-am atá ann faoi láthair 14:20:34. Mar sin, tá mé ag déanamh sé uair an chloig, nóiméad, agus soicind. Agus is féidir liom a athnuachan an leathanach agus a fháil am nua. --41. Tá mé ag dul a athnuachan an leathanach agus a fháil am nua, 44, 46, 47. Mar sin, tá mé go soiléir nach athrú rud ar bith mé féin. Tá mé anseo refreshing an leathanach. Mar sin, ní féidir liom a bheith ar ais ann eagarthóireacht a dhéanamh air. Agus geallaim duit, ní féidir liom tá aon Confederates atá ag eagarthóireacht an comhad ar mo shon ar an taobh. Mé díreach tar éis ag baint úsáide as an fheidhm sin PHP, am, a ghiniúint an t-am dom go huathoibríoch. Mar sin, go fiú má tá mé i mo chodladh, agus tá mo freastalaí gréasáin ag rith, an t-úsáideoir a thugann cuairt ar go bhfuil an leathanach fós ag dul a fháil go díreach an t-am atá ann faoi láthair. Mar sin, go maith go leor. Rinne mé mo shuíomh níos dinimiciúla le nach bhfuil i bhfad ró-cód PHP. Go raibh sé ach dhá líne de chód agus ansin le beagán de ráiteas a phriontáil. Agus cheana féin tá mé suíomh i bhfad níos dinimiciúla ná sin chéad sampla chonaic muid ag tús an físeán. Mar sin, chun cuimhne as an físeán ar error PHP go nuair a ritheann an teangaire PHP ár gclár, neamhaird sé gach rud nach é sin taobh istigh de nó réimsí PHP, spitting sé amach. Sa sampla, cad é an rud ná go raibh sé spitting amach HTML. Agus ciallaíonn sé seo gur féidir anois intersperse HTML agus PHP le chéile. Mar go mbeidh an teangaire díreach neamhaird ar an HTML agus literally aschur é. Cé acu is maith, ceart? Mar gheall ar dócha, ag an deireadh an lae, Ba mhaith liom mo shuíomh a a thógáil de HTML. Ionas gur féidir aon bhrabhsálaí gréasáin léirmhíniú sé, nó tuiscint a fháil ar an HTML ar an leathanach agus fhágann go bhfuil sé mar rud éigin go bhfuil muid Is féidir a thuiscint i ndáiríre mar dhaoine. Agus is féidir liom a úsáid ach amháin PHP do na codanna de mo shuíomh an gá dinimiceas, a éilíonn dom go bhfuil rudaí a thabhairt cothrom le dáta i gcónaí. An t-eolas statach Is féidir fanacht mar an gcéanna. OK, mar sin go bhfuil fíneáil. Ach cén fáth ba mhaith liom a dhéanamh? Cén fáth a mbeadh mé meascán HTML agus PHP? Raibh mé in ann a phriontáil díreach amach na HTML, ag baint úsáide as an fheidhm a phriontáil PHP. Cén fáth nach ag déanamh mé é sin? Smaoineamh air le haghaidh an dara. Cén fáth, nuair a raibh mé díreach tar éis a phriontáil out-- mé D'fhéadfadh go mbeadh línte PHP sin ach a rá, cló chlib HTML, ceann a phriontáil. Cén fáth nach ag déanamh mé é sin? Cén fáth a bhfuil mé ag mheascadh leis an PHP agus HTML? Bhuel, má cheapann tú air ar feadh an dara. PHP, tá an ateangaire a léirmhíniú cad a fheiceann sé. Agus mar sin tá sé ag dul a bheith acu a fhorghníomhú líne de chód. Priontáil amach HTML. Priontáil amach tag ceann oscailte. Priontáil amach chlib teideal oscailte. Tá sé ag dul a bheith acu chun fhorghníomhú agus a léirmhíniú go bhfuil gach aon chéim amháin ar an mbealach. Cén fáth nach lig ach an ateangaire snasta díreach os cionn rudaí nach ndéanann sé a thuiscint agus é a dhéanamh go huathoibríoch? Tá sé seo ag dul a shábháil dom a lán ama a mheascadh mo HTML agus mo PHP le chéile. Agus mar sin tá sin an fáth nach bhfuil againn ach tá teormharcóir PHP oscailte agus ansin a phriontáil díreach amach an fad ábhar ár leathanach mar PHP ollmhór amháin cuairt a thabhairt ar an fheidhm, Priontáil, agus ansin gar teormharcóir PHP agus táimid ag déanamh. Mar sin tá sin an fáth linn a mheascadh suas iad le chéile. Go dtí seo, nach bhfuil feicthe againn i bhfad an iomarca ar difríocht ó error PHP ginearálta. Baineann sé le bheith go leor simplí. Againn atá le feiceáil cheana féin ar an comhartha ceiste, comhionann. Chonaic muid cúpla glaonna feidhm nua, ach faic ndáiríre mhaisiúil ar siúl. A ligean ar rudaí a dhéanamh b'fhéidir beagán fancier. Cad más mian linn eolas chun pas a idir chomhaid PHP éagsúla, ionas gur féidir go b'fhéidir an t-úsáideoir faisnéis a chur faoi bhráid dom. Agus ansin d'fhéadfadh mé rud éigin a dhéanamh leis ar leathanach eile. Mar sin, tá tacaíocht do PHP rud ar a dtugtar Super Domhanda Athróga, a fuaimeanna go leor uamhnach. Tá siad i ndáiríre ach arrays associative fathach cabhrú a chur i bhfeidhm seo feidhmiúlacht na rith faisnéise idir comhaid PHP go Tá cheana féin ar ár bhfreastalaí gréasáin. An chéad cheann de na Super Siombailí a dtugtar $ _GET. Agus is dócha an is simplí a thuiscint. Cad a tharlaíonn le $ _GET? Bhuel, go bunúsach, is é an t-úsáideoir dul le cineál faisnéis bhreise ag an deireadh ár URLs. Agus is cuma cad a scríobhann siad, ag glacadh leis tá sé formáidithe ar bhealach ar leith ar a dtugtar teaghrán cheist, a bhfuil ach sraith de eochair péirí luach scartha ag ampersands. Beidh na péirí luach eochair a bheith a stóráil i $ _GET eagar comhthiomsaitheach. Agus as ár físeán ar PHP error, tá a fhios againn conas a bheith ag obair le arrays associative cheana. Mar sin, tá anseo sampla de roinnt PHP, i gcás b'fhéidir tá mé aisti gach ceann de na príomh-péirí luach go bhfuil an t-úsáideoir a sholáthraítear san URL. Mar sin, tá mé mo teormharcóir PHP Oscailte. Tá mé lúb foreach. Tá mé ag iterating thar an Super Eagar domhanda ar a dtugtar $ _GET. Agus ba mhaith liom a bheith in ann a tharchur leis an eochair agus an luach araon. Agus tá mé díreach tar éis priontáil orthu amach, gach ceann ar cosúil a tag mhír féin anseo. Tá mé ag priontáil amach roinnt HTML agus idirshuíomh na luachanna de eochair agus luach i ráiteas. Mar sin, a ligean ar ghlacadh le breathnú ar conas an Bheadh ​​obair iarbhír ar ár IDE. Agus b'fhéidir go mbeidh sé seo cabhrú léiriú le beagán an méid GET ag déanamh go hiarbhír. Mar sin, tá mé ar ais anseo i mo root gréasáin. Agus beidh mé súmáil isteach i beagán a thaispeáint duit go bhfuil mé comhad a dtugtar, get1.php. Mar sin, a ligean ar cliceáil ar get1.php. Agus nach bhfuil mé ag féachaint ar aon ábhar. Sin aisteach, ceart? Bhuel, ní i ndáiríre i ndáiríre. Toisc nach raibh mé ag soláthar aon ní i URL. Tá mé ag dul chun get1.php, ach tá mé Ní raibh soláthair, aon péirí luach eochair mar chuid de mo teaghrán cheist. Mar sin, a ligean ar chur ar shraith cheist agus féach cad is féidir a dhéanamh an comhad seo. Chun tús a chur le teaghrán cheist agat ach cineál comhartha ceiste. Ansin, b'fhéidir go mbainfidh mé a rá ainm = Doug & bliain = 2015. Agus ansin beidh mé bhuail Iontráil. Anois faoi deara cad atá ag tarlú. Tá mé fós i get1.php. Ach anois tá mé ar fáil eochair péirí luach, agus tá mé iad a phriontáil amach ar a gcuid féin ainm paragraph--, bliain Doug--, 2015. Sin é go díreach an cód againn ach Chonaic ar an sleamhnán nóiméad ó shin. Agus más mian liom a chur b'fhéidir eile eochair péire luach, & aicme = CS50. Anois tá mé luach eochair eile péire go bhfuil chló amach nuair athchuairt mé an URL arís. Anois b'fhéidir nach bhfuil sé seo formáidithe terribly maith. Mar sin, tá mé leagan eile de get.php. Tá sé get2.php. An difríocht sa tá sé ar cheann Tá mé comhad CSS, agus formáidí sé rudaí a beagán níos nicely dom. Tá sé b'fhéidir nach bhfuil an chuid is mó CSS áille sa domhan. Ach tá sé ach ar bhealach eile a dhéanamh air. Mar sin, is féidir liom a fháil fós le rochtain le mo athróg ag baint úsáide as $ _GET. Agus sa chás seo, tá mé díreach tar éis cineál a dhéanamh ar an CSS beagán níos mhaisiúil. Agus má pop muid thar mo IDE le haghaidh an dara, Feicfidh mé léiríonn tú i mo gréasáin PHP eolaire anseo, get2.php. Beidh muid é a oscailt suas, roinnt HTML anseo. Cosúil tá mé ag nascadh sa mhéid is go Comhad CSS bhí mé ag caint faoi. Oscailte mé tag tábla. Agus ansin tá anseo ar mo lúb foreach. Seo is é sin, cad a dhéanfaidh mé Léirigh ar an sleamhnán roimh. Is é an difríocht amháin agam bhfuil an eochair agus luach CSS styling go bhfuil mé ag déanamh iarratais air. Ach sin ar fad mé ag déanamh, tá mé iterating thar $ _GET a fháil ar fad de na príomh-péirí luach. Agus tá mé ag iad a phriontáil amach mar an tábla. Agus, is cosúil, tá mé ag formáidiú na heochracha i slí amháin, leis an