Advertisement
Guest User

Untitled

a guest
Oct 23rd, 2019
124
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 329.39 KB | None | 0 0
  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12. <!DOCTYPE html>
  13. <html lang="en" dir="ltr">
  14. <head>
  15. <meta charset="utf-8">
  16. <meta http-equiv="x-ua-compatible" content="ie=edge">
  17. <script>window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","errorBeacon":"bam.nr-data.net","licenseKey":"8502746af5","applicationID":"2210607","transactionName":"c1hZF0tfVQkEExoCA0NfVQxYQl1KAg5AFBFV","queueTime":1,"applicationTime":564,"agent":""}</script>
  18. <script>(window.NREUM||(NREUM={})).loader_config={xpid:"VwYAVVFXGwECVVFUBwY="};window.NREUM||(NREUM={}),__nr_require=function(t,e,n){function r(n){if(!e[n]){var o=e[n]={exports:{}};t[n][0].call(o.exports,function(e){var o=t[n][1][e];return r(o||e)},o,o.exports)}return e[n].exports}if("function"==typeof __nr_require)return __nr_require;for(var o=0;o<n.length;o++)r(n[o]);return r}({1:[function(t,e,n){function r(t){try{s.console&&console.log(t)}catch(e){}}var o,i=t("ee"),a=t(23),s={};try{o=localStorage.getItem("__nr_flags").split(","),console&&"function"==typeof console.log&&(s.console=!0,o.indexOf("dev")!==-1&&(s.dev=!0),o.indexOf("nr_dev")!==-1&&(s.nrDev=!0))}catch(c){}s.nrDev&&i.on("internal-error",function(t){r(t.stack)}),s.dev&&i.on("fn-err",function(t,e,n){r(n.stack)}),s.dev&&(r("NR AGENT IN DEVELOPMENT MODE"),r("flags: "+a(s,function(t,e){return t}).join(", ")))},{}],2:[function(t,e,n){function r(t,e,n,r,s){try{l?l-=1:o(s||new UncaughtException(t,e,n),!0)}catch(f){try{i("ierr",[f,c.now(),!0])}catch(d){}}return"function"==typeof u&&u.apply(this,a(arguments))}function UncaughtException(t,e,n){this.message=t||"Uncaught error with no additional information",this.sourceURL=e,this.line=n}function o(t,e){var n=e?null:c.now();i("err",[t,n])}var i=t("handle"),a=t(24),s=t("ee"),c=t("loader"),f=t("gos"),u=window.onerror,d=!1,p="nr@seenError",l=0;c.features.err=!0,t(1),window.onerror=r;try{throw new Error}catch(h){"stack"in h&&(t(13),t(12),"addEventListener"in window&&t(6),c.xhrWrappable&&t(14),d=!0)}s.on("fn-start",function(t,e,n){d&&(l+=1)}),s.on("fn-err",function(t,e,n){d&&!n[p]&&(f(n,p,function(){return!0}),this.thrown=!0,o(n))}),s.on("fn-end",function(){d&&!this.thrown&&l>0&&(l-=1)}),s.on("internal-error",function(t){i("ierr",[t,c.now(),!0])})},{}],3:[function(t,e,n){t("loader").features.ins=!0},{}],4:[function(t,e,n){function r(){j++,L=y.hash,this[u]=x.now()}function o(){j--,y.hash!==L&&i(0,!0);var t=x.now();this[h]=~~this[h]+t-this[u],this[d]=t}function i(t,e){E.emit("newURL",[""+y,e])}function a(t,e){t.on(e,function(){this[e]=x.now()})}var s="-start",c="-end",f="-body",u="fn"+s,d="fn"+c,p="cb"+s,l="cb"+c,h="jsTime",m="fetch",v="addEventListener",w=window,y=w.location,x=t("loader");if(w[v]&&x.xhrWrappable){var g=t(10),b=t(11),E=t(8),R=t(6),O=t(13),C=t(7),P=t(14),T=t(9),N=t("ee"),S=N.get("tracer");t(16),x.features.spa=!0;var L,j=0;N.on(u,r),N.on(p,r),N.on(d,o),N.on(l,o),N.buffer([u,d,"xhr-done","xhr-resolved"]),R.buffer([u]),O.buffer(["setTimeout"+c,"clearTimeout"+s,u]),P.buffer([u,"new-xhr","send-xhr"+s]),C.buffer([m+s,m+"-done",m+f+s,m+f+c]),E.buffer(["newURL"]),g.buffer([u]),b.buffer(["propagate",p,l,"executor-err","resolve"+s]),S.buffer([u,"no-"+u]),T.buffer(["new-jsonp","cb-start","jsonp-error","jsonp-end"]),a(P,"send-xhr"+s),a(N,"xhr-resolved"),a(N,"xhr-done"),a(C,m+s),a(C,m+"-done"),a(T,"new-jsonp"),a(T,"jsonp-end"),a(T,"cb-start"),E.on("pushState-end",i),E.on("replaceState-end",i),w[v]("hashchange",i,!0),w[v]("load",i,!0),w[v]("popstate",function(){i(0,j>1)},!0)}},{}],5:[function(t,e,n){function r(t){}if(window.performance&&window.performance.timing&&window.performance.getEntriesByType){var o=t("ee"),i=t("handle"),a=t(13),s=t(12),c="learResourceTimings",f="addEventListener",u="resourcetimingbufferfull",d="bstResource",p="resource",l="-start",h="-end",m="fn"+l,v="fn"+h,w="bstTimer",y="pushState",x=t("loader");x.features.stn=!0,t(8);var g=NREUM.o.EV;o.on(m,function(t,e){var n=t[0];n instanceof g&&(this.bstStart=x.now())}),o.on(v,function(t,e){var n=t[0];n instanceof g&&i("bst",[n,e,this.bstStart,x.now()])}),a.on(m,function(t,e,n){this.bstStart=x.now(),this.bstType=n}),a.on(v,function(t,e){i(w,[e,this.bstStart,x.now(),this.bstType])}),s.on(m,function(){this.bstStart=x.now()}),s.on(v,function(t,e){i(w,[e,this.bstStart,x.now(),"requestAnimationFrame"])}),o.on(y+l,function(t){this.time=x.now(),this.startPath=location.pathname+location.hash}),o.on(y+h,function(t){i("bstHist",[location.pathname+location.hash,this.startPath,this.time])}),f in window.performance&&(window.performance["c"+c]?window.performance[f](u,function(t){i(d,[window.performance.getEntriesByType(p)]),window.performance["c"+c]()},!1):window.performance[f]("webkit"+u,function(t){i(d,[window.performance.getEntriesByType(p)]),window.performance["webkitC"+c]()},!1)),document[f]("scroll",r,{passive:!0}),document[f]("keypress",r,!1),document[f]("click",r,!1)}},{}],6:[function(t,e,n){function r(t){for(var e=t;e&&!e.hasOwnProperty(u);)e=Object.getPrototypeOf(e);e&&o(e)}function o(t){s.inPlace(t,[u,d],"-",i)}function i(t,e){return t[1]}var a=t("ee").get("events"),s=t(26)(a,!0),c=t("gos"),f=XMLHttpRequest,u="addEventListener",d="removeEventListener";e.exports=a,"getPrototypeOf"in Object?(r(document),r(window),r(f.prototype)):f.prototype.hasOwnProperty(u)&&(o(window),o(f.prototype)),a.on(u+"-start",function(t,e){var n=t[1],r=c(n,"nr@wrapped",function(){function t(){if("function"==typeof n.handleEvent)return n.handleEvent.apply(n,arguments)}var e={object:t,"function":n}[typeof n];return e?s(e,"fn-",null,e.name||"anonymous"):n});this.wrapped=t[1]=r}),a.on(d+"-start",function(t){t[1]=this.wrapped||t[1]})},{}],7:[function(t,e,n){function r(t,e,n){var r=t[e];"function"==typeof r&&(t[e]=function(){var t=r.apply(this,arguments);return o.emit(n+"start",arguments,t),t.then(function(e){return o.emit(n+"end",[null,e],t),e},function(e){throw o.emit(n+"end",[e],t),e})})}var o=t("ee").get("fetch"),i=t(23);e.exports=o;var a=window,s="fetch-",c=s+"body-",f=["arrayBuffer","blob","json","text","formData"],u=a.Request,d=a.Response,p=a.fetch,l="prototype";u&&d&&p&&(i(f,function(t,e){r(u[l],e,c),r(d[l],e,c)}),r(a,"fetch",s),o.on(s+"end",function(t,e){var n=this;if(e){var r=e.headers.get("content-length");null!==r&&(n.rxSize=r),o.emit(s+"done",[null,e],n)}else o.emit(s+"done",[t],n)}))},{}],8:[function(t,e,n){var r=t("ee").get("history"),o=t(26)(r);e.exports=r;var i=window.history&&window.history.constructor&&window.history.constructor.prototype,a=window.history;i&&i.pushState&&i.replaceState&&(a=i),o.inPlace(a,["pushState","replaceState"],"-")},{}],9:[function(t,e,n){function r(t){function e(){c.emit("jsonp-end",[],p),t.removeEventListener("load",e,!1),t.removeEventListener("error",n,!1)}function n(){c.emit("jsonp-error",[],p),c.emit("jsonp-end",[],p),t.removeEventListener("load",e,!1),t.removeEventListener("error",n,!1)}var r=t&&"string"==typeof t.nodeName&&"script"===t.nodeName.toLowerCase();if(r){var o="function"==typeof t.addEventListener;if(o){var a=i(t.src);if(a){var u=s(a),d="function"==typeof u.parent[u.key];if(d){var p={};f.inPlace(u.parent,[u.key],"cb-",p),t.addEventListener("load",e,!1),t.addEventListener("error",n,!1),c.emit("new-jsonp",[t.src],p)}}}}}function o(){return"addEventListener"in window}function i(t){var e=t.match(u);return e?e[1]:null}function a(t,e){var n=t.match(p),r=n[1],o=n[3];return o?a(o,e[r]):e[r]}function s(t){var e=t.match(d);return e&&e.length>=3?{key:e[2],parent:a(e[1],window)}:{key:t,parent:window}}var c=t("ee").get("jsonp"),f=t(26)(c);if(e.exports=c,o()){var u=/[?&](?:callback|cb)=([^&#]+)/,d=/(.*)\.([^.]+)/,p=/^(\w+)(\.|$)(.*)$/,l=["appendChild","insertBefore","replaceChild"];Node&&Node.prototype&&Node.prototype.appendChild?f.inPlace(Node.prototype,l,"dom-"):(f.inPlace(HTMLElement.prototype,l,"dom-"),f.inPlace(HTMLHeadElement.prototype,l,"dom-"),f.inPlace(HTMLBodyElement.prototype,l,"dom-")),c.on("dom-start",function(t){r(t[0])})}},{}],10:[function(t,e,n){var r=t("ee").get("mutation"),o=t(26)(r),i=NREUM.o.MO;e.exports=r,i&&(window.MutationObserver=function(t){return this instanceof i?new i(o(t,"fn-")):i.apply(this,arguments)},MutationObserver.prototype=i.prototype)},{}],11:[function(t,e,n){function r(t){var e=a.context(),n=s(t,"executor-",e),r=new f(n);return a.context(r).getCtx=function(){return e},a.emit("new-promise",[r,e],e),r}function o(t,e){return e}var i=t(26),a=t("ee").get("promise"),s=i(a),c=t(23),f=NREUM.o.PR;e.exports=a,f&&(window.Promise=r,["all","race"].forEach(function(t){var e=f[t];f[t]=function(n){function r(t){return function(){a.emit("propagate",[null,!o],i),o=o||!t}}var o=!1;c(n,function(e,n){Promise.resolve(n).then(r("all"===t),r(!1))});var i=e.apply(f,arguments),s=f.resolve(i);return s}}),["resolve","reject"].forEach(function(t){var e=f[t];f[t]=function(t){var n=e.apply(f,arguments);return t!==n&&a.emit("propagate",[t,!0],n),n}}),f.prototype["catch"]=function(t){return this.then(null,t)},f.prototype=Object.create(f.prototype,{constructor:{value:r}}),c(Object.getOwnPropertyNames(f),function(t,e){try{r[e]=f[e]}catch(n){}}),a.on("executor-start",function(t){t[0]=s(t[0],"resolve-",this),t[1]=s(t[1],"resolve-",this)}),a.on("executor-err",function(t,e,n){t[1](n)}),s.inPlace(f.prototype,["then"],"then-",o),a.on("then-start",function(t,e){this.promise=e,t[0]=s(t[0],"cb-",this),t[1]=s(t[1],"cb-",this)}),a.on("then-end",function(t,e,n){this.nextPromise=n;var r=this.promise;a.emit("propagate",[r,!0],n)}),a.on("cb-end",function(t,e,n){a.emit("propagate",[n,!0],this.nextPromise)}),a.on("propagate",function(t,e,n){this.getCtx&&!e||(this.getCtx=function(){if(t instanceof Promise)var e=a.context(t);return e&&e.getCtx?e.getCtx():this})}),r.toString=function(){return""+f})},{}],12:[function(t,e,n){var r=t("ee").get("raf"),o=t(26)(r),i="equestAnimationFrame";e.exports=r,o.inPlace(window,["r"+i,"mozR"+i,"webkitR"+i,"msR"+i],"raf-"),r.on("raf-start",function(t){t[0]=o(t[0],"fn-")})},{}],13:[function(t,e,n){function r(t,e,n){t[0]=a(t[0],"fn-",null,n)}function o(t,e,n){this.method=n,this.timerDuration=isNaN(t[1])?0:+t[1],t[0]=a(t[0],"fn-",this,n)}var i=t("ee").get("timer"),a=t(26)(i),s="setTimeout",c="setInterval",f="clearTimeout",u="-start",d="-";e.exports=i,a.inPlace(window,[s,"setImmediate"],s+d),a.inPlace(window,[c],c+d),a.inPlace(window,[f,"clearImmediate"],f+d),i.on(c+u,r),i.on(s+u,o)},{}],14:[function(t,e,n){function r(t,e){d.inPlace(e,["onreadystatechange"],"fn-",s)}function o(){var t=this,e=u.context(t);t.readyState>3&&!e.resolved&&(e.resolved=!0,u.emit("xhr-resolved",[],t)),d.inPlace(t,y,"fn-",s)}function i(t){x.push(t),h&&(b?b.then(a):v?v(a):(E=-E,R.data=E))}function a(){for(var t=0;t<x.length;t++)r([],x[t]);x.length&&(x=[])}function s(t,e){return e}function c(t,e){for(var n in t)e[n]=t[n];return e}t(6);var f=t("ee"),u=f.get("xhr"),d=t(26)(u),p=NREUM.o,l=p.XHR,h=p.MO,m=p.PR,v=p.SI,w="readystatechange",y=["onload","onerror","onabort","onloadstart","onloadend","onprogress","ontimeout"],x=[];e.exports=u;var g=window.XMLHttpRequest=function(t){var e=new l(t);try{u.emit("new-xhr",[e],e),e.addEventListener(w,o,!1)}catch(n){try{u.emit("internal-error",[n])}catch(r){}}return e};if(c(l,g),g.prototype=l.prototype,d.inPlace(g.prototype,["open","send"],"-xhr-",s),u.on("send-xhr-start",function(t,e){r(t,e),i(e)}),u.on("open-xhr-start",r),h){var b=m&&m.resolve();if(!v&&!m){var E=1,R=document.createTextNode(E);new h(a).observe(R,{characterData:!0})}}else f.on("fn-end",function(t){t[0]&&t[0].type===w||a()})},{}],15:[function(t,e,n){function r(){var t=window.NREUM,e=t.info.accountID||null,n=t.info.agentID||null,r=t.info.trustKey||null,i="btoa"in window&&"function"==typeof window.btoa;if(!e||!n||!i)return null;var a={v:[0,1],d:{ty:"Browser",ac:e,ap:n,id:o.generateCatId(),tr:o.generateCatId(),ti:Date.now()}};return r&&e!==r&&(a.d.tk=r),btoa(JSON.stringify(a))}var o=t(21);e.exports={generateTraceHeader:r}},{}],16:[function(t,e,n){function r(t){var e=this.params,n=this.metrics;if(!this.ended){this.ended=!0;for(var r=0;r<l;r++)t.removeEventListener(p[r],this.listener,!1);e.aborted||(n.duration=s.now()-this.startTime,this.loadCaptureCalled||4!==t.readyState?null==e.status&&(e.status=0):a(this,t),n.cbTime=this.cbTime,d.emit("xhr-done",[t],t),c("xhr",[e,n,this.startTime]))}}function o(t,e){var n=t.responseType;if("json"===n&&null!==e)return e;var r="arraybuffer"===n||"blob"===n||"json"===n?t.response:t.responseText;return v(r)}function i(t,e){var n=f(e),r=t.params;r.host=n.hostname+":"+n.port,r.pathname=n.pathname,t.sameOrigin=n.sameOrigin}function a(t,e){t.params.status=e.status;var n=o(e,t.lastSize);if(n&&(t.metrics.rxSize=n),t.sameOrigin){var r=e.getResponseHeader("X-NewRelic-App-Data");r&&(t.params.cat=r.split(", ").pop())}t.loadCaptureCalled=!0}var s=t("loader");if(s.xhrWrappable){var c=t("handle"),f=t(17),u=t(15).generateTraceHeader,d=t("ee"),p=["load","error","abort","timeout"],l=p.length,h=t("id"),m=t(20),v=t(19),w=window.XMLHttpRequest;s.features.xhr=!0,t(14),d.on("new-xhr",function(t){var e=this;e.totalCbs=0,e.called=0,e.cbTime=0,e.end=r,e.ended=!1,e.xhrGuids={},e.lastSize=null,e.loadCaptureCalled=!1,t.addEventListener("load",function(n){a(e,t)},!1),m&&(m>34||m<10)||window.opera||t.addEventListener("progress",function(t){e.lastSize=t.loaded},!1)}),d.on("open-xhr-start",function(t){this.params={method:t[0]},i(this,t[1]),this.metrics={}}),d.on("open-xhr-end",function(t,e){"loader_config"in NREUM&&"xpid"in NREUM.loader_config&&this.sameOrigin&&e.setRequestHeader("X-NewRelic-ID",NREUM.loader_config.xpid);var n=!1;if("init"in NREUM&&"distributed_tracing"in NREUM.init&&(n=!!NREUM.init.distributed_tracing.enabled),n&&this.sameOrigin){var r=u();r&&e.setRequestHeader("newrelic",r)}}),d.on("send-xhr-start",function(t,e){var n=this.metrics,r=t[0],o=this;if(n&&r){var i=v(r);i&&(n.txSize=i)}this.startTime=s.now(),this.listener=function(t){try{"abort"!==t.type||o.loadCaptureCalled||(o.params.aborted=!0),("load"!==t.type||o.called===o.totalCbs&&(o.onloadCalled||"function"!=typeof e.onload))&&o.end(e)}catch(n){try{d.emit("internal-error",[n])}catch(r){}}};for(var a=0;a<l;a++)e.addEventListener(p[a],this.listener,!1)}),d.on("xhr-cb-time",function(t,e,n){this.cbTime+=t,e?this.onloadCalled=!0:this.called+=1,this.called!==this.totalCbs||!this.onloadCalled&&"function"==typeof n.onload||this.end(n)}),d.on("xhr-load-added",function(t,e){var n=""+h(t)+!!e;this.xhrGuids&&!this.xhrGuids[n]&&(this.xhrGuids[n]=!0,this.totalCbs+=1)}),d.on("xhr-load-removed",function(t,e){var n=""+h(t)+!!e;this.xhrGuids&&this.xhrGuids[n]&&(delete this.xhrGuids[n],this.totalCbs-=1)}),d.on("addEventListener-end",function(t,e){e instanceof w&&"load"===t[0]&&d.emit("xhr-load-added",[t[1],t[2]],e)}),d.on("removeEventListener-end",function(t,e){e instanceof w&&"load"===t[0]&&d.emit("xhr-load-removed",[t[1],t[2]],e)}),d.on("fn-start",function(t,e,n){e instanceof w&&("onload"===n&&(this.onload=!0),("load"===(t[0]&&t[0].type)||this.onload)&&(this.xhrCbStart=s.now()))}),d.on("fn-end",function(t,e){this.xhrCbStart&&d.emit("xhr-cb-time",[s.now()-this.xhrCbStart,this.onload,e],e)})}},{}],17:[function(t,e,n){e.exports=function(t){var e=document.createElement("a"),n=window.location,r={};e.href=t,r.port=e.port;var o=e.href.split("://");!r.port&&o[1]&&(r.port=o[1].split("/")[0].split("@").pop().split(":")[1]),r.port&&"0"!==r.port||(r.port="https"===o[0]?"443":"80"),r.hostname=e.hostname||n.hostname,r.pathname=e.pathname,r.protocol=o[0],"/"!==r.pathname.charAt(0)&&(r.pathname="/"+r.pathname);var i=!e.protocol||":"===e.protocol||e.protocol===n.protocol,a=e.hostname===document.domain&&e.port===n.port;return r.sameOrigin=i&&(!e.hostname||a),r}},{}],18:[function(t,e,n){function r(){}function o(t,e,n){return function(){return i(t,[f.now()].concat(s(arguments)),e?null:this,n),e?void 0:this}}var i=t("handle"),a=t(23),s=t(24),c=t("ee").get("tracer"),f=t("loader"),u=NREUM;"undefined"==typeof window.newrelic&&(newrelic=u);var d=["setPageViewName","setCustomAttribute","setErrorHandler","finished","addToTrace","inlineHit","addRelease"],p="api-",l=p+"ixn-";a(d,function(t,e){u[e]=o(p+e,!0,"api")}),u.addPageAction=o(p+"addPageAction",!0),u.setCurrentRouteName=o(p+"routeName",!0),e.exports=newrelic,u.interaction=function(){return(new r).get()};var h=r.prototype={createTracer:function(t,e){var n={},r=this,o="function"==typeof e;return i(l+"tracer",[f.now(),t,n],r),function(){if(c.emit((o?"":"no-")+"fn-start",[f.now(),r,o],n),o)try{return e.apply(this,arguments)}catch(t){throw c.emit("fn-err",[arguments,this,t],n),t}finally{c.emit("fn-end",[f.now()],n)}}}};a("actionText,setName,setAttribute,save,ignore,onEnd,getContext,end,get".split(","),function(t,e){h[e]=o(l+e)}),newrelic.noticeError=function(t,e){"string"==typeof t&&(t=new Error(t)),i("err",[t,f.now(),!1,e])}},{}],19:[function(t,e,n){e.exports=function(t){if("string"==typeof t&&t.length)return t.length;if("object"==typeof t){if("undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer&&t.byteLength)return t.byteLength;if("undefined"!=typeof Blob&&t instanceof Blob&&t.size)return t.size;if(!("undefined"!=typeof FormData&&t instanceof FormData))try{return JSON.stringify(t).length}catch(e){return}}}},{}],20:[function(t,e,n){var r=0,o=navigator.userAgent.match(/Firefox[\/\s](\d+\.\d+)/);o&&(r=+o[1]),e.exports=r},{}],21:[function(t,e,n){function r(){function t(){return e?15&e[n++]:16*Math.random()|0}var e=null,n=0,r=window.crypto||window.msCrypto;r&&r.getRandomValues&&(e=r.getRandomValues(new Uint8Array(31)));for(var o,i="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx",a="",s=0;s<i.length;s++)o=i[s],"x"===o?a+=t().toString(16):"y"===o?(o=3&t()|8,a+=o.toString(16)):a+=o;return a}function o(){function t(){return e?15&e[n++]:16*Math.random()|0}var e=null,n=0,r=window.crypto||window.msCrypto;r&&r.getRandomValues&&Uint8Array&&(e=r.getRandomValues(new Uint8Array(31)));for(var o=[],i=0;i<16;i++)o.push(t().toString(16));return o.join("")}e.exports={generateUuid:r,generateCatId:o}},{}],22:[function(t,e,n){function r(t,e){if(!o)return!1;if(t!==o)return!1;if(!e)return!0;if(!i)return!1;for(var n=i.split("."),r=e.split("."),a=0;a<r.length;a++)if(r[a]!==n[a])return!1;return!0}var o=null,i=null,a=/Version\/(\S+)\s+Safari/;if(navigator.userAgent){var s=navigator.userAgent,c=s.match(a);c&&s.indexOf("Chrome")===-1&&s.indexOf("Chromium")===-1&&(o="Safari",i=c[1])}e.exports={agent:o,version:i,match:r}},{}],23:[function(t,e,n){function r(t,e){var n=[],r="",i=0;for(r in t)o.call(t,r)&&(n[i]=e(r,t[r]),i+=1);return n}var o=Object.prototype.hasOwnProperty;e.exports=r},{}],24:[function(t,e,n){function r(t,e,n){e||(e=0),"undefined"==typeof n&&(n=t?t.length:0);for(var r=-1,o=n-e||0,i=Array(o<0?0:o);++r<o;)i[r]=t[e+r];return i}e.exports=r},{}],25:[function(t,e,n){e.exports={exists:"undefined"!=typeof window.performance&&window.performance.timing&&"undefined"!=typeof window.performance.timing.navigationStart}},{}],26:[function(t,e,n){function r(t){return!(t&&t instanceof Function&&t.apply&&!t[a])}var o=t("ee"),i=t(24),a="nr@original",s=Object.prototype.hasOwnProperty,c=!1;e.exports=function(t,e){function n(t,e,n,o){function nrWrapper(){var r,a,s,c;try{a=this,r=i(arguments),s="function"==typeof n?n(r,a):n||{}}catch(f){p([f,"",[r,a,o],s])}u(e+"start",[r,a,o],s);try{return c=t.apply(a,r)}catch(d){throw u(e+"err",[r,a,d],s),d}finally{u(e+"end",[r,a,c],s)}}return r(t)?t:(e||(e=""),nrWrapper[a]=t,d(t,nrWrapper),nrWrapper)}function f(t,e,o,i){o||(o="");var a,s,c,f="-"===o.charAt(0);for(c=0;c<e.length;c++)s=e[c],a=t[s],r(a)||(t[s]=n(a,f?s+o:o,i,s))}function u(n,r,o){if(!c||e){var i=c;c=!0;try{t.emit(n,r,o,e)}catch(a){p([a,n,r,o])}c=i}}function d(t,e){if(Object.defineProperty&&Object.keys)try{var n=Object.keys(t);return n.forEach(function(n){Object.defineProperty(e,n,{get:function(){return t[n]},set:function(e){return t[n]=e,e}})}),e}catch(r){p([r])}for(var o in t)s.call(t,o)&&(e[o]=t[o]);return e}function p(e){try{t.emit("internal-error",e)}catch(n){}}return t||(t=o),n.inPlace=f,n.flag=a,n}},{}],ee:[function(t,e,n){function r(){}function o(t){function e(t){return t&&t instanceof r?t:t?c(t,s,i):i()}function n(n,r,o,i){if(!p.aborted||i){t&&t(n,r,o);for(var a=e(o),s=m(n),c=s.length,f=0;f<c;f++)s[f].apply(a,r);var d=u[x[n]];return d&&d.push([g,n,r,a]),a}}function l(t,e){y[t]=m(t).concat(e)}function h(t,e){var n=y[t];if(n)for(var r=0;r<n.length;r++)n[r]===e&&n.splice(r,1)}function m(t){return y[t]||[]}function v(t){return d[t]=d[t]||o(n)}function w(t,e){f(t,function(t,n){e=e||"feature",x[n]=e,e in u||(u[e]=[])})}var y={},x={},g={on:l,addEventListener:l,removeEventListener:h,emit:n,get:v,listeners:m,context:e,buffer:w,abort:a,aborted:!1};return g}function i(){return new r}function a(){(u.api||u.feature)&&(p.aborted=!0,u=p.backlog={})}var s="nr@context",c=t("gos"),f=t(23),u={},d={},p=e.exports=o();p.backlog=u},{}],gos:[function(t,e,n){function r(t,e,n){if(o.call(t,e))return t[e];var r=n();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!1}),r}catch(i){}return t[e]=r,r}var o=Object.prototype.hasOwnProperty;e.exports=r},{}],handle:[function(t,e,n){function r(t,e,n,r){o.buffer([t],r),o.emit(t,e,n)}var o=t("ee").get("handle");e.exports=r,r.ee=o},{}],id:[function(t,e,n){function r(t){var e=typeof t;return!t||"object"!==e&&"function"!==e?-1:t===window?0:a(t,i,function(){return o++})}var o=1,i="nr@id",a=t("gos");e.exports=r},{}],loader:[function(t,e,n){function r(){if(!E++){var t=b.info=NREUM.info,e=l.getElementsByTagName("script")[0];if(setTimeout(u.abort,3e4),!(t&&t.licenseKey&&t.applicationID&&e))return u.abort();f(x,function(e,n){t[e]||(t[e]=n)}),c("mark",["onload",a()+b.offset],null,"api");var n=l.createElement("script");n.src="https://"+t.agent,e.parentNode.insertBefore(n,e)}}function o(){"complete"===l.readyState&&i()}function i(){c("mark",["domContent",a()+b.offset],null,"api")}function a(){return R.exists&&performance.now?Math.round(performance.now()):(s=Math.max((new Date).getTime(),s))-b.offset}var s=(new Date).getTime(),c=t("handle"),f=t(23),u=t("ee"),d=t(22),p=window,l=p.document,h="addEventListener",m="attachEvent",v=p.XMLHttpRequest,w=v&&v.prototype;NREUM.o={ST:setTimeout,SI:p.setImmediate,CT:clearTimeout,XHR:v,REQ:p.Request,EV:p.Event,PR:p.Promise,MO:p.MutationObserver};var y=""+location,x={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net",agent:"js-agent.newrelic.com/nr-spa-1130.min.js"},g=v&&w&&w[h]&&!/CriOS/.test(navigator.userAgent),b=e.exports={offset:s,now:a,origin:y,features:{},xhrWrappable:g,userAgent:d};t(18),l[h]?(l[h]("DOMContentLoaded",i,!1),p[h]("load",r,!1)):(l[m]("onreadystatechange",o),p[m]("onload",r)),c("mark",["firstbyte",s],null,"api");var E=0,R=t(25)},{}]},{},["loader",2,16,5,3,4]);</script>
  19. <title>Learn PHP | Codecademy</title>
  20. <link href="https://www.codecademy.com/favicon.ico" rel="shortcut icon" type="image/x-icon" />
  21.  
  22. <link href="/blog.rss" rel="alternate" title="Codecademy Blog" type="application/rss+xml" />
  23. <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  24. <meta name="apple-itunes-app" content="app-id=1376029326">
  25. <meta content="authenticity_token" name="csrf-param" />
  26. <meta content="dBK14IIyvVIh0V/alql3ynwnEKiUFccdvOLyEytVgRo=" name="csrf-token" />
  27.  
  28.  
  29.  
  30.  
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42. <link data-chunk="portal" rel="stylesheet" href="/webpack/82.f436a127c147c83311c9.chunk.css">
  43. <link data-chunk="portal" rel="stylesheet" href="/webpack/117.1e9ce453559f17cd78e2.chunk.css">
  44. <link data-chunk="portal" rel="stylesheet" href="/webpack/43.94c94f4aff374b4bebe5.chunk.css">
  45. <link data-chunk="portal" rel="stylesheet" href="/webpack/50.0d925d8812c43778ae8c.chunk.css">
  46. <link data-chunk="portal" rel="stylesheet" href="/webpack/149.30519ea86f7ba17f3459.chunk.css">
  47. <link data-chunk="portal" rel="stylesheet" href="/webpack/components-Modal-ProTrialWelcomeModal.05255ea2d7e7cadd19de.chunk.css">
  48. <link data-chunk="portal-scenes-CoursePages-CourseLandingPage" rel="stylesheet" href="/webpack/12.1c4ec59327d1ba7f5d0f.chunk.css">
  49. <link data-chunk="portal-scenes-CoursePages-CourseLandingPage" rel="stylesheet" href="/webpack/14.4046b33ea898ab01e570.chunk.css">
  50. <link data-chunk="portal-scenes-CoursePages-CourseLandingPage" rel="stylesheet" href="/webpack/17.bcb42bf5b9f9043fa42e.chunk.css">
  51. <link data-chunk="portal-scenes-CoursePages-CourseLandingPage" rel="stylesheet" href="/webpack/31.9ca258f9bf4e21753d3f.chunk.css">
  52. <link data-chunk="portal-scenes-CoursePages-CourseLandingPage" rel="stylesheet" href="/webpack/32.0fea4e7f0827c5a7443a.chunk.css">
  53. <link data-chunk="portal-scenes-CoursePages-CourseLandingPage" rel="stylesheet" href="/webpack/36.cf990f0cce1582c4850d.chunk.css">
  54. <link data-chunk="portal-scenes-CoursePages-CourseLandingPage" rel="stylesheet" href="/webpack/39.ca8f034056667659ef51.chunk.css">
  55. <link data-chunk="portal-scenes-CoursePages-CourseLandingPage" rel="stylesheet" href="/webpack/131.651407c16bcb7544e4fc.chunk.css">
  56. <link data-chunk="portal-scenes-CoursePages-CourseLandingPage" rel="stylesheet" href="/webpack/4.22893992004a75b7908b.chunk.css">
  57. <link data-chunk="portal-scenes-CoursePages-CourseLandingPage" rel="stylesheet" href="/webpack/5.40fd31e842157edd3170.chunk.css">
  58. <link data-chunk="portal-scenes-CoursePages-CourseLandingPage" rel="stylesheet" href="/webpack/7.8ac506355604390cbb08.chunk.css">
  59. <link data-chunk="portal-scenes-CoursePages-CourseLandingPage" rel="stylesheet" href="/webpack/6.8d2f12fd984f2c1e775b.chunk.css">
  60. <link data-chunk="portal-scenes-CoursePages-CourseLandingPage" rel="stylesheet" href="/webpack/8.aa987a45210393aca0ad.chunk.css">
  61. <link data-chunk="portal-scenes-CoursePages-CourseLandingPage" rel="stylesheet" href="/webpack/15.2433d1ea47e6fe04c3af.chunk.css">
  62. <link data-chunk="portal-scenes-CoursePages-CourseLandingPage" rel="stylesheet" href="/webpack/25.ce8da2c382f70fda5d6f.chunk.css">
  63. <link data-chunk="portal-scenes-CoursePages-CourseLandingPage" rel="stylesheet" href="/webpack/27.4a4d0d0616ec31e218f1.chunk.css">
  64. <link data-chunk="portal-scenes-CoursePages-CourseLandingPage" rel="stylesheet" href="/webpack/28.9be89edb6d7699dd9f2b.chunk.css">
  65. <link data-chunk="portal-scenes-CoursePages-CourseLandingPage" rel="stylesheet" href="/webpack/33.e2a0ca631993e9cf6da8.chunk.css">
  66. <link data-chunk="portal-scenes-CoursePages-CourseLandingPage" rel="stylesheet" href="/webpack/35.1f462a1bb77f27da66e0.chunk.css">
  67. <link data-chunk="portal-scenes-CoursePages-CourseLandingPage" rel="stylesheet" href="/webpack/41.01e4223d839a7dd49025.chunk.css">
  68. <link data-chunk="portal-scenes-CoursePages-CourseLandingPage" rel="stylesheet" href="/webpack/65.e1f145d360e5321a82d1.chunk.css">
  69. <link data-chunk="portal-scenes-CoursePages-CourseLandingPage" rel="stylesheet" href="/webpack/182.a80dd5fdb5bc561a50fb.chunk.css">
  70. <link data-chunk="portal-scenes-CoursePages-CourseLandingPage" rel="stylesheet" href="/webpack/200.200fa559df1429286d38.chunk.css">
  71. <link data-chunk="portal-scenes-CoursePages-CourseLandingPage" rel="stylesheet" href="/webpack/portal-scenes-CoursePages-CourseLandingPage.492451152eef98c79f77.chunk.css">
  72.  
  73.  
  74. <script type="text/javascript">
  75. //<![CDATA[
  76. var CCDATA = CCDATA || {};
  77. //]]>
  78. </script>
  79.  
  80. <script id="CCDATA" type="text/javascript">
  81. //<![CDATA[
  82.  
  83. var CCDATA = CCDATA || {}; CCDATA['API_HOST'] = "/api"; CCDATA['asset_host'] = "www.codecademy.com"; CCDATA['assets_compiled'] = true; CCDATA['authenticity_token'] = "dBK14IIyvVIh0V/alql3ynwnEKiUFccdvOLyEytVgRo="; CCDATA['env'] = "production"; CCDATA['ExperimentConstants'] = {"PricingPage":{"VARIANT2":"card1","VARIANT3":"card2","LAUNCH_DATE":"2019-09-16T09:00:00-05:00","HANDLE":"exp_credit_card_trial_2019_9_16_pricing_page","CONTROL":"control","VARIANT1":"grid"},"CreditCardTrial":{"HANDLE":"exp_credit_card_trial_2019_06_27_existing_users","HANDLE_V2":"exp_credit_card_trial_2019_7_19_new_users","HANDLE_NEW_EXISTING":"exp_credit_card_trial_2019_8_21_existing_users","CUTOFF_DATE":"2019-04-27T11:00:00-05:00","V2_LAUNCH_DATE":"2019-07-25T09:00:00-05:00","CONTROL":"control","VARIANT":"variant"},"CreditCardTrialV03":{"LAUNCH_DATE":"2019-09-16T09:00:00-05:00","CC_TRIAL":"variant","PRICING_PAGE":"control","HANDLE":"exp_credit_card_trial_2019_9_16_v0_3"}}; CCDATA['login_requires_captcha'] = false; CCDATA['push_sign_up_event'] = null; CCDATA['pro'] = false; CCDATA['recaptcha_key'] = "6LfCUVsUAAAAAAGtvwnA5Mw4LQaaN0iA_6bF5jXe"; CCDATA['request_host'] = "www.codecademy.com"; CCDATA['request_path'] = "/learn/learn-php"; CCDATA['secureSandboxIndexPath'] = "//external-production.codecademy.com/assets/secure/index-e15cd898fa5906b22c02b7fc4cf8e509.html"; CCDATA['current_user'] = {"_id":"599b8469961bae55e50002c4","created_at":"2017-08-21T21:10:01-04:00","url":"http://www.codecademy.com/users/liamrwitt","username":"liamrwitt","handle":"liamrwitt","email":"liamr.witt@gmail.com","name":"","profile_image_url":"https://www.gravatar.com/avatar/ce5342f21f7c19d7d30e6ed3ddd28ddb?s=140\u0026d=retro","points":868,"total_points":868,"roles":[],"deleted":false,"authentication_token":"MmCnqmsNohTqWegBA2oW","pro":false,"experiments":{"exp_credit_card_trial_2019_06_27_existing_users":"control","exp_credit_card_trial_2019_8_21_existing_users":"variant"},"location":{"geo_continent":"North America","geo_country":"US","geo_city":"Monticello","geo_postal":"61856","geo_region":"IL"}}; CCDATA['payments'] = {"defaultPlanId":"proAnnualV4a","defaultTrialPlanId":"proAnnualV4a_7trial","showCheckoutV2":true};
  84.  
  85. //]]>
  86. </script>
  87. <script id="ASSETS_VERSION" type="text/javascript">
  88. //<![CDATA[
  89.  
  90. var ASSETS_VERSION = "assets-v7";
  91.  
  92. //]]>
  93. </script>
  94.  
  95. <script type="text/javascript">
  96. //<![CDATA[
  97.  
  98.  
  99. (function(){var w=window;var ic=w.Intercom;if(typeof ic==="function"){ic('reattach_activator');ic('update',intercomSettings);}else{var d=document;var i=function(){i.c(arguments)};i.q=[];i.c=function(args){i.q.push(args)};w.Intercom=i;function l(){var s=d.createElement('script');s.type='text/javascript';s.async=true;s.src='https://widget.intercom.io/widget/wft4jxth';var x=d.getElementsByTagName('script')[0];x.parentNode.insertBefore(s,x);}if(w.attachEvent){w.attachEvent('onload',l);}else{w.addEventListener('load',l,false);}}})()
  100.  
  101. !(function() {
  102. // it's a SPA so use the boot method instead of window.intercomSettings
  103. window.Intercom('boot', {"hide_default_launcher":true,"app_id":"wft4jxth","user_id":"599b8469961bae55e50002c4"});
  104.  
  105. window.IntercomUpdate = function(traits) {
  106. var defaultTraits = {"user_id":"599b8469961bae55e50002c4"}
  107. for (var attrname in traits) { defaultTraits[attrname] = traits[attrname]; }
  108. window.Intercom('update', defaultTraits);
  109. };
  110.  
  111. window.IntercomUpdate({"name":"liamrwitt","email":"liamr.witt@gmail.com","firstName":"liamrwitt","birthday":"{}","username":"liamrwitt","updated_at":"2019-10-23 14:48:36 -0400","last_activity_at":"2019-10-23 19:28:54 +0000","num_points":"868","num_exercises":"868","num_achievements":"41","deleted":"false","phone_number":"","path_enrollments":"","user_type":"free","pro":"false","created_at":"2017-08-21 21:10:01 -0400","id":"599b8469961bae55e50002c4","anonymous_user":"false","anonymous_user_id":"599b844c961bae368c000313","admin":"false","advisor":"false","exp_credit_card_trial_2019_06_27_existing_users":"control","exp_credit_card_trial_2019_8_21_existing_users":"variant","trial_started_at":"2019-08-16 15:09:03 -0400","day_in_trial":"0","unsubscribed":"false","verified_email":"false","suspicious_email":"false","geo_continent":"North America","geo_country":"US","geo_city":"Monticello","geo_postal":"61856","geo_region":"IL","utm_source":"","utm_medium":"","utm_term":"","utm_campaign":"","utm_content":""});
  112. })();
  113.  
  114. //]]>
  115. </script> <style>.async-hide { opacity: 0 !important} </style>
  116. <script type="text/javascript">
  117. //<![CDATA[
  118.  
  119. (function(a,s,y,n,c,h,i,d,e){s.className+=' '+y;
  120. h.end=i=function(){s.className=s.className.replace(RegExp(' ?'+y),'')};
  121. (a[n]=a[n]||[]).hide=h;setTimeout(function(){i();h.end=null},c);
  122. })(window,document.documentElement,'async-hide','dataLayer',2000,{'GTM-KT2Q6GQ':true});
  123.  
  124. //]]>
  125. </script> <script>
  126. (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  127. (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  128. m=s.getElementsByTagName(o)[0];a.src=g;m.parentNode.insertBefore(a,m)
  129. })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
  130.  
  131. ga('create', 'UA-25136408-1', 'auto');
  132. ga('require', 'GTM-KT2Q6GQ'); // Optimize container ID
  133. ga('set', 'referrer', '');
  134. </script>
  135. <script type="text/javascript">
  136. //<![CDATA[
  137.  
  138. !function(){var analytics=window.analytics=window.analytics||[];if(!analytics.initialize)if(analytics.invoked)window.console&&console.error&&console.error("Segment snippet included twice.");else{analytics.invoked=!0;analytics.methods=["trackSubmit","trackClick","trackLink","trackForm","pageview","identify","group","track","ready","alias","page","once","off","on"];analytics.factory=function(t){return function(){var e=Array.prototype.slice.call(arguments);e.unshift(t);analytics.push(e);return analytics}};for(var t=0;t<analytics.methods.length;t++){var e=analytics.methods[t];analytics[e]=analytics.factory(e)}analytics.load=function(t){var e=document.createElement("script");e.type="text/javascript";e.async=!0;e.src=("https:"===document.location.protocol?"https://":"http://")+"cdn.segment.com/analytics.js/v1/"+t+"/analytics.min.js";var n=document.getElementsByTagName("script")[0];n.parentNode.insertBefore(e,n)};analytics.SNIPPET_VERSION="3.0.1";
  139. analytics.load("awTEDiBEJ130cCHG1N74clKHGM3FLNzQ");
  140. analytics.page();
  141. }}();
  142.  
  143. //]]>
  144. </script>
  145. <script id="__LOADABLE_REQUIRED_CHUNKS__" type="application/json">[10,12,14,17,18,19,20,21,23,26,29,31,32,36,37,39,55,77,91,131,136,366,4,5,7,6,8,9,11,13,15,16,22,24,25,27,28,30,33,35,41,42,45,57,65,69,78,93,167,182,200,307]</script>
  146. <script defer data-chunk="portal" src="/webpack/runtime~portal.20a8715fece1cff5b540.js"></script>
  147. <script defer data-chunk="portal" src="/webpack/44.7abf9bd5fcf4946cb427.chunk.js"></script>
  148. <script defer data-chunk="portal" src="/webpack/49.38a3f029a7d6780cd18f.chunk.js"></script>
  149. <script defer data-chunk="portal" src="/webpack/46.f7cbf4dee4be347e185d.chunk.js"></script>
  150. <script defer data-chunk="portal" src="/webpack/70.6fe1e82af3bfa4094efb.chunk.js"></script>
  151. <script defer data-chunk="portal" src="/webpack/73.3655a7f399d38e121198.chunk.js"></script>
  152. <script defer data-chunk="portal" src="/webpack/76.f75532bdebe61522c2bb.chunk.js"></script>
  153. <script defer data-chunk="portal" src="/webpack/82.d1b613820ef970df8f65.chunk.js"></script>
  154. <script defer data-chunk="portal" src="/webpack/94.fc202b094aba9adbb0b6.chunk.js"></script>
  155. <script defer data-chunk="portal" src="/webpack/95.094ba0108504679339b9.chunk.js"></script>
  156. <script defer data-chunk="portal" src="/webpack/105.05746f9ddcc55c58b7e9.chunk.js"></script>
  157. <script defer data-chunk="portal" src="/webpack/117.ec3c37ab4ad70052370f.chunk.js"></script>
  158. <script defer data-chunk="portal" src="/webpack/128.0462f3597e1981c311db.chunk.js"></script>
  159. <script defer data-chunk="portal" src="/webpack/158.9adcdd3d3053e3456d0e.chunk.js"></script>
  160. <script defer data-chunk="portal" src="/webpack/34.36e9c2a224647f2ad65e.chunk.js"></script>
  161. <script defer data-chunk="portal" src="/webpack/43.5ac120cebb724325dc63.chunk.js"></script>
  162. <script defer data-chunk="portal" src="/webpack/50.46cf72daef1a8c91dc31.chunk.js"></script>
  163. <script defer data-chunk="portal" src="/webpack/57.04733c986be7cf8347b4.chunk.js"></script>
  164. <script defer data-chunk="portal" src="/webpack/79.f634d91137fa94633109.chunk.js"></script>
  165. <script defer data-chunk="portal" src="/webpack/98.c62cabadaa58493d1442.chunk.js"></script>
  166. <script defer data-chunk="portal" src="/webpack/106.bee9e855b04d89024586.chunk.js"></script>
  167. <script defer data-chunk="portal" src="/webpack/119.03cd2db59ae6b9dae175.chunk.js"></script>
  168. <script defer data-chunk="portal" src="/webpack/129.d5d0ecc9b2386a84044a.chunk.js"></script>
  169. <script defer data-chunk="portal" src="/webpack/149.fe9766643d992e211ba7.chunk.js"></script>
  170. <script defer data-chunk="portal" src="/webpack/components-Modal-ProTrialWelcomeModal.74e6257cd90748117130.chunk.js"></script>
  171. <script defer data-chunk="portal" src="/webpack/208.1883bba42a1a1ca25e57.chunk.js"></script>
  172. <script defer data-chunk="portal" src="/webpack/portal.0ebbbea9eea1c30575a9.chunk.js"></script>
  173. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/10.5cffdd5c93606cac786d.chunk.js"></script>
  174. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/12.49dffd1a5f3f9b149728.chunk.js"></script>
  175. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/14.1025aad30f8cf5a862d5.chunk.js"></script>
  176. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/17.f290494786c1004f5ec3.chunk.js"></script>
  177. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/18.30d18d52c99a1d9fdab4.chunk.js"></script>
  178. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/19.e76434b391d0d274e09f.chunk.js"></script>
  179. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/20.6abc3bdb4fb6e847da4a.chunk.js"></script>
  180. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/21.4f99e14879a3dc790206.chunk.js"></script>
  181. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/23.e49ef3eec3eb42091c3f.chunk.js"></script>
  182. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/26.e68544b20a47561f9cd1.chunk.js"></script>
  183. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/29.c212e7b701682b8c0594.chunk.js"></script>
  184. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/31.ea56e17641154968018a.chunk.js"></script>
  185. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/32.b8e15fbc438dd2220eec.chunk.js"></script>
  186. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/36.93a6ef6a84ebbde54ede.chunk.js"></script>
  187. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/37.a27150486bf0a050355b.chunk.js"></script>
  188. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/39.45dba137b45a7f0989f5.chunk.js"></script>
  189. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/55.9bd999871123ffb42b06.chunk.js"></script>
  190. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/77.7a9fc0a245a107c25eff.chunk.js"></script>
  191. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/91.568595b2ad087f6f8077.chunk.js"></script>
  192. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/131.25dfee21dd7cad587a85.chunk.js"></script>
  193. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/136.7ba0de4a1c81c1597b20.chunk.js"></script>
  194. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/366.74dc8fa1ee8acf707a61.chunk.js"></script>
  195. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/4.8bdf32b157f9713f6068.chunk.js"></script>
  196. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/5.477f293882cadc0ce6ac.chunk.js"></script>
  197. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/7.c35a8beacc48d57a7025.chunk.js"></script>
  198. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/6.c098350a8356411c3ac9.chunk.js"></script>
  199. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/8.42417b404cb7a93d50cd.chunk.js"></script>
  200. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/9.9f28fe35d874c6f1b02e.chunk.js"></script>
  201. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/11.1b3c546bad4846dd3f13.chunk.js"></script>
  202. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/13.91555812c0964919d01d.chunk.js"></script>
  203. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/15.f1dbc2ed6f0fb72aed23.chunk.js"></script>
  204. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/16.113edb7884c489c7e7bc.chunk.js"></script>
  205. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/22.038b3ec54c2a40dc11d9.chunk.js"></script>
  206. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/24.13cd2e88be4dbdea77e9.chunk.js"></script>
  207. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/25.2586bca0568774456776.chunk.js"></script>
  208. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/27.2b0843347a47f90c6075.chunk.js"></script>
  209. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/28.b345c01a0b9f20792ea3.chunk.js"></script>
  210. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/30.65d03b9f04053fc4d891.chunk.js"></script>
  211. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/33.ce2c8395b7a9361dcdf1.chunk.js"></script>
  212. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/35.be7de8da01f77c9f1bb9.chunk.js"></script>
  213. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/41.bc5bf48fa61784ff5723.chunk.js"></script>
  214. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/42.5c81fd807901d1f66a0d.chunk.js"></script>
  215. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/45.88c0ad967916eb24e7f9.chunk.js"></script>
  216. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/65.8b181ef706db14aa7334.chunk.js"></script>
  217. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/69.aaa4580794729874be7b.chunk.js"></script>
  218. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/78.c53df4eaf4e2cd1821e7.chunk.js"></script>
  219. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/93.ccd61e49527c2c41ea87.chunk.js"></script>
  220. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/167.1d413c6b789725c8f49c.chunk.js"></script>
  221. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/182.b4b1e56b36b22d2b9112.chunk.js"></script>
  222. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/200.de914c7c921548520f03.chunk.js"></script>
  223. <script defer data-chunk="portal-scenes-CoursePages-CourseLandingPage" src="/webpack/portal-scenes-CoursePages-CourseLandingPage.9d9e68dd8f9c82a40fa4.chunk.js"></script>
  224.  
  225.  
  226.  
  227. </head>
  228.  
  229. <body browser="Windows">
  230.  
  231. <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-KTLK85W"
  232. height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
  233.  
  234.  
  235. <div class="react-root" data-react-class="PortalRouter" data-react-props="{&quot;reduxData&quot;:{&quot;entities&quot;:{&quot;courses&quot;:{&quot;bySlug&quot;:{&quot;learn-php&quot;:{&quot;uuid&quot;:&quot;d24ce3aa4ed99ac04afffec4a78e2e44&quot;,&quot;locale&quot;:null,&quot;slug&quot;:&quot;learn-php&quot;,&quot;title&quot;:&quot;Learn PHP&quot;,&quot;description&quot;:&quot;Learn the fundamentals of PHP, one of the most popular languages of modern web development.&quot;,&quot;description_extended&quot;:&quot;### Why Learn PHP? \nPHP is a widely used server-side programming language that&#x27;s become increasingly fast and powerful over the years. PHP works well with HTML and databases, making it a great language for anyone interested in building dynamic web applications. \n### Take-Away Skills \nIn this course, you&#x27;ll be exposed to fundamental programming concepts in PHP. \n### Upcoming Releases \nWe&#x27;re building new and exciting content for this course, keep an eye out for this fresh content coming soon! \n### Note on Prerequisites: \nSome basic HTML is helpful before taking this course.&quot;,&quot;tags&quot;:[],&quot;meta&quot;:{},&quot;syllabus&quot;:{&quot;uuid&quot;:&quot;d24ce3aa4ed99ac04afffec4a78e2e44&quot;,&quot;title&quot;:&quot;Learn PHP&quot;,&quot;description&quot;:null,&quot;meta&quot;:{},&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;content_items&quot;:[&quot;7a17afe4265db184a06e82c6d81ae94f&quot;,&quot;73b7447c24d4ebc185caa57a6241d329&quot;,&quot;773286567764b8b664ee801139a37991&quot;,&quot;e0164e0a70af0ccefbed6b512edabf1d&quot;,&quot;f064db17513057bd4d30753f4fb87f66&quot;,&quot;7e8fd8262c911c54c24ab1fbd79ab566&quot;,&quot;15d38ded8370f7968e577dad1f09f17a&quot;,&quot;96a2bece294780856096b0aca4bfe36a&quot;,&quot;3cd5e9cf3c808618026ff2a3df7fc7a9&quot;,&quot;562680d624670488bf0b995ec689a00c&quot;,&quot;8bcadac2b1ee2778367b3489153f680f&quot;,&quot;545d9a750de8bbd7f02f99298c2c433a&quot;,&quot;13d0df75c063b9862224ee4d9a1ec2ff&quot;,&quot;990f48aa764099b8070cb48bb18a62f3&quot;,&quot;2f447708f52f63cd441794ec5c913316&quot;,&quot;3867ae895e2f66756260e54c02f51fb9&quot;,&quot;5971242949012a9b3b9b352350055f6d&quot;,&quot;19d16bea89cdda565faae7b6b610ecca&quot;,&quot;148de682585d422a3488daa12a7e89c5&quot;,&quot;48bae1554d956e85183bb5b8e0ef1d26&quot;,&quot;2a1219867ad5d817d6c0d0ed9ca9ecea&quot;,&quot;b49025fd6c493fd9b88c227af526b4aa&quot;,&quot;1fce98407cf05ef5f2d90898fa68046e&quot;,&quot;1e5f8143860a884c92ab26569cf0f876&quot;,&quot;f1daa55525421ea547d4947c96851352&quot;,&quot;669c12dd5c0c75ca0c666e8f84854e8e&quot;,&quot;fe5716e8dd27e674c8d9a96239ea1a98&quot;,&quot;348e4b2bab86ba3302fa93de733ec69b&quot;,&quot;0c0311984638b0bfddbaae21d65599b1&quot;,&quot;c824e22102928e5c08ffcfc97dc2210d&quot;,&quot;069a6f9cdac04b2757f05a403a194d67&quot;,&quot;ed9564ad353bae2766988c14c0f9c2d2&quot;,&quot;43792131f2f6cc180563e9bd0665e5b2&quot;,&quot;ef492b7a9ed65f6c029dc34a5b79106a&quot;,&quot;5b3899cfa1d4279909aaa812bfa232aa&quot;,&quot;8c401ffb922fcadcdf6e732d87eb7f96&quot;,&quot;3e00c5692e034629386740a2efd55f5c&quot;,&quot;71f5e9332270db42c0ae91a70a4ec611&quot;,&quot;a9b97b3c2c3346921f09b30266338db3&quot;,&quot;551aaeb0c663d2e05bf30ecf3d51dc03&quot;,&quot;032e20b63cfbabfbaee7c08b6ca8de89&quot;,&quot;1b942e5ebfcb96d1ec54d8355d2db877&quot;,&quot;ce2d0c75531a5d245a709a6f4ea64996&quot;,&quot;1c63c9e88a6fbd14b82cccda3dc17133&quot;,&quot;90fab2027d9a69b0a36823c375f02794&quot;],&quot;course_uuids&quot;:[&quot;d24ce3aa4ed99ac04afffec4a78e2e44&quot;],&quot;last_published&quot;:&quot;2019-10-04T19:56:26.479+00:00&quot;,&quot;collections&quot;:{&quot;units&quot;:[{&quot;module_id&quot;:&quot;0a379de3380cc9d2af85a8e1ecb09dd3&quot;,&quot;start&quot;:0,&quot;length&quot;:2,&quot;meta&quot;:{&quot;slug&quot;:&quot;getting-started-with-php&quot;,&quot;title&quot;:&quot;Getting Started with PHP&quot;,&quot;description&quot;:&quot;Learn how PHP is used in modern web development to create dynamic web pages for visitors.&quot;}},{&quot;module_id&quot;:&quot;a47b2365a1a7e47df8ff976279bccc0e&quot;,&quot;start&quot;:2,&quot;length&quot;:5,&quot;meta&quot;:{&quot;slug&quot;:&quot;learn-php-variables&quot;,&quot;title&quot;:&quot;Learn PHP Variables&quot;,&quot;description&quot;:&quot;Learn about PHP variables and the string and number data types.&quot;}},{&quot;module_id&quot;:&quot;cd92d78d6d93b5e3061c650fc62ad72d&quot;,&quot;start&quot;:7,&quot;length&quot;:3,&quot;meta&quot;:{&quot;slug&quot;:&quot;introduction-to-functions-in-php&quot;,&quot;title&quot;:&quot;Introduction to Functions in PHP&quot;,&quot;description&quot;:&quot;Get started learning about functions in PHP so you can create your own reusable blocks of code.&quot;}},{&quot;module_id&quot;:&quot;3d760680c37324b84fbccb5bf505ae4c&quot;,&quot;start&quot;:10,&quot;length&quot;:3,&quot;meta&quot;:{&quot;slug&quot;:&quot;php-built-in-functions&quot;,&quot;title&quot;:&quot;PHP Built-in Functions&quot;,&quot;description&quot;:&quot;PHP contains built-in functions for completing common (and some niche) tasks. This course will teach you how to find and use functions.&quot;}},{&quot;module_id&quot;:&quot;a7fde953e4a2cf255105c39c29f7c8fc&quot;,&quot;start&quot;:13,&quot;length&quot;:5,&quot;meta&quot;:{&quot;slug&quot;:&quot;learn-php-arrays&quot;,&quot;title&quot;:&quot;Learn PHP Arrays&quot;,&quot;description&quot;:&quot;Learn about PHP ordered and associative arrays and how this data type is used to store, access and manipulate data. &quot;}},{&quot;module_id&quot;:&quot;76a2e950c3098b44debe13514a14954d&quot;,&quot;start&quot;:18,&quot;length&quot;:4,&quot;meta&quot;:{&quot;slug&quot;:&quot;html-forms-php&quot;,&quot;title&quot;:&quot;HTML Form Handling in PHP&quot;,&quot;description&quot;:&quot;Learn how to use PHP to handle HTML forms.&quot;}},{&quot;module_id&quot;:&quot;253f9528de23c17ba297a613b91d1624&quot;,&quot;start&quot;:22,&quot;length&quot;:8,&quot;meta&quot;:{&quot;slug&quot;:&quot;conditionals-logic-php&quot;,&quot;title&quot;:&quot;Conditionals and Logic in PHP&quot;,&quot;description&quot;:&quot;Learn about the boolean data type, conditionals, `switch` statements, the ternary operator, comparison operators, and logical operators! &quot;}},{&quot;module_id&quot;:&quot;2890601407cfc4e7180d006165c3a6b7&quot;,&quot;start&quot;:30,&quot;length&quot;:6,&quot;meta&quot;:{&quot;slug&quot;:&quot;php-loops&quot;,&quot;title&quot;:&quot;Loops in PHP&quot;,&quot;description&quot;:&quot;Loops are a key way to control execution of code. Learn how to use them effectively in PHP.&quot;}},{&quot;module_id&quot;:&quot;083e8bc8489476964d3f4723cc045756&quot;,&quot;start&quot;:36,&quot;length&quot;:5,&quot;meta&quot;:{&quot;slug&quot;:&quot;php-form-validation&quot;,&quot;title&quot;:&quot;PHP Form Validation&quot;,&quot;description&quot;:&quot;Learn how to use PHP to validate HTML forms.&quot;}},{&quot;module_id&quot;:&quot;2b6e78084f7c8aa26ef2f631cf05d04a&quot;,&quot;start&quot;:41,&quot;length&quot;:4,&quot;meta&quot;:{&quot;slug&quot;:&quot;classes-and-objects-in-php&quot;,&quot;title&quot;:&quot;Classes and Objects in PHP&quot;,&quot;description&quot;:&quot;Learn how to use object-oriented programming in PHP.&quot;}}]}},&quot;type&quot;:&quot;track&quot;,&quot;prerequisite_tracks&quot;:[{&quot;slug&quot;:&quot;learn-html&quot;,&quot;title&quot;:&quot;Introduction to HTML&quot;}],&quot;syllabusUuid&quot;:&quot;d24ce3aa4ed99ac04afffec4a78e2e44&quot;}}},&quot;syllabuses&quot;:{&quot;byUuid&quot;:{&quot;d24ce3aa4ed99ac04afffec4a78e2e44&quot;:{&quot;uuid&quot;:&quot;d24ce3aa4ed99ac04afffec4a78e2e44&quot;,&quot;title&quot;:&quot;Learn PHP&quot;,&quot;description&quot;:null,&quot;meta&quot;:{},&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;content_items&quot;:[&quot;7a17afe4265db184a06e82c6d81ae94f&quot;,&quot;73b7447c24d4ebc185caa57a6241d329&quot;,&quot;773286567764b8b664ee801139a37991&quot;,&quot;e0164e0a70af0ccefbed6b512edabf1d&quot;,&quot;f064db17513057bd4d30753f4fb87f66&quot;,&quot;7e8fd8262c911c54c24ab1fbd79ab566&quot;,&quot;15d38ded8370f7968e577dad1f09f17a&quot;,&quot;96a2bece294780856096b0aca4bfe36a&quot;,&quot;3cd5e9cf3c808618026ff2a3df7fc7a9&quot;,&quot;562680d624670488bf0b995ec689a00c&quot;,&quot;8bcadac2b1ee2778367b3489153f680f&quot;,&quot;545d9a750de8bbd7f02f99298c2c433a&quot;,&quot;13d0df75c063b9862224ee4d9a1ec2ff&quot;,&quot;990f48aa764099b8070cb48bb18a62f3&quot;,&quot;2f447708f52f63cd441794ec5c913316&quot;,&quot;3867ae895e2f66756260e54c02f51fb9&quot;,&quot;5971242949012a9b3b9b352350055f6d&quot;,&quot;19d16bea89cdda565faae7b6b610ecca&quot;,&quot;148de682585d422a3488daa12a7e89c5&quot;,&quot;48bae1554d956e85183bb5b8e0ef1d26&quot;,&quot;2a1219867ad5d817d6c0d0ed9ca9ecea&quot;,&quot;b49025fd6c493fd9b88c227af526b4aa&quot;,&quot;1fce98407cf05ef5f2d90898fa68046e&quot;,&quot;1e5f8143860a884c92ab26569cf0f876&quot;,&quot;f1daa55525421ea547d4947c96851352&quot;,&quot;669c12dd5c0c75ca0c666e8f84854e8e&quot;,&quot;fe5716e8dd27e674c8d9a96239ea1a98&quot;,&quot;348e4b2bab86ba3302fa93de733ec69b&quot;,&quot;0c0311984638b0bfddbaae21d65599b1&quot;,&quot;c824e22102928e5c08ffcfc97dc2210d&quot;,&quot;069a6f9cdac04b2757f05a403a194d67&quot;,&quot;ed9564ad353bae2766988c14c0f9c2d2&quot;,&quot;43792131f2f6cc180563e9bd0665e5b2&quot;,&quot;ef492b7a9ed65f6c029dc34a5b79106a&quot;,&quot;5b3899cfa1d4279909aaa812bfa232aa&quot;,&quot;8c401ffb922fcadcdf6e732d87eb7f96&quot;,&quot;3e00c5692e034629386740a2efd55f5c&quot;,&quot;71f5e9332270db42c0ae91a70a4ec611&quot;,&quot;a9b97b3c2c3346921f09b30266338db3&quot;,&quot;551aaeb0c663d2e05bf30ecf3d51dc03&quot;,&quot;032e20b63cfbabfbaee7c08b6ca8de89&quot;,&quot;1b942e5ebfcb96d1ec54d8355d2db877&quot;,&quot;ce2d0c75531a5d245a709a6f4ea64996&quot;,&quot;1c63c9e88a6fbd14b82cccda3dc17133&quot;,&quot;90fab2027d9a69b0a36823c375f02794&quot;],&quot;course_uuids&quot;:[&quot;d24ce3aa4ed99ac04afffec4a78e2e44&quot;],&quot;last_published&quot;:&quot;2019-10-04T19:56:26.479+00:00&quot;,&quot;collections&quot;:{&quot;units&quot;:[{&quot;module_id&quot;:&quot;0a379de3380cc9d2af85a8e1ecb09dd3&quot;,&quot;start&quot;:0,&quot;length&quot;:2,&quot;meta&quot;:{&quot;slug&quot;:&quot;getting-started-with-php&quot;,&quot;title&quot;:&quot;Getting Started with PHP&quot;,&quot;description&quot;:&quot;Learn how PHP is used in modern web development to create dynamic web pages for visitors.&quot;}},{&quot;module_id&quot;:&quot;a47b2365a1a7e47df8ff976279bccc0e&quot;,&quot;start&quot;:2,&quot;length&quot;:5,&quot;meta&quot;:{&quot;slug&quot;:&quot;learn-php-variables&quot;,&quot;title&quot;:&quot;Learn PHP Variables&quot;,&quot;description&quot;:&quot;Learn about PHP variables and the string and number data types.&quot;}},{&quot;module_id&quot;:&quot;cd92d78d6d93b5e3061c650fc62ad72d&quot;,&quot;start&quot;:7,&quot;length&quot;:3,&quot;meta&quot;:{&quot;slug&quot;:&quot;introduction-to-functions-in-php&quot;,&quot;title&quot;:&quot;Introduction to Functions in PHP&quot;,&quot;description&quot;:&quot;Get started learning about functions in PHP so you can create your own reusable blocks of code.&quot;}},{&quot;module_id&quot;:&quot;3d760680c37324b84fbccb5bf505ae4c&quot;,&quot;start&quot;:10,&quot;length&quot;:3,&quot;meta&quot;:{&quot;slug&quot;:&quot;php-built-in-functions&quot;,&quot;title&quot;:&quot;PHP Built-in Functions&quot;,&quot;description&quot;:&quot;PHP contains built-in functions for completing common (and some niche) tasks. This course will teach you how to find and use functions.&quot;}},{&quot;module_id&quot;:&quot;a7fde953e4a2cf255105c39c29f7c8fc&quot;,&quot;start&quot;:13,&quot;length&quot;:5,&quot;meta&quot;:{&quot;slug&quot;:&quot;learn-php-arrays&quot;,&quot;title&quot;:&quot;Learn PHP Arrays&quot;,&quot;description&quot;:&quot;Learn about PHP ordered and associative arrays and how this data type is used to store, access and manipulate data. &quot;}},{&quot;module_id&quot;:&quot;76a2e950c3098b44debe13514a14954d&quot;,&quot;start&quot;:18,&quot;length&quot;:4,&quot;meta&quot;:{&quot;slug&quot;:&quot;html-forms-php&quot;,&quot;title&quot;:&quot;HTML Form Handling in PHP&quot;,&quot;description&quot;:&quot;Learn how to use PHP to handle HTML forms.&quot;}},{&quot;module_id&quot;:&quot;253f9528de23c17ba297a613b91d1624&quot;,&quot;start&quot;:22,&quot;length&quot;:8,&quot;meta&quot;:{&quot;slug&quot;:&quot;conditionals-logic-php&quot;,&quot;title&quot;:&quot;Conditionals and Logic in PHP&quot;,&quot;description&quot;:&quot;Learn about the boolean data type, conditionals, `switch` statements, the ternary operator, comparison operators, and logical operators! &quot;}},{&quot;module_id&quot;:&quot;2890601407cfc4e7180d006165c3a6b7&quot;,&quot;start&quot;:30,&quot;length&quot;:6,&quot;meta&quot;:{&quot;slug&quot;:&quot;php-loops&quot;,&quot;title&quot;:&quot;Loops in PHP&quot;,&quot;description&quot;:&quot;Loops are a key way to control execution of code. Learn how to use them effectively in PHP.&quot;}},{&quot;module_id&quot;:&quot;083e8bc8489476964d3f4723cc045756&quot;,&quot;start&quot;:36,&quot;length&quot;:5,&quot;meta&quot;:{&quot;slug&quot;:&quot;php-form-validation&quot;,&quot;title&quot;:&quot;PHP Form Validation&quot;,&quot;description&quot;:&quot;Learn how to use PHP to validate HTML forms.&quot;}},{&quot;module_id&quot;:&quot;2b6e78084f7c8aa26ef2f631cf05d04a&quot;,&quot;start&quot;:41,&quot;length&quot;:4,&quot;meta&quot;:{&quot;slug&quot;:&quot;classes-and-objects-in-php&quot;,&quot;title&quot;:&quot;Classes and Objects in PHP&quot;,&quot;description&quot;:&quot;Learn how to use object-oriented programming in PHP.&quot;}}]}}}},&quot;courseProgresses&quot;:{&quot;bySlug&quot;:{&quot;learn-php&quot;:{&quot;started&quot;:true,&quot;items_complete&quot;:15,&quot;items_total&quot;:45,&quot;lesson&quot;:{&quot;total&quot;:17,&quot;complete&quot;:15},&quot;quiz&quot;:{&quot;total&quot;:14,&quot;complete&quot;:0},&quot;project&quot;:{&quot;total&quot;:12,&quot;complete&quot;:0},&quot;article&quot;:{&quot;total&quot;:1,&quot;complete&quot;:0},&quot;video&quot;:{&quot;total&quot;:1,&quot;complete&quot;:0},&quot;informational&quot;:{&quot;total&quot;:0,&quot;complete&quot;:0},&quot;percent_complete&quot;:88,&quot;completed&quot;:false,&quot;last_active&quot;:&quot;2019-10-23T18:48:36Z&quot;,&quot;units&quot;:[{&quot;started&quot;:true,&quot;items_complete&quot;:1,&quot;items_total&quot;:2,&quot;lesson&quot;:{&quot;total&quot;:1,&quot;complete&quot;:1},&quot;quiz&quot;:{&quot;total&quot;:1,&quot;complete&quot;:0},&quot;project&quot;:{&quot;total&quot;:0,&quot;complete&quot;:0},&quot;article&quot;:{&quot;total&quot;:0,&quot;complete&quot;:0},&quot;video&quot;:{&quot;total&quot;:0,&quot;complete&quot;:0},&quot;informational&quot;:{&quot;total&quot;:0,&quot;complete&quot;:0},&quot;percent_complete&quot;:100,&quot;completed&quot;:true},{&quot;started&quot;:true,&quot;items_complete&quot;:2,&quot;items_total&quot;:5,&quot;lesson&quot;:{&quot;total&quot;:2,&quot;complete&quot;:2},&quot;quiz&quot;:{&quot;total&quot;:2,&quot;complete&quot;:0},&quot;project&quot;:{&quot;total&quot;:1,&quot;complete&quot;:0},&quot;article&quot;:{&quot;total&quot;:0,&quot;complete&quot;:0},&quot;video&quot;:{&quot;total&quot;:0,&quot;complete&quot;:0},&quot;informational&quot;:{&quot;total&quot;:0,&quot;complete&quot;:0},&quot;percent_complete&quot;:100,&quot;completed&quot;:true},{&quot;started&quot;:true,&quot;items_complete&quot;:1,&quot;items_total&quot;:3,&quot;lesson&quot;:{&quot;total&quot;:1,&quot;complete&quot;:1},&quot;quiz&quot;:{&quot;total&quot;:1,&quot;complete&quot;:0},&quot;project&quot;:{&quot;total&quot;:1,&quot;complete&quot;:0},&quot;article&quot;:{&quot;total&quot;:0,&quot;complete&quot;:0},&quot;video&quot;:{&quot;total&quot;:0,&quot;complete&quot;:0},&quot;informational&quot;:{&quot;total&quot;:0,&quot;complete&quot;:0},&quot;percent_complete&quot;:100,&quot;completed&quot;:true},{&quot;started&quot;:true,&quot;items_complete&quot;:1,&quot;items_total&quot;:3,&quot;lesson&quot;:{&quot;total&quot;:1,&quot;complete&quot;:1},&quot;quiz&quot;:{&quot;total&quot;:1,&quot;complete&quot;:0},&quot;project&quot;:{&quot;total&quot;:1,&quot;complete&quot;:0},&quot;article&quot;:{&quot;total&quot;:0,&quot;complete&quot;:0},&quot;video&quot;:{&quot;total&quot;:0,&quot;complete&quot;:0},&quot;informational&quot;:{&quot;total&quot;:0,&quot;complete&quot;:0},&quot;percent_complete&quot;:100,&quot;completed&quot;:true},{&quot;started&quot;:true,&quot;items_complete&quot;:2,&quot;items_total&quot;:5,&quot;lesson&quot;:{&quot;total&quot;:2,&quot;complete&quot;:2},&quot;quiz&quot;:{&quot;total&quot;:2,&quot;complete&quot;:0},&quot;project&quot;:{&quot;total&quot;:1,&quot;complete&quot;:0},&quot;article&quot;:{&quot;total&quot;:0,&quot;complete&quot;:0},&quot;video&quot;:{&quot;total&quot;:0,&quot;complete&quot;:0},&quot;informational&quot;:{&quot;total&quot;:0,&quot;complete&quot;:0},&quot;percent_complete&quot;:100,&quot;completed&quot;:true},{&quot;started&quot;:true,&quot;items_complete&quot;:2,&quot;items_total&quot;:4,&quot;lesson&quot;:{&quot;total&quot;:2,&quot;complete&quot;:2},&quot;quiz&quot;:{&quot;total&quot;:1,&quot;complete&quot;:0},&quot;project&quot;:{&quot;total&quot;:1,&quot;complete&quot;:0},&quot;article&quot;:{&quot;total&quot;:0,&quot;complete&quot;:0},&quot;video&quot;:{&quot;total&quot;:0,&quot;complete&quot;:0},&quot;informational&quot;:{&quot;total&quot;:0,&quot;complete&quot;:0},&quot;percent_complete&quot;:100,&quot;completed&quot;:true},{&quot;started&quot;:true,&quot;items_complete&quot;:2,&quot;items_total&quot;:8,&quot;lesson&quot;:{&quot;total&quot;:2,&quot;complete&quot;:2},&quot;quiz&quot;:{&quot;total&quot;:2,&quot;complete&quot;:0},&quot;project&quot;:{&quot;total&quot;:3,&quot;complete&quot;:0},&quot;article&quot;:{&quot;total&quot;:1,&quot;complete&quot;:0},&quot;video&quot;:{&quot;total&quot;:0,&quot;complete&quot;:0},&quot;informational&quot;:{&quot;total&quot;:0,&quot;complete&quot;:0},&quot;percent_complete&quot;:100,&quot;completed&quot;:true},{&quot;started&quot;:true,&quot;items_complete&quot;:2,&quot;items_total&quot;:6,&quot;lesson&quot;:{&quot;total&quot;:2,&quot;complete&quot;:2},&quot;quiz&quot;:{&quot;total&quot;:2,&quot;complete&quot;:0},&quot;project&quot;:{&quot;total&quot;:2,&quot;complete&quot;:0},&quot;article&quot;:{&quot;total&quot;:0,&quot;complete&quot;:0},&quot;video&quot;:{&quot;total&quot;:0,&quot;complete&quot;:0},&quot;informational&quot;:{&quot;total&quot;:0,&quot;complete&quot;:0},&quot;percent_complete&quot;:100,&quot;completed&quot;:true},{&quot;started&quot;:true,&quot;items_complete&quot;:2,&quot;items_total&quot;:5,&quot;lesson&quot;:{&quot;total&quot;:3,&quot;complete&quot;:2},&quot;quiz&quot;:{&quot;total&quot;:1,&quot;complete&quot;:0},&quot;project&quot;:{&quot;total&quot;:1,&quot;complete&quot;:0},&quot;article&quot;:{&quot;total&quot;:0,&quot;complete&quot;:0},&quot;video&quot;:{&quot;total&quot;:0,&quot;complete&quot;:0},&quot;informational&quot;:{&quot;total&quot;:0,&quot;complete&quot;:0},&quot;percent_complete&quot;:66,&quot;completed&quot;:false},{&quot;started&quot;:false,&quot;items_complete&quot;:0,&quot;items_total&quot;:4,&quot;lesson&quot;:{&quot;total&quot;:1,&quot;complete&quot;:0},&quot;quiz&quot;:{&quot;total&quot;:1,&quot;complete&quot;:0},&quot;project&quot;:{&quot;total&quot;:1,&quot;complete&quot;:0},&quot;article&quot;:{&quot;total&quot;:0,&quot;complete&quot;:0},&quot;video&quot;:{&quot;total&quot;:1,&quot;complete&quot;:0},&quot;informational&quot;:{&quot;total&quot;:0,&quot;complete&quot;:0},&quot;percent_complete&quot;:0,&quot;completed&quot;:false}]}}},&quot;contentItemProgresses&quot;:{&quot;byId&quot;:{&quot;7a17afe4265db184a06e82c6d81ae94f&quot;:{&quot;content_item_id&quot;:&quot;7a17afe4265db184a06e82c6d81ae94f&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:true,&quot;completed&quot;:true,&quot;user_completed&quot;:false,&quot;started_at&quot;:&quot;2019-10-17T18:13:09Z&quot;,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:&quot;2019-10-17T18:19:35Z&quot;,&quot;last_updated&quot;:&quot;2019-10-17T18:19:35Z&quot;,&quot;exercises_completed&quot;:6,&quot;current_exercise_checkpoints_completed&quot;:0,&quot;type&quot;:&quot;lesson&quot;,&quot;exercises_total&quot;:6,&quot;progress_pct&quot;:100},&quot;73b7447c24d4ebc185caa57a6241d329&quot;:{&quot;content_item_id&quot;:&quot;73b7447c24d4ebc185caa57a6241d329&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:false,&quot;completed&quot;:false,&quot;user_completed&quot;:false,&quot;started_at&quot;:null,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:null,&quot;last_updated&quot;:null,&quot;type&quot;:&quot;quiz&quot;,&quot;total&quot;:null,&quot;correct&quot;:null,&quot;pct&quot;:null,&quot;highest_pct&quot;:null,&quot;passed&quot;:false,&quot;passed_any&quot;:false,&quot;taken&quot;:false,&quot;quiz_attempts&quot;:[]},&quot;773286567764b8b664ee801139a37991&quot;:{&quot;content_item_id&quot;:&quot;773286567764b8b664ee801139a37991&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:true,&quot;completed&quot;:true,&quot;user_completed&quot;:false,&quot;started_at&quot;:&quot;2019-10-17T18:22:14Z&quot;,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:&quot;2019-10-21T18:13:33Z&quot;,&quot;last_updated&quot;:&quot;2019-10-21T18:13:33Z&quot;,&quot;exercises_completed&quot;:11,&quot;current_exercise_checkpoints_completed&quot;:0,&quot;type&quot;:&quot;lesson&quot;,&quot;exercises_total&quot;:11,&quot;progress_pct&quot;:100},&quot;e0164e0a70af0ccefbed6b512edabf1d&quot;:{&quot;content_item_id&quot;:&quot;e0164e0a70af0ccefbed6b512edabf1d&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:false,&quot;completed&quot;:false,&quot;user_completed&quot;:false,&quot;started_at&quot;:null,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:null,&quot;last_updated&quot;:null,&quot;type&quot;:&quot;quiz&quot;,&quot;total&quot;:null,&quot;correct&quot;:null,&quot;pct&quot;:null,&quot;highest_pct&quot;:null,&quot;passed&quot;:false,&quot;passed_any&quot;:false,&quot;taken&quot;:false,&quot;quiz_attempts&quot;:[]},&quot;f064db17513057bd4d30753f4fb87f66&quot;:{&quot;content_item_id&quot;:&quot;f064db17513057bd4d30753f4fb87f66&quot;,&quot;quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:true,&quot;completed&quot;:true,&quot;user_completed&quot;:false,&quot;started_at&quot;:&quot;2019-10-21T18:13:46Z&quot;,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:&quot;2019-10-21T18:14:35Z&quot;,&quot;last_updated&quot;:&quot;2019-10-21T18:14:35Z&quot;,&quot;exercises_completed&quot;:9,&quot;current_exercise_checkpoints_completed&quot;:0,&quot;type&quot;:&quot;lesson&quot;,&quot;exercises_total&quot;:9,&quot;progress_pct&quot;:100},&quot;7e8fd8262c911c54c24ab1fbd79ab566&quot;:{&quot;content_item_id&quot;:&quot;7e8fd8262c911c54c24ab1fbd79ab566&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:false,&quot;completed&quot;:false,&quot;user_completed&quot;:false,&quot;started_at&quot;:null,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:null,&quot;last_updated&quot;:null,&quot;type&quot;:&quot;quiz&quot;,&quot;total&quot;:null,&quot;correct&quot;:null,&quot;pct&quot;:null,&quot;highest_pct&quot;:null,&quot;passed&quot;:false,&quot;passed_any&quot;:false,&quot;taken&quot;:false,&quot;quiz_attempts&quot;:[]},&quot;15d38ded8370f7968e577dad1f09f17a&quot;:{&quot;content_item_id&quot;:&quot;15d38ded8370f7968e577dad1f09f17a&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:false,&quot;completed&quot;:false,&quot;user_completed&quot;:false,&quot;started_at&quot;:null,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:null,&quot;last_updated&quot;:null,&quot;checklist&quot;:{},&quot;status&quot;:0,&quot;type&quot;:&quot;project&quot;,&quot;tasks_complete&quot;:0,&quot;tasks_total&quot;:6,&quot;progress_pct&quot;:0},&quot;96a2bece294780856096b0aca4bfe36a&quot;:{&quot;content_item_id&quot;:&quot;96a2bece294780856096b0aca4bfe36a&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:true,&quot;completed&quot;:true,&quot;user_completed&quot;:false,&quot;started_at&quot;:&quot;2019-10-21T18:14:38Z&quot;,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:&quot;2019-10-21T18:17:54Z&quot;,&quot;last_updated&quot;:&quot;2019-10-21T18:17:54Z&quot;,&quot;exercises_completed&quot;:12,&quot;current_exercise_checkpoints_completed&quot;:0,&quot;type&quot;:&quot;lesson&quot;,&quot;exercises_total&quot;:12,&quot;progress_pct&quot;:100},&quot;3cd5e9cf3c808618026ff2a3df7fc7a9&quot;:{&quot;content_item_id&quot;:&quot;3cd5e9cf3c808618026ff2a3df7fc7a9&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:false,&quot;completed&quot;:false,&quot;user_completed&quot;:false,&quot;started_at&quot;:null,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:null,&quot;last_updated&quot;:null,&quot;type&quot;:&quot;quiz&quot;,&quot;total&quot;:null,&quot;correct&quot;:null,&quot;pct&quot;:null,&quot;highest_pct&quot;:null,&quot;passed&quot;:false,&quot;passed_any&quot;:false,&quot;taken&quot;:false,&quot;quiz_attempts&quot;:[]},&quot;562680d624670488bf0b995ec689a00c&quot;:{&quot;content_item_id&quot;:&quot;562680d624670488bf0b995ec689a00c&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:false,&quot;completed&quot;:false,&quot;user_completed&quot;:false,&quot;started_at&quot;:null,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:null,&quot;last_updated&quot;:null,&quot;checklist&quot;:{},&quot;status&quot;:0,&quot;type&quot;:&quot;project&quot;,&quot;tasks_complete&quot;:0,&quot;tasks_total&quot;:7,&quot;progress_pct&quot;:0},&quot;8bcadac2b1ee2778367b3489153f680f&quot;:{&quot;content_item_id&quot;:&quot;8bcadac2b1ee2778367b3489153f680f&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:true,&quot;completed&quot;:true,&quot;user_completed&quot;:false,&quot;started_at&quot;:&quot;2019-10-21T18:18:03Z&quot;,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:&quot;2019-10-21T18:21:43Z&quot;,&quot;last_updated&quot;:&quot;2019-10-21T18:21:43Z&quot;,&quot;exercises_completed&quot;:9,&quot;current_exercise_checkpoints_completed&quot;:0,&quot;type&quot;:&quot;lesson&quot;,&quot;exercises_total&quot;:9,&quot;progress_pct&quot;:100},&quot;545d9a750de8bbd7f02f99298c2c433a&quot;:{&quot;content_item_id&quot;:&quot;545d9a750de8bbd7f02f99298c2c433a&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:false,&quot;completed&quot;:false,&quot;user_completed&quot;:false,&quot;started_at&quot;:null,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:null,&quot;last_updated&quot;:null,&quot;type&quot;:&quot;quiz&quot;,&quot;total&quot;:null,&quot;correct&quot;:null,&quot;pct&quot;:null,&quot;highest_pct&quot;:null,&quot;passed&quot;:false,&quot;passed_any&quot;:false,&quot;taken&quot;:false,&quot;quiz_attempts&quot;:[]},&quot;13d0df75c063b9862224ee4d9a1ec2ff&quot;:{&quot;content_item_id&quot;:&quot;13d0df75c063b9862224ee4d9a1ec2ff&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:false,&quot;completed&quot;:false,&quot;user_completed&quot;:false,&quot;started_at&quot;:null,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:null,&quot;last_updated&quot;:null,&quot;checklist&quot;:{},&quot;status&quot;:0,&quot;type&quot;:&quot;project&quot;,&quot;tasks_complete&quot;:0,&quot;tasks_total&quot;:10,&quot;progress_pct&quot;:0},&quot;990f48aa764099b8070cb48bb18a62f3&quot;:{&quot;content_item_id&quot;:&quot;990f48aa764099b8070cb48bb18a62f3&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:true,&quot;completed&quot;:true,&quot;user_completed&quot;:false,&quot;started_at&quot;:&quot;2019-10-21T18:22:34Z&quot;,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:&quot;2019-10-21T18:25:31Z&quot;,&quot;last_updated&quot;:&quot;2019-10-21T18:25:31Z&quot;,&quot;exercises_completed&quot;:10,&quot;current_exercise_checkpoints_completed&quot;:0,&quot;type&quot;:&quot;lesson&quot;,&quot;exercises_total&quot;:10,&quot;progress_pct&quot;:100},&quot;2f447708f52f63cd441794ec5c913316&quot;:{&quot;content_item_id&quot;:&quot;2f447708f52f63cd441794ec5c913316&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:false,&quot;completed&quot;:false,&quot;user_completed&quot;:false,&quot;started_at&quot;:null,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:null,&quot;last_updated&quot;:null,&quot;type&quot;:&quot;quiz&quot;,&quot;total&quot;:null,&quot;correct&quot;:null,&quot;pct&quot;:null,&quot;highest_pct&quot;:null,&quot;passed&quot;:false,&quot;passed_any&quot;:false,&quot;taken&quot;:false,&quot;quiz_attempts&quot;:[]},&quot;3867ae895e2f66756260e54c02f51fb9&quot;:{&quot;content_item_id&quot;:&quot;3867ae895e2f66756260e54c02f51fb9&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:true,&quot;completed&quot;:true,&quot;user_completed&quot;:false,&quot;started_at&quot;:&quot;2019-10-21T18:25:36Z&quot;,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:&quot;2019-10-21T18:28:47Z&quot;,&quot;last_updated&quot;:&quot;2019-10-21T18:28:47Z&quot;,&quot;exercises_completed&quot;:9,&quot;current_exercise_checkpoints_completed&quot;:0,&quot;type&quot;:&quot;lesson&quot;,&quot;exercises_total&quot;:9,&quot;progress_pct&quot;:100},&quot;5971242949012a9b3b9b352350055f6d&quot;:{&quot;content_item_id&quot;:&quot;5971242949012a9b3b9b352350055f6d&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:false,&quot;completed&quot;:false,&quot;user_completed&quot;:false,&quot;started_at&quot;:null,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:null,&quot;last_updated&quot;:null,&quot;type&quot;:&quot;quiz&quot;,&quot;total&quot;:null,&quot;correct&quot;:null,&quot;pct&quot;:null,&quot;highest_pct&quot;:null,&quot;passed&quot;:false,&quot;passed_any&quot;:false,&quot;taken&quot;:false,&quot;quiz_attempts&quot;:[]},&quot;19d16bea89cdda565faae7b6b610ecca&quot;:{&quot;content_item_id&quot;:&quot;19d16bea89cdda565faae7b6b610ecca&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:false,&quot;completed&quot;:false,&quot;user_completed&quot;:false,&quot;started_at&quot;:null,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:null,&quot;last_updated&quot;:null,&quot;checklist&quot;:{},&quot;status&quot;:0,&quot;type&quot;:&quot;project&quot;,&quot;tasks_complete&quot;:0,&quot;tasks_total&quot;:9,&quot;progress_pct&quot;:0},&quot;148de682585d422a3488daa12a7e89c5&quot;:{&quot;content_item_id&quot;:&quot;148de682585d422a3488daa12a7e89c5&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:true,&quot;completed&quot;:true,&quot;user_completed&quot;:false,&quot;started_at&quot;:&quot;2019-10-21T18:28:51Z&quot;,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:&quot;2019-10-21T18:32:54Z&quot;,&quot;last_updated&quot;:&quot;2019-10-21T18:32:54Z&quot;,&quot;exercises_completed&quot;:6,&quot;current_exercise_checkpoints_completed&quot;:0,&quot;type&quot;:&quot;lesson&quot;,&quot;exercises_total&quot;:6,&quot;progress_pct&quot;:100},&quot;48bae1554d956e85183bb5b8e0ef1d26&quot;:{&quot;content_item_id&quot;:&quot;48bae1554d956e85183bb5b8e0ef1d26&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:true,&quot;completed&quot;:true,&quot;user_completed&quot;:false,&quot;started_at&quot;:&quot;2019-10-21T18:33:53Z&quot;,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:&quot;2019-10-21T18:35:15Z&quot;,&quot;last_updated&quot;:&quot;2019-10-21T18:35:15Z&quot;,&quot;exercises_completed&quot;:6,&quot;current_exercise_checkpoints_completed&quot;:0,&quot;type&quot;:&quot;lesson&quot;,&quot;exercises_total&quot;:6,&quot;progress_pct&quot;:100},&quot;2a1219867ad5d817d6c0d0ed9ca9ecea&quot;:{&quot;content_item_id&quot;:&quot;2a1219867ad5d817d6c0d0ed9ca9ecea&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:false,&quot;completed&quot;:false,&quot;user_completed&quot;:false,&quot;started_at&quot;:null,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:null,&quot;last_updated&quot;:null,&quot;type&quot;:&quot;quiz&quot;,&quot;total&quot;:null,&quot;correct&quot;:null,&quot;pct&quot;:null,&quot;highest_pct&quot;:null,&quot;passed&quot;:false,&quot;passed_any&quot;:false,&quot;taken&quot;:false,&quot;quiz_attempts&quot;:[]},&quot;b49025fd6c493fd9b88c227af526b4aa&quot;:{&quot;content_item_id&quot;:&quot;b49025fd6c493fd9b88c227af526b4aa&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:false,&quot;completed&quot;:false,&quot;user_completed&quot;:false,&quot;started_at&quot;:null,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:null,&quot;last_updated&quot;:null,&quot;checklist&quot;:{},&quot;status&quot;:0,&quot;type&quot;:&quot;project&quot;,&quot;tasks_complete&quot;:0,&quot;tasks_total&quot;:9,&quot;progress_pct&quot;:0},&quot;1fce98407cf05ef5f2d90898fa68046e&quot;:{&quot;content_item_id&quot;:&quot;1fce98407cf05ef5f2d90898fa68046e&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:true,&quot;completed&quot;:true,&quot;user_completed&quot;:false,&quot;started_at&quot;:&quot;2019-10-21T18:35:21Z&quot;,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:&quot;2019-10-23T18:16:23Z&quot;,&quot;last_updated&quot;:&quot;2019-10-23T18:16:23Z&quot;,&quot;exercises_completed&quot;:11,&quot;current_exercise_checkpoints_completed&quot;:0,&quot;type&quot;:&quot;lesson&quot;,&quot;exercises_total&quot;:11,&quot;progress_pct&quot;:100},&quot;1e5f8143860a884c92ab26569cf0f876&quot;:{&quot;content_item_id&quot;:&quot;1e5f8143860a884c92ab26569cf0f876&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:false,&quot;completed&quot;:false,&quot;user_completed&quot;:false,&quot;started_at&quot;:null,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:null,&quot;last_updated&quot;:null,&quot;type&quot;:&quot;quiz&quot;,&quot;total&quot;:null,&quot;correct&quot;:null,&quot;pct&quot;:null,&quot;highest_pct&quot;:null,&quot;passed&quot;:false,&quot;passed_any&quot;:false,&quot;taken&quot;:false,&quot;quiz_attempts&quot;:[]},&quot;f1daa55525421ea547d4947c96851352&quot;:{&quot;content_item_id&quot;:&quot;f1daa55525421ea547d4947c96851352&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:false,&quot;completed&quot;:false,&quot;user_completed&quot;:false,&quot;started_at&quot;:null,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:null,&quot;last_updated&quot;:null,&quot;checklist&quot;:{},&quot;status&quot;:0,&quot;type&quot;:&quot;project&quot;,&quot;tasks_complete&quot;:0,&quot;tasks_total&quot;:10,&quot;progress_pct&quot;:0},&quot;669c12dd5c0c75ca0c666e8f84854e8e&quot;:{&quot;content_item_id&quot;:&quot;669c12dd5c0c75ca0c666e8f84854e8e&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:false,&quot;completed&quot;:false,&quot;user_completed&quot;:false,&quot;started_at&quot;:null,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:null,&quot;last_updated&quot;:null,&quot;checklist&quot;:{},&quot;status&quot;:0,&quot;type&quot;:&quot;project&quot;,&quot;tasks_complete&quot;:0,&quot;tasks_total&quot;:17,&quot;progress_pct&quot;:0},&quot;fe5716e8dd27e674c8d9a96239ea1a98&quot;:{&quot;content_item_id&quot;:&quot;fe5716e8dd27e674c8d9a96239ea1a98&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:true,&quot;completed&quot;:true,&quot;user_completed&quot;:false,&quot;started_at&quot;:&quot;2019-10-23T18:16:41Z&quot;,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:&quot;2019-10-23T18:21:05Z&quot;,&quot;last_updated&quot;:&quot;2019-10-23T18:21:05Z&quot;,&quot;exercises_completed&quot;:8,&quot;current_exercise_checkpoints_completed&quot;:0,&quot;type&quot;:&quot;lesson&quot;,&quot;exercises_total&quot;:8,&quot;progress_pct&quot;:100},&quot;348e4b2bab86ba3302fa93de733ec69b&quot;:{&quot;content_item_id&quot;:&quot;348e4b2bab86ba3302fa93de733ec69b&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:false,&quot;completed&quot;:false,&quot;user_completed&quot;:false,&quot;started_at&quot;:null,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:null,&quot;last_updated&quot;:null,&quot;type&quot;:&quot;quiz&quot;,&quot;total&quot;:null,&quot;correct&quot;:null,&quot;pct&quot;:null,&quot;highest_pct&quot;:null,&quot;passed&quot;:false,&quot;passed_any&quot;:false,&quot;taken&quot;:false,&quot;quiz_attempts&quot;:[]},&quot;0c0311984638b0bfddbaae21d65599b1&quot;:{&quot;content_item_id&quot;:&quot;0c0311984638b0bfddbaae21d65599b1&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:false,&quot;completed&quot;:false,&quot;user_completed&quot;:false,&quot;started_at&quot;:null,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:null,&quot;last_updated&quot;:null,&quot;type&quot;:&quot;article&quot;},&quot;c824e22102928e5c08ffcfc97dc2210d&quot;:{&quot;content_item_id&quot;:&quot;c824e22102928e5c08ffcfc97dc2210d&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:false,&quot;completed&quot;:false,&quot;user_completed&quot;:false,&quot;started_at&quot;:null,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:null,&quot;last_updated&quot;:null,&quot;checklist&quot;:{},&quot;status&quot;:0,&quot;type&quot;:&quot;project&quot;,&quot;tasks_complete&quot;:0,&quot;tasks_total&quot;:28,&quot;progress_pct&quot;:0},&quot;069a6f9cdac04b2757f05a403a194d67&quot;:{&quot;content_item_id&quot;:&quot;069a6f9cdac04b2757f05a403a194d67&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:true,&quot;completed&quot;:true,&quot;user_completed&quot;:false,&quot;started_at&quot;:&quot;2019-10-23T18:21:10Z&quot;,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:&quot;2019-10-23T18:28:23Z&quot;,&quot;last_updated&quot;:&quot;2019-10-23T18:28:23Z&quot;,&quot;exercises_completed&quot;:7,&quot;current_exercise_checkpoints_completed&quot;:0,&quot;type&quot;:&quot;lesson&quot;,&quot;exercises_total&quot;:7,&quot;progress_pct&quot;:100},&quot;ed9564ad353bae2766988c14c0f9c2d2&quot;:{&quot;content_item_id&quot;:&quot;ed9564ad353bae2766988c14c0f9c2d2&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:false,&quot;completed&quot;:false,&quot;user_completed&quot;:false,&quot;started_at&quot;:null,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:null,&quot;last_updated&quot;:null,&quot;type&quot;:&quot;quiz&quot;,&quot;total&quot;:null,&quot;correct&quot;:null,&quot;pct&quot;:null,&quot;highest_pct&quot;:null,&quot;passed&quot;:false,&quot;passed_any&quot;:false,&quot;taken&quot;:false,&quot;quiz_attempts&quot;:[]},&quot;43792131f2f6cc180563e9bd0665e5b2&quot;:{&quot;content_item_id&quot;:&quot;43792131f2f6cc180563e9bd0665e5b2&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:false,&quot;completed&quot;:false,&quot;user_completed&quot;:false,&quot;started_at&quot;:null,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:null,&quot;last_updated&quot;:null,&quot;checklist&quot;:{},&quot;status&quot;:0,&quot;type&quot;:&quot;project&quot;,&quot;tasks_complete&quot;:0,&quot;tasks_total&quot;:13,&quot;progress_pct&quot;:0},&quot;ef492b7a9ed65f6c029dc34a5b79106a&quot;:{&quot;content_item_id&quot;:&quot;ef492b7a9ed65f6c029dc34a5b79106a&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:true,&quot;completed&quot;:true,&quot;user_completed&quot;:false,&quot;started_at&quot;:&quot;2019-10-23T18:28:43Z&quot;,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:&quot;2019-10-23T18:30:47Z&quot;,&quot;last_updated&quot;:&quot;2019-10-23T18:30:47Z&quot;,&quot;exercises_completed&quot;:4,&quot;current_exercise_checkpoints_completed&quot;:0,&quot;type&quot;:&quot;lesson&quot;,&quot;exercises_total&quot;:4,&quot;progress_pct&quot;:100},&quot;5b3899cfa1d4279909aaa812bfa232aa&quot;:{&quot;content_item_id&quot;:&quot;5b3899cfa1d4279909aaa812bfa232aa&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:false,&quot;completed&quot;:false,&quot;user_completed&quot;:false,&quot;started_at&quot;:null,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:null,&quot;last_updated&quot;:null,&quot;type&quot;:&quot;quiz&quot;,&quot;total&quot;:null,&quot;correct&quot;:null,&quot;pct&quot;:null,&quot;highest_pct&quot;:null,&quot;passed&quot;:false,&quot;passed_any&quot;:false,&quot;taken&quot;:false,&quot;quiz_attempts&quot;:[]},&quot;8c401ffb922fcadcdf6e732d87eb7f96&quot;:{&quot;content_item_id&quot;:&quot;8c401ffb922fcadcdf6e732d87eb7f96&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:false,&quot;completed&quot;:false,&quot;user_completed&quot;:false,&quot;started_at&quot;:null,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:null,&quot;last_updated&quot;:null,&quot;checklist&quot;:{},&quot;status&quot;:0,&quot;type&quot;:&quot;project&quot;,&quot;tasks_complete&quot;:0,&quot;tasks_total&quot;:10,&quot;progress_pct&quot;:0},&quot;3e00c5692e034629386740a2efd55f5c&quot;:{&quot;content_item_id&quot;:&quot;3e00c5692e034629386740a2efd55f5c&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:true,&quot;completed&quot;:true,&quot;user_completed&quot;:false,&quot;started_at&quot;:&quot;2019-10-23T18:30:58Z&quot;,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:&quot;2019-10-23T18:31:06Z&quot;,&quot;last_updated&quot;:&quot;2019-10-23T18:31:06Z&quot;,&quot;exercises_completed&quot;:7,&quot;current_exercise_checkpoints_completed&quot;:0,&quot;type&quot;:&quot;lesson&quot;,&quot;exercises_total&quot;:7,&quot;progress_pct&quot;:100},&quot;71f5e9332270db42c0ae91a70a4ec611&quot;:{&quot;content_item_id&quot;:&quot;71f5e9332270db42c0ae91a70a4ec611&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:true,&quot;completed&quot;:true,&quot;user_completed&quot;:false,&quot;started_at&quot;:&quot;2019-10-23T18:31:10Z&quot;,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:&quot;2019-10-23T18:48:28Z&quot;,&quot;last_updated&quot;:&quot;2019-10-23T18:48:28Z&quot;,&quot;exercises_completed&quot;:13,&quot;current_exercise_checkpoints_completed&quot;:0,&quot;type&quot;:&quot;lesson&quot;,&quot;exercises_total&quot;:13,&quot;progress_pct&quot;:100},&quot;a9b97b3c2c3346921f09b30266338db3&quot;:{&quot;content_item_id&quot;:&quot;a9b97b3c2c3346921f09b30266338db3&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:true,&quot;completed&quot;:false,&quot;user_completed&quot;:false,&quot;started_at&quot;:&quot;2019-10-23T18:48:36Z&quot;,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:null,&quot;last_updated&quot;:&quot;2019-10-23T18:48:36Z&quot;,&quot;exercises_completed&quot;:1,&quot;current_exercise_checkpoints_completed&quot;:0,&quot;type&quot;:&quot;lesson&quot;,&quot;exercises_total&quot;:12,&quot;progress_pct&quot;:8},&quot;551aaeb0c663d2e05bf30ecf3d51dc03&quot;:{&quot;content_item_id&quot;:&quot;551aaeb0c663d2e05bf30ecf3d51dc03&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:false,&quot;completed&quot;:false,&quot;user_completed&quot;:false,&quot;started_at&quot;:null,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:null,&quot;last_updated&quot;:null,&quot;type&quot;:&quot;quiz&quot;,&quot;total&quot;:null,&quot;correct&quot;:null,&quot;pct&quot;:null,&quot;highest_pct&quot;:null,&quot;passed&quot;:false,&quot;passed_any&quot;:false,&quot;taken&quot;:false,&quot;quiz_attempts&quot;:[]},&quot;032e20b63cfbabfbaee7c08b6ca8de89&quot;:{&quot;content_item_id&quot;:&quot;032e20b63cfbabfbaee7c08b6ca8de89&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:false,&quot;completed&quot;:false,&quot;user_completed&quot;:false,&quot;started_at&quot;:null,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:null,&quot;last_updated&quot;:null,&quot;checklist&quot;:{},&quot;status&quot;:0,&quot;type&quot;:&quot;project&quot;,&quot;tasks_complete&quot;:0,&quot;tasks_total&quot;:15,&quot;progress_pct&quot;:0},&quot;1b942e5ebfcb96d1ec54d8355d2db877&quot;:{&quot;content_item_id&quot;:&quot;1b942e5ebfcb96d1ec54d8355d2db877&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:false,&quot;completed&quot;:false,&quot;user_completed&quot;:false,&quot;started_at&quot;:null,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:null,&quot;last_updated&quot;:null,&quot;type&quot;:&quot;video&quot;},&quot;ce2d0c75531a5d245a709a6f4ea64996&quot;:{&quot;content_item_id&quot;:&quot;ce2d0c75531a5d245a709a6f4ea64996&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:false,&quot;completed&quot;:false,&quot;user_completed&quot;:false,&quot;started_at&quot;:null,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:null,&quot;last_updated&quot;:null,&quot;exercises_completed&quot;:0,&quot;current_exercise_checkpoints_completed&quot;:0,&quot;type&quot;:&quot;lesson&quot;,&quot;exercises_total&quot;:12,&quot;progress_pct&quot;:0},&quot;1c63c9e88a6fbd14b82cccda3dc17133&quot;:{&quot;content_item_id&quot;:&quot;1c63c9e88a6fbd14b82cccda3dc17133&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:false,&quot;completed&quot;:false,&quot;user_completed&quot;:false,&quot;started_at&quot;:null,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:null,&quot;last_updated&quot;:null,&quot;type&quot;:&quot;quiz&quot;,&quot;total&quot;:null,&quot;correct&quot;:null,&quot;pct&quot;:null,&quot;highest_pct&quot;:null,&quot;passed&quot;:false,&quot;passed_any&quot;:false,&quot;taken&quot;:false,&quot;quiz_attempts&quot;:[]},&quot;90fab2027d9a69b0a36823c375f02794&quot;:{&quot;content_item_id&quot;:&quot;90fab2027d9a69b0a36823c375f02794&quot;,&quot;user_id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;started&quot;:false,&quot;completed&quot;:false,&quot;user_completed&quot;:false,&quot;started_at&quot;:null,&quot;user_completed_at&quot;:null,&quot;completed_at&quot;:null,&quot;last_updated&quot;:null,&quot;checklist&quot;:{},&quot;status&quot;:0,&quot;type&quot;:&quot;project&quot;,&quot;tasks_complete&quot;:0,&quot;tasks_total&quot;:17,&quot;progress_pct&quot;:0}}},&quot;contentItems&quot;:{&quot;byUuid&quot;:{&quot;7a17afe4265db184a06e82c6d81ae94f&quot;:{&quot;uuid&quot;:&quot;7a17afe4265db184a06e82c6d81ae94f&quot;,&quot;type&quot;:&quot;lesson&quot;,&quot;slug&quot;:&quot;intro-php&quot;,&quot;meta&quot;:{},&quot;title&quot;:&quot;Introduction to PHP&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:55,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;Learn why PHP was created and what it is used for in today&#x27;s web development environment. See samples of PHP in action!&quot;,&quot;published_exercise_ids&quot;:[&quot;4b62d4ec6ef46e4efe4b897218987a5d&quot;,&quot;ff0c20f1ad6ab952100f0393a12f2b97&quot;,&quot;165ae76536982ebe69e1325a3a9f06d7&quot;,&quot;34cbaace27cdaa6895e98955f3401fc8&quot;,&quot;1b3b841dcdf8421621d49f99746d3230&quot;,&quot;e90c8f7c983a7fdd0f3498b4ee2c6316&quot;]},&quot;73b7447c24d4ebc185caa57a6241d329&quot;:{&quot;uuid&quot;:&quot;73b7447c24d4ebc185caa57a6241d329&quot;,&quot;type&quot;:&quot;quiz&quot;,&quot;slug&quot;:&quot;intro-php-quiz&quot;,&quot;meta&quot;:{&quot;is_free&quot;:null},&quot;title&quot;:&quot;Introduction to PHP&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:10,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;Test your understanding of the Introduction to PHP lesson.&quot;,&quot;published_exercise_ids&quot;:[]},&quot;773286567764b8b664ee801139a37991&quot;:{&quot;uuid&quot;:&quot;773286567764b8b664ee801139a37991&quot;,&quot;type&quot;:&quot;lesson&quot;,&quot;slug&quot;:&quot;php-strings-and-variables&quot;,&quot;meta&quot;:{},&quot;title&quot;:&quot;PHP Strings and Variables&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:60,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;Learn about PHP Strings and Variables&quot;,&quot;published_exercise_ids&quot;:[&quot;941a4a37f5c12bf9b05730418da4e48a&quot;,&quot;5f66fbd1e0d380fc797c714a6b5889e3&quot;,&quot;cb98cfef781de5757dca506daa15dc77&quot;,&quot;c787c5a3bbffbbac623351242da56f0c&quot;,&quot;323b91991566b000414157e86b17703d&quot;,&quot;e9c790370b9fd4cc08831b4a0765bddd&quot;,&quot;d7f989cc3decde6db44f1645cc7851ba&quot;,&quot;44ef420874452095b9252f5d786b9bab&quot;,&quot;e68232568584d8d3b84673054ca3d304&quot;,&quot;5c899c1f6fc53f60e000a8ac4229537f&quot;,&quot;0c8350b87a97d32c75dd0f930d4d8040&quot;]},&quot;e0164e0a70af0ccefbed6b512edabf1d&quot;:{&quot;uuid&quot;:&quot;e0164e0a70af0ccefbed6b512edabf1d&quot;,&quot;type&quot;:&quot;quiz&quot;,&quot;slug&quot;:&quot;php-strings-and-variables-quiz&quot;,&quot;meta&quot;:{&quot;is_free&quot;:null},&quot;title&quot;:&quot;PHP Strings and Variables Quiz&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:25,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;Test your knowledge of PHP strings and variables. &quot;,&quot;published_exercise_ids&quot;:[]},&quot;f064db17513057bd4d30753f4fb87f66&quot;:{&quot;uuid&quot;:&quot;f064db17513057bd4d30753f4fb87f66&quot;,&quot;type&quot;:&quot;lesson&quot;,&quot;slug&quot;:&quot;php-numbers&quot;,&quot;meta&quot;:{},&quot;title&quot;:&quot;PHP Numbers&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:45,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;Learn about the PHP number data types and arithmetic operators.&quot;,&quot;published_exercise_ids&quot;:[&quot;838c3281418e970abb7accce336155f8&quot;,&quot;45c96216d40ce2865f63dd0487410e2d&quot;,&quot;bfce0d6117049ad1b13c1ba174bc48b2&quot;,&quot;889257bf76553444a58395a06977bf8e&quot;,&quot;cb161b1880bdb511e2f4c086cad24638&quot;,&quot;072adb6834933b934080c871cf859993&quot;,&quot;f7245bf587552452910b53cff0496966&quot;,&quot;c507fda55dba7a4ee1298f0bc64238c2&quot;,&quot;3b2470003aee2e3e0df3fa5fd23cb4ef&quot;]},&quot;7e8fd8262c911c54c24ab1fbd79ab566&quot;:{&quot;uuid&quot;:&quot;7e8fd8262c911c54c24ab1fbd79ab566&quot;,&quot;type&quot;:&quot;quiz&quot;,&quot;slug&quot;:&quot;php-numbers-quiz&quot;,&quot;meta&quot;:{&quot;is_free&quot;:null},&quot;title&quot;:&quot;PHP Numbers Quiz&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:25,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;Test your knowledge of PHP numbers and number variables!&quot;,&quot;published_exercise_ids&quot;:[]},&quot;15d38ded8370f7968e577dad1f09f17a&quot;:{&quot;uuid&quot;:&quot;15d38ded8370f7968e577dad1f09f17a&quot;,&quot;type&quot;:&quot;project&quot;,&quot;slug&quot;:&quot;world-traveler&quot;,&quot;meta&quot;:{&quot;is_free&quot;:null,&quot;task_count&quot;:6},&quot;title&quot;:&quot;World Traveler&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:45,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;Help a weary traveler convert their various international currencies into USD. &quot;,&quot;published_exercise_ids&quot;:[]},&quot;96a2bece294780856096b0aca4bfe36a&quot;:{&quot;uuid&quot;:&quot;96a2bece294780856096b0aca4bfe36a&quot;,&quot;type&quot;:&quot;lesson&quot;,&quot;slug&quot;:&quot;introduction-to-php-functions&quot;,&quot;meta&quot;:{},&quot;title&quot;:&quot;Introduction to PHP Functions&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:90,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;Learn how to create functions, reusable blocks of code, in PHP. &quot;,&quot;published_exercise_ids&quot;:[&quot;7bd030c6a455d9eab09b49bb9973e11c&quot;,&quot;7481b1ffc9df3f28260cc423f7905403&quot;,&quot;e0b01d580099e7eae05340fc9481b61d&quot;,&quot;365aa1979e0a416e8bd8b5311404cc9a&quot;,&quot;6c2803d45b56d7a4b66965676b29735c&quot;,&quot;99e4bb76012f51eaa4a374dfb8184dfa&quot;,&quot;76c30f8223f8b8151804d1d6bab38587&quot;,&quot;55e5f159b809f06caa3de3a925cce065&quot;,&quot;7f8ecd31cdf736a385b7a9cceaede41d&quot;,&quot;f918e58c99f9ddd74539ffeb33f98070&quot;,&quot;017ae2f40c2dcaba34daf87590a5184e&quot;,&quot;b012f8c30d212dbd135de90433fa2b30&quot;]},&quot;3cd5e9cf3c808618026ff2a3df7fc7a9&quot;:{&quot;uuid&quot;:&quot;3cd5e9cf3c808618026ff2a3df7fc7a9&quot;,&quot;type&quot;:&quot;quiz&quot;,&quot;slug&quot;:&quot;introduction-to-php-functions-quiz&quot;,&quot;meta&quot;:{&quot;is_free&quot;:null},&quot;title&quot;:&quot;Introduction to PHP Functions&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:15,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;Check your knowledge of functions in PHP.&quot;,&quot;published_exercise_ids&quot;:[]},&quot;562680d624670488bf0b995ec689a00c&quot;:{&quot;uuid&quot;:&quot;562680d624670488bf0b995ec689a00c&quot;,&quot;type&quot;:&quot;project&quot;,&quot;slug&quot;:&quot;mad-lib-functions-php&quot;,&quot;meta&quot;:{&quot;is_free&quot;:null,&quot;task_count&quot;:7},&quot;title&quot;:&quot;Mad Lib Functions&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:20,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:&quot;https://s3.amazonaws.com/codecademy-content/projects/project_thumbnails/php/img_php_madLibs.svg&quot;,&quot;description&quot;:&quot;It\u2019s time for you to start building your own functions in PHP. Creating reusable blocks of code is an extremely useful skill in any language. Get started practicing in PHP with this mad lib project! \n\n&quot;,&quot;published_exercise_ids&quot;:[]},&quot;8bcadac2b1ee2778367b3489153f680f&quot;:{&quot;uuid&quot;:&quot;8bcadac2b1ee2778367b3489153f680f&quot;,&quot;type&quot;:&quot;lesson&quot;,&quot;slug&quot;:&quot;intro-to-built-in-php-functions&quot;,&quot;meta&quot;:{},&quot;title&quot;:&quot;Intro to Built-in PHP Functions&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:90,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;Learn how to use, find, and understand functions that come built into the PHP &quot;,&quot;published_exercise_ids&quot;:[&quot;0cfc3a5e3931741d1a56922fef1cab9f&quot;,&quot;b322968f28c750d8b1b90b1e5726e709&quot;,&quot;ad6b29229c379217b574f83dc476925e&quot;,&quot;cd60477fd7534fb9952b0b4eaf9be245&quot;,&quot;509cf38463fc383e0029250e45d8d282&quot;,&quot;63153bd509f3b24a1d68ecf576de04fb&quot;,&quot;d60bec9b1472028b8b16f02651805e4c&quot;,&quot;c3b451f86d4284989b7ad499611c1590&quot;,&quot;ab0b785cf181de2bf8b703d3c153ee8e&quot;]},&quot;545d9a750de8bbd7f02f99298c2c433a&quot;:{&quot;uuid&quot;:&quot;545d9a750de8bbd7f02f99298c2c433a&quot;,&quot;type&quot;:&quot;quiz&quot;,&quot;slug&quot;:&quot;intro-to-built-in-php-functions-quiz&quot;,&quot;meta&quot;:{&quot;is_free&quot;:null},&quot;title&quot;:&quot;Intro to Built-in PHP Functions&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:15,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;Check your understanding of how to use some of PHP&#x27;s built-in functions.&quot;,&quot;published_exercise_ids&quot;:[]},&quot;13d0df75c063b9862224ee4d9a1ec2ff&quot;:{&quot;uuid&quot;:&quot;13d0df75c063b9862224ee4d9a1ec2ff&quot;,&quot;type&quot;:&quot;project&quot;,&quot;slug&quot;:&quot;the-hitchhikers-guide-to-php-math-functions&quot;,&quot;meta&quot;:{&quot;is_free&quot;:null,&quot;task_count&quot;:10},&quot;title&quot;:&quot;The Hitchhiker&#x27;s Guide to PHP Math Functions&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:30,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:&quot;https://s3.amazonaws.com/codecademy-content/projects/project_thumbnails/php/h2g2.jpg&quot;,&quot;description&quot;:&quot;Explore the universe of PHP documentation and find the PHP functions you need for your journey. Applying them correctly will yield the answer to life, the universe, and everything.\n\n* Apologies to [Douglas Adams](https://en.wikipedia.org/wiki/The_Hitchhiker%27s_Guide_to_the_Galaxy)&quot;,&quot;published_exercise_ids&quot;:[]},&quot;990f48aa764099b8070cb48bb18a62f3&quot;:{&quot;uuid&quot;:&quot;990f48aa764099b8070cb48bb18a62f3&quot;,&quot;type&quot;:&quot;lesson&quot;,&quot;slug&quot;:&quot;ordered-arrays&quot;,&quot;meta&quot;:{},&quot;title&quot;:&quot;Ordered Arrays&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:60,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;Learn about storing data in ordered lists with the PHP ordered arrays data structure. &quot;,&quot;published_exercise_ids&quot;:[&quot;214e04bfa05a801805642191df7e01b3&quot;,&quot;cd4160113a84f6d5a354c8a599a9da54&quot;,&quot;4b205d0a2d8c4ed20deac7db40ce6944&quot;,&quot;90718bb72d0694c3ee5b6dbd2d8b44e3&quot;,&quot;ede5c887e9715186ba367b520c2bb3ed&quot;,&quot;c28f31ae9ae3ded5e255ec9289370ba8&quot;,&quot;ab96ddde500a217e8061049df0b79e6c&quot;,&quot;9faa9a7e5c0ed18720ed996eec143012&quot;,&quot;86d87732f23cc0685fdaef6517706bc7&quot;,&quot;78bc3c2c5a298663a976205ccc0b785f&quot;]},&quot;2f447708f52f63cd441794ec5c913316&quot;:{&quot;uuid&quot;:&quot;2f447708f52f63cd441794ec5c913316&quot;,&quot;type&quot;:&quot;quiz&quot;,&quot;slug&quot;:&quot;ordered-arrays-quiz&quot;,&quot;meta&quot;:{&quot;is_free&quot;:null},&quot;title&quot;:&quot;Ordered Arrays Quiz&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:40,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;Practice your knowledge about PHP Ordered Arrays with a quiz. &quot;,&quot;published_exercise_ids&quot;:[]},&quot;3867ae895e2f66756260e54c02f51fb9&quot;:{&quot;uuid&quot;:&quot;3867ae895e2f66756260e54c02f51fb9&quot;,&quot;type&quot;:&quot;lesson&quot;,&quot;slug&quot;:&quot;associative-arrays&quot;,&quot;meta&quot;:{},&quot;title&quot;:&quot;Associative Arrays&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:60,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;Learn how to create and use PHP associative arrays. &quot;,&quot;published_exercise_ids&quot;:[&quot;fd715010d7fc2f275c4aafdb8071f418&quot;,&quot;c78b0c024cdf39026b797190022031ce&quot;,&quot;3820010d71478ea1550b05bb30a3fad2&quot;,&quot;e4f3a8160f632315618c5caa2613de75&quot;,&quot;7ebbdfa435b1e72a81bb34177e37e6db&quot;,&quot;e4e74b5797c8ae5deba2cbdfa1642989&quot;,&quot;206f8340ece981492fcfda7f01ed274f&quot;,&quot;226f9db5198dcabc9a7dac0942f75e9a&quot;,&quot;dddf5c26e3aa00841658c1e861065044&quot;]},&quot;5971242949012a9b3b9b352350055f6d&quot;:{&quot;uuid&quot;:&quot;5971242949012a9b3b9b352350055f6d&quot;,&quot;type&quot;:&quot;quiz&quot;,&quot;slug&quot;:&quot;associative-array-quiz&quot;,&quot;meta&quot;:{&quot;is_free&quot;:null},&quot;title&quot;:&quot;Associative Array Quiz&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:45,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;Test your knowledge of PHP associative arrays with this quiz!&quot;,&quot;published_exercise_ids&quot;:[]},&quot;19d16bea89cdda565faae7b6b610ecca&quot;:{&quot;uuid&quot;:&quot;19d16bea89cdda565faae7b6b610ecca&quot;,&quot;type&quot;:&quot;project&quot;,&quot;slug&quot;:&quot;bobs-budget&quot;,&quot;meta&quot;:{&quot;is_free&quot;:null,&quot;task_count&quot;:9},&quot;title&quot;:&quot;Bob&#x27;s Budget&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:45,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:&quot;https://s3.amazonaws.com/codecademy-content/projects/project_thumbnails/php/budget.jpg&quot;,&quot;description&quot;:&quot;Use everything you&#x27;ve learned about PHP strings, numbers, arrays, and variables to help a friend figure out his annual budget. &quot;,&quot;published_exercise_ids&quot;:[]},&quot;148de682585d422a3488daa12a7e89c5&quot;:{&quot;uuid&quot;:&quot;148de682585d422a3488daa12a7e89c5&quot;,&quot;type&quot;:&quot;lesson&quot;,&quot;slug&quot;:&quot;php-and-html&quot;,&quot;meta&quot;:{},&quot;title&quot;:&quot;PHP and HTML&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:25,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;Learn how you can use PHP to interact with HTML.&quot;,&quot;published_exercise_ids&quot;:[&quot;3d02ad54640a14cba585fc9eb12e5e32&quot;,&quot;9689906b967a0b6ef6ff2774dd9e589c&quot;,&quot;660ded8217c99fcc13f6f886244c8fdf&quot;,&quot;784de0f9576fc38d6f07147a9bc36ddf&quot;,&quot;c297d9f41a0cccdeaa27e9c6f560a459&quot;,&quot;ea61c7d69857eb194b036cd39d025ef2&quot;]},&quot;48bae1554d956e85183bb5b8e0ef1d26&quot;:{&quot;uuid&quot;:&quot;48bae1554d956e85183bb5b8e0ef1d26&quot;,&quot;type&quot;:&quot;lesson&quot;,&quot;slug&quot;:&quot;html-form-handling-in-php&quot;,&quot;meta&quot;:{},&quot;title&quot;:&quot;HTML Form Handling in PHP&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:30,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;Learn how to handle HTML forms using PHP.&quot;,&quot;published_exercise_ids&quot;:[&quot;1d94b2cbaf8a1756b4fdce2093051d49&quot;,&quot;01b5799e98f2f77aceb50665cfbea47d&quot;,&quot;235cd149cf64eebe3232628cbfaf448f&quot;,&quot;ec81319c48dd48a783c1ef55a617619d&quot;,&quot;c40457f988f85d2921eed05d33f70b14&quot;,&quot;a8e83011cd20c8e38b34b308a76bc42b&quot;]},&quot;2a1219867ad5d817d6c0d0ed9ca9ecea&quot;:{&quot;uuid&quot;:&quot;2a1219867ad5d817d6c0d0ed9ca9ecea&quot;,&quot;type&quot;:&quot;quiz&quot;,&quot;slug&quot;:&quot;html-form-handling-in-php-quiz&quot;,&quot;meta&quot;:{&quot;is_free&quot;:null},&quot;title&quot;:&quot;HTML Form Handling in PHP&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:15,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;Check your knowledge of implementing HTML form handling in PHP.&quot;,&quot;published_exercise_ids&quot;:[]},&quot;b49025fd6c493fd9b88c227af526b4aa&quot;:{&quot;uuid&quot;:&quot;b49025fd6c493fd9b88c227af526b4aa&quot;,&quot;type&quot;:&quot;project&quot;,&quot;slug&quot;:&quot;html-php-calculator&quot;,&quot;meta&quot;:{&quot;is_free&quot;:null,&quot;task_count&quot;:9},&quot;title&quot;:&quot;HTML - PHP Calculator&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:30,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:&quot;https://s3.amazonaws.com/codecademy-content/projects/project_thumbnails/php/abacus.jpg&quot;,&quot;description&quot;:&quot;Use PHP and HTML to build a calculator. You&#x27;ll create a front-end in HTML with forms and handle the math on the back-end with PHP.&quot;,&quot;published_exercise_ids&quot;:[]},&quot;1fce98407cf05ef5f2d90898fa68046e&quot;:{&quot;uuid&quot;:&quot;1fce98407cf05ef5f2d90898fa68046e&quot;,&quot;type&quot;:&quot;lesson&quot;,&quot;slug&quot;:&quot;booleans-and-comparison-operators&quot;,&quot;meta&quot;:{},&quot;title&quot;:&quot;Booleans and Comparison Operators&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:75,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;Learn how to write complex programs which can make decisions using boolean values, conditional statements, and comparison operators. &quot;,&quot;published_exercise_ids&quot;:[&quot;d9e16ba2e2ffe6dd33445b2aef489f9b&quot;,&quot;70a74e261490cf170e33534855d29e7e&quot;,&quot;ca6739405c7342d68967319670dc97bf&quot;,&quot;7a7cd1abb4c48e36019f8fc3b9c7606e&quot;,&quot;b40f362d0b73d631beafecd4dca126ee&quot;,&quot;98ab5f67ce09d3fe923f9e1fdf58c4c0&quot;,&quot;3cf58daf52699b4c7e41eee875a6052e&quot;,&quot;8b2c73f67e4a01998bd33407f2164764&quot;,&quot;2da188acd840d2b036de9215fb15f277&quot;,&quot;3ffe9508a3c7a1f54fb98efe79392065&quot;,&quot;1f1f625b0ebeef5068784227e8d288bc&quot;]},&quot;1e5f8143860a884c92ab26569cf0f876&quot;:{&quot;uuid&quot;:&quot;1e5f8143860a884c92ab26569cf0f876&quot;,&quot;type&quot;:&quot;quiz&quot;,&quot;slug&quot;:&quot;php-conditionals&quot;,&quot;meta&quot;:{&quot;is_free&quot;:null},&quot;title&quot;:&quot;PHP Conditionals&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:13,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;Practice what you&#x27;ve learned so far about creating conditionals in PHP.&quot;,&quot;published_exercise_ids&quot;:[]},&quot;f1daa55525421ea547d4947c96851352&quot;:{&quot;uuid&quot;:&quot;f1daa55525421ea547d4947c96851352&quot;,&quot;type&quot;:&quot;project&quot;,&quot;slug&quot;:&quot;magic-8-ball&quot;,&quot;meta&quot;:{&quot;is_free&quot;:null,&quot;task_count&quot;:10},&quot;title&quot;:&quot;Magic 8 Ball&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:45,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:&quot;https://s3.amazonaws.com/codecademy-content/projects/project_thumbnails/introduction-to-javascript/img_JS_magic8Ball.jpg&quot;,&quot;description&quot;:&quot;In this lesson, you&#x27;ve learned about conditionals\u2014a fundamental yet powerful part of programming. Conditionals are so powerful, in fact, that they can be used to predict the future. In this project, you&#x27;ll be creating a function that can answer any \&quot;yes\&quot; or \&quot;no\&quot; question. &quot;,&quot;published_exercise_ids&quot;:[]},&quot;669c12dd5c0c75ca0c666e8f84854e8e&quot;:{&quot;uuid&quot;:&quot;669c12dd5c0c75ca0c666e8f84854e8e&quot;,&quot;type&quot;:&quot;project&quot;,&quot;slug&quot;:&quot;php-number-guessing&quot;,&quot;meta&quot;:{&quot;is_free&quot;:null,&quot;task_count&quot;:17},&quot;title&quot;:&quot;PHP Number Guessing&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:60,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;In this project, you&#x27;ll create a number guessing game. Your program will generate a random number between 1 and 10. You&#x27;ll run the game 10 times and tell the user some information about their guessing abilities. &quot;,&quot;published_exercise_ids&quot;:[]},&quot;fe5716e8dd27e674c8d9a96239ea1a98&quot;:{&quot;uuid&quot;:&quot;fe5716e8dd27e674c8d9a96239ea1a98&quot;,&quot;type&quot;:&quot;lesson&quot;,&quot;slug&quot;:&quot;logical-operators-and-compound-conditions&quot;,&quot;meta&quot;:{},&quot;title&quot;:&quot; Logical Operators and Compound Conditions&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:75,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;In this lesson, you&#x27;ll deepen your understanding of conditionals with logical operators and compound conditions. &quot;,&quot;published_exercise_ids&quot;:[&quot;50882bc9cf9e4357edc2a8eefd4a263b&quot;,&quot;f97e9b528bcfa4227c4deb5faed142f1&quot;,&quot;9838f99ff0c0472413ade1d963ca5bbc&quot;,&quot;810d31d98f696e8d6dd8eb185d47c589&quot;,&quot;9caee4abd9e7ccfb442ba615d8f6182e&quot;,&quot;39f2d78332bdcfa56ddc2f389973a42e&quot;,&quot;d225866a14a2e565fe67a7d1f0b3fa5e&quot;,&quot;e01f2887f3d3a8ebef3fa9264a49e87d&quot;]},&quot;348e4b2bab86ba3302fa93de733ec69b&quot;:{&quot;uuid&quot;:&quot;348e4b2bab86ba3302fa93de733ec69b&quot;,&quot;type&quot;:&quot;quiz&quot;,&quot;slug&quot;:&quot;compound-conditions&quot;,&quot;meta&quot;:{&quot;is_free&quot;:null},&quot;title&quot;:&quot;Compound Conditions&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:30,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;Test your knowledge of PHP logical operators and more in this quiz!&quot;,&quot;published_exercise_ids&quot;:[]},&quot;0c0311984638b0bfddbaae21d65599b1&quot;:{&quot;uuid&quot;:&quot;0c0311984638b0bfddbaae21d65599b1&quot;,&quot;type&quot;:&quot;article&quot;,&quot;slug&quot;:&quot;common-mistakes-with-conditionals-php&quot;,&quot;meta&quot;:{},&quot;title&quot;:&quot;Common Mistakes with Conditionals&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:30,&quot;content&quot;:{&quot;body&quot;:&quot;In this article, we&#x27;re going to walk through some common mistakes programmers make when they start working with conditionals. Knowing about common mistakes doesn&#x27;t necessarily stop us from making them, but it can help us catch them more quickly! \n\n## Mistake 1: Not treating expressions as distinct:\nLet&#x27;s say we want to print something if our variable `$num` is equal to `1` or `2` or `3`. Why doesn&#x27;t the following code work?\n```php\n$number = 5;\nif ($number === 1 || 2 || 3)\n{\n echo \&quot;Your number is 1, 2, or 3\&quot;;\n} else {\n echo \&quot;Your number is NOT 1, 2, or 3\&quot;;\n}\n```\nThe code above prints `\&quot;Your number is 1, 2, or 3\&quot;` even though our number is `5`... In a compound condition, each expression is treated separately. Since `2` and `3` are _truthy_ values, the condition above is the equivalent of `FALSE || TRUE || TRUE` which evaluates to `TRUE`. Here&#x27;s one way we could rewrite the broken code:\n\n```php\n$number = 5;\nif ($number === 1 || $number === 2 || $number === 3)\n{\n echo \&quot;Your number is 1, 2, or 3\&quot;;\n} else {\n echo \&quot;Your number is NOT 1, 2, or 3\&quot;;\n}\n```\nThe computer will treat each expression as separate from the last, so we need to account for that in our code. \n\n## Mistake 2: Omitting Parentheses:\nWhen discussing logical operators, we mentioned their *operator precedence*\u2014the order in which the computer will evaluate expressions with multiple operators. The precedence of arithmetic operators may feel a little more comfortable, but remembering that [all operators have a precedence](https://www.php.net/manual/en/language.operators.precedence.php) in relation to one another can take getting used to...\n```php\nTRUE || FALSE \u0026\u0026 FALSE; // Evaluates to: TRUE\n\nTRUE || FALSE and FALSE; // Evaluates to: FALSE\n\n$my_bool = TRUE and FALSE; // $my_bool is TRUE\n``` \n\nThis might not crop up that often, but recall that we can avoid any risk by using parentheses to force expressions to evaluate in the order we intend:\n```php\n(TRUE || FALSE) \u0026\u0026 FALSE; // Evaluates to: FALSE\n(TRUE || FALSE) and FALSE; // Evaluates to: FALSE\n\n$my_bool = (TRUE and FALSE); // $my_bool is FALSE\n```\nLet&#x27;s look at another example:\n```php\n$withdrawal = 120; \n$balance = 110;\nif (!$balance \u003C $withdrawal){\n echo \&quot;Success\&quot;;\n $balance -= $withdrawal;\n} else {\n echo \&quot;Insufficient Funds\&quot;;\n} \n```\nEven though the `$balance` is less than the `$withdrawal` amount, the code above makes the completes the withdrawal\u2026 why? Without parentheses, the computer first evaluate `!$balance` and then checks if that value is less than `$withdrawal`. The expression `!$balance` is converted to the falsy numeric value of `0`, therefore the expression `!$balance \u003C $withdrawal` returns `TRUE`. \n\nWhen using the `!` operator to negate a logical expression, we should wrap the expression in parentheses.\n\n```php\n$withdrawal = 120; \n$balance = 110;\nif (!($balance \u003C $withdrawal)){\n echo \&quot;Success\&quot;;\n $balance -= $withdrawal;\n} else {\n echo \&quot;Insufficient Funds\&quot;;\n} \n```\nAnd check out the following broken code:\n```php\nif ($age \u003C 0) || ($age \u003E 120) {\n echo \&quot;That&#x27;s an invalid age!\&quot;;\n}\n```\nThe code above will cause an error. Did you catch the mistake? We&#x27;ve wrapped our separate conditions in parentheses, but we also need to make sure the entire condition is inside parentheses! We should rewrite that code as: \n```php\nif ( ($age \u003C 0) || ($age \u003E 120) ) {\n echo \&quot;That&#x27;s an invalid age!\&quot;;\n}\n```\n\n## Mistake 3: Not thinking like a computer:\nOne of the most difficult things about learning to code, is learning to think the way a computer \&quot;thinks\&quot;. It&#x27;s important to look at expressions like a computer would. Consider the following code to prompt a user if they enter an invalid response:\n```php\nif ($response !== \&quot;yes\&quot; || $response !== \&quot;no\&quot;){\n echo \&quot;You must type either yes or no\&quot;;\n}\n```\nIn the code above, we intended to catch situations where the user either didn&#x27;t enter `\&quot;yes\&quot;` or `\&quot;no\&quot;`. We wrote the code the way we might say it, \&quot;If the response isn&#x27;t yes or no...\&quot; But the expression `$response !== \&quot;yes\&quot; || $response !== \&quot;no\&quot;` will always evaluate to `TRUE` even when the `$response` was actually `\&quot;yes\&quot;` or `\&quot;no\&quot;`! If the `$response` was `\&quot;no\&quot;`, for example, the expression will evaluate as `TRUE || FALSE` which evaluates to `TRUE`. \n\nWe can fix this broken code by replacing the `||` operator with the `\u0026\u0026` operator:\n```php\nif ($response !== \&quot;yes\&quot; \u0026\u0026 $response !== \&quot;no\&quot;){\n echo \&quot;You must type either yes or no\&quot;;\n}\n```\nWhen our code isn&#x27;t working the way we expect, we should walk through it like a computer\u2014we should \&quot;be\&quot; the computer and try to read each line without our natural human bias. &quot;,&quot;description&quot;:&quot;In this article will go over some mistakes that are easy to make when writing more complex programs with conditionals. &quot;,&quot;title&quot;:&quot;Common Mistakes with Conditionals&quot;,&quot;item_reference&quot;:[],&quot;reference_slugs&quot;:{}},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;In this article will go over some mistakes that are easy to make when writing more complex programs with conditionals. &quot;,&quot;published_exercise_ids&quot;:[]},&quot;c824e22102928e5c08ffcfc97dc2210d&quot;:{&quot;uuid&quot;:&quot;c824e22102928e5c08ffcfc97dc2210d&quot;,&quot;type&quot;:&quot;project&quot;,&quot;slug&quot;:&quot;save-the-farm&quot;,&quot;meta&quot;:{&quot;is_free&quot;:null,&quot;task_count&quot;:28},&quot;title&quot;:&quot;Save the Farm!&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:90,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;_Hello there. It&#x27;s been a harrowing few weeks. First your toenail issue, and now Great-Aunt Natasha&#x27;s emu farm is in danger of being reposessed! So here you are---after a brief stopover at the Mayo clinic---in Uncle Boris&#x27;s remote cabin in the heart of the Terror Woods. Family legend holds that a golden statue of immense value is hidden somewhere within these walls..._\n\nWelcome to the world of [interactive fiction](https://en.wikipedia.org/wiki/Interactive_fiction). In this project you&#x27;ll be building a text adventure game called **Save the Farm**! &quot;,&quot;published_exercise_ids&quot;:[]},&quot;069a6f9cdac04b2757f05a403a194d67&quot;:{&quot;uuid&quot;:&quot;069a6f9cdac04b2757f05a403a194d67&quot;,&quot;type&quot;:&quot;lesson&quot;,&quot;slug&quot;:&quot;php-loops&quot;,&quot;meta&quot;:{},&quot;title&quot;:&quot;Loops&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:30,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;Learn how to repeat code execution using loops in PHP.&quot;,&quot;published_exercise_ids&quot;:[&quot;2457687ae3aa649576e0a141d610aee6&quot;,&quot;103f489effd539bb366bea1789f0ef3b&quot;,&quot;2bd2de5e38711a2db8573bc8072693d4&quot;,&quot;d9d50a680525170c2769d191a5c1b43c&quot;,&quot;7d85873092a757333e16f798c60642d6&quot;,&quot;704830893cbc741af327f99f453e6608&quot;,&quot;618fcc9a3b75af3f421ac6f68a190e1e&quot;]},&quot;ed9564ad353bae2766988c14c0f9c2d2&quot;:{&quot;uuid&quot;:&quot;ed9564ad353bae2766988c14c0f9c2d2&quot;,&quot;type&quot;:&quot;quiz&quot;,&quot;slug&quot;:&quot;php-loops-quiz&quot;,&quot;meta&quot;:{&quot;is_free&quot;:null},&quot;title&quot;:&quot;Loops&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:15,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;Check your understanding of how to use loops in PHP.&quot;,&quot;published_exercise_ids&quot;:[]},&quot;43792131f2f6cc180563e9bd0665e5b2&quot;:{&quot;uuid&quot;:&quot;43792131f2f6cc180563e9bd0665e5b2&quot;,&quot;type&quot;:&quot;project&quot;,&quot;slug&quot;:&quot;php-fizzbuzz&quot;,&quot;meta&quot;:{&quot;is_free&quot;:null,&quot;task_count&quot;:13},&quot;title&quot;:&quot;FizzBuzz&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:30,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:&quot;https://codecademy-content.s3.amazonaws.com/courses/php-loops/fizzbuzz.jpg&quot;,&quot;description&quot;:&quot;Implement solutions for the FizzBuzz interview problem using different loop types in PHP.&quot;,&quot;published_exercise_ids&quot;:[]},&quot;ef492b7a9ed65f6c029dc34a5b79106a&quot;:{&quot;uuid&quot;:&quot;ef492b7a9ed65f6c029dc34a5b79106a&quot;,&quot;type&quot;:&quot;lesson&quot;,&quot;slug&quot;:&quot;php-loops-in-html&quot;,&quot;meta&quot;:{},&quot;title&quot;:&quot;Loops in HTML&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:30,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;PHP provides some useful shorthand for using loops in HTML. Learn how to use this shorthand to create repetitive HTML without copying and pasting.&quot;,&quot;published_exercise_ids&quot;:[&quot;605943815cf09f713814c0bf346ad71c&quot;,&quot;cf8cf61778689cbe545e11cfbe65920c&quot;,&quot;334664f17afa4aa17cbb921c8c451153&quot;,&quot;df7f1569e6cdaa7c789554359b1ae804&quot;]},&quot;5b3899cfa1d4279909aaa812bfa232aa&quot;:{&quot;uuid&quot;:&quot;5b3899cfa1d4279909aaa812bfa232aa&quot;,&quot;type&quot;:&quot;quiz&quot;,&quot;slug&quot;:&quot;php-loops-in-html-quiz&quot;,&quot;meta&quot;:{&quot;is_free&quot;:null},&quot;title&quot;:&quot;Loops in HTML&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:15,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;Check your understanding of how to use PHP loops with HTML content.&quot;,&quot;published_exercise_ids&quot;:[]},&quot;8c401ffb922fcadcdf6e732d87eb7f96&quot;:{&quot;uuid&quot;:&quot;8c401ffb922fcadcdf6e732d87eb7f96&quot;,&quot;type&quot;:&quot;project&quot;,&quot;slug&quot;:&quot;repetitive-cafe&quot;,&quot;meta&quot;:{&quot;is_free&quot;:null,&quot;task_count&quot;:10},&quot;title&quot;:&quot;Repetitive Cafe&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:30,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:&quot;https://codecademy-content.s3.amazonaws.com/courses/php-loops/cafe.jpg&quot;,&quot;description&quot;:&quot;Use your PHP loop skills to create a menu page for Repetitive Cafe. &quot;,&quot;published_exercise_ids&quot;:[]},&quot;3e00c5692e034629386740a2efd55f5c&quot;:{&quot;uuid&quot;:&quot;3e00c5692e034629386740a2efd55f5c&quot;,&quot;type&quot;:&quot;lesson&quot;,&quot;slug&quot;:&quot;introduction-to-form-validation&quot;,&quot;meta&quot;:{},&quot;title&quot;:&quot;Introduction to Form Validation&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:45,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;Learn about why validating form input is so important and various methods to accomplish it. &quot;,&quot;published_exercise_ids&quot;:[&quot;04789d93d19a1ad419b15060b1bb8d1a&quot;,&quot;4cbdfaf87a25c60ee43360ee5ef4b574&quot;,&quot;a087641e1adce9c186d4f4e64bec2010&quot;,&quot;b1e1f5d2db4323b95678b8df905fa70c&quot;,&quot;8d172e165840ba3c7293497f74772dd1&quot;,&quot;67bd198c15d6aef60c8d0c17b6b84708&quot;,&quot;90a638588a4fb16c4b9f4918cfa984bf&quot;]},&quot;71f5e9332270db42c0ae91a70a4ec611&quot;:{&quot;uuid&quot;:&quot;71f5e9332270db42c0ae91a70a4ec611&quot;,&quot;type&quot;:&quot;lesson&quot;,&quot;slug&quot;:&quot;nlp-regex-conceptual&quot;,&quot;meta&quot;:{&quot;ex_count&quot;:13},&quot;title&quot;:&quot;Introduction to Regular Expressions&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:120,&quot;content&quot;:{&quot;slug&quot;:&quot;nlp-regex-conceptual&quot;,&quot;title&quot;:&quot;Introduction to Regular Expressions&quot;,&quot;description&quot;:&quot;In this lesson you will learn the syntax of regular expressions and how you can utilize them to match and search text data!&quot;,&quot;exercises&quot;:[{&quot;node_type&quot;:&quot;exercise&quot;,&quot;locale&quot;:&quot;en&quot;,&quot;uuid&quot;:&quot;9a0e4971733e1114aebaf07a1acdc8be&quot;,&quot;slug&quot;:&quot;introduction&quot;,&quot;title&quot;:&quot;Introduction&quot;,&quot;workspace&quot;:{&quot;slug&quot;:&quot;blank-workspace&quot;,&quot;type&quot;:&quot;static&quot;,&quot;backend&quot;:&quot;workshop&quot;},&quot;instructionsandhints&quot;:[],&quot;components&quot;:[{&quot;url&quot;:&quot;https://s3.amazonaws.com/codecademy-content/courses/regex/regular_expressions_xkcd_2.png&quot;,&quot;_schema&quot;:&quot;Image&quot;},{&quot;content&quot;:&quot;When registering an account for a new social media app or completing an order for a gift online, nearly every piece of information you enter into a web form is validated. Did you enter a properly formatted email including an `@` symbol? Did you enter a phone number `10` digits long, with or without `-`s and parentheses? And then there&#x27;s the king of them all \u2014 did your new password meet the seemingly growing number of requirements for inclusion (and exclusion) of symbols, digits, and both upper and lower case letters?\n\nWhile correcting each field in our digital lives for proper format can be a pain, it&#x27;s integral to ensuring that our accounts are secure, our packages are successfully delivered, and that we can be contacted by phone and email.\n\nThe technology that fuels this verification system on nearly every website and application is the ever reliable, often quirky language of **_regular expressions_**, commonly shortened to regex, as we will use here, or regexp (\u003Ca href=\&quot;https://english.stackexchange.com/questions/94371/what-is-the-correct-pronunciation-of-regex\&quot; target=\&quot;_blank\&quot; rel=\&quot;noopener noreferrer\&quot;\u003Epronunciation is up for debate\u003C/a\u003E). A _regular expression_ is a special sequence of characters that describe a pattern of text that should be found, or matched, in a string or document. By matching text, we can identify how often and where certain pieces of text occur, as well as have the opportunity to replace or update these pieces of text if needed.\n\nRegular Expressions have a variety of use cases including:\n* verifying and parsing user input, text files and code\n* examining test results\n* finding keywords in emails and web pages\n\nThroughout the rest of this lesson, you&#x27;ll learn about the different syntax of regular expressions and how you can use them in your own projects (\u003Ca href=\&quot;https://xkcd.com/208/\&quot; target=\&quot;_blank\&quot; rel=\&quot;noopener noreferrer\&quot;\u003Eand become a regex superhero\u003C/a\u003E)!\n&quot;,&quot;instructions&quot;:&quot;Continue to the next exercise to begin your journey into the wild world of regular expressions!&quot;,&quot;_schema&quot;:&quot;Narrative&quot;}],&quot;tests&quot;:{},&quot;filepath&quot;:&quot;new/content/courses/en/nlp-regex/units/nlp-regex-intro/lessons/nlp-regex-conceptual/exercises/introduction.en.yml&quot;},{&quot;node_type&quot;:&quot;exercise&quot;,&quot;locale&quot;:&quot;en&quot;,&quot;uuid&quot;:&quot;270da082e3f4f88c97f50577bac226c3&quot;,&quot;slug&quot;:&quot;literals&quot;,&quot;title&quot;:&quot;Literals&quot;,&quot;workspace&quot;:{&quot;slug&quot;:&quot;nlp-regex-conceptual-literals-v0&quot;,&quot;type&quot;:&quot;python3&quot;,&quot;backend&quot;:&quot;workshop&quot;},&quot;instructionsandhints&quot;:[{&quot;instructions&quot;:&quot;Each exercise in this lesson will have an interactive applet in the browser that allows you to enter a regular expression and see if it matches a string of text. If a character is matched, you&#x27;ll see it highlighted in green. If there&#x27;s a checkmark next to the string, you&#x27;ve completely matched the whole piece of text!\n\nEnter a regular expression that matches each of the strings listed below \&quot;Match these strings\&quot; and does NOT match any of the strings listed below \&quot;Don&#x27;t match these strings.\&quot;\n\nWhen you&#x27;ve entered a regular expression that matches the appropriate strings, a key will appear in the browser. Each key is part of a URL that contains a surprise you can uncover when you complete the lesson! Add the key to the end of the URL in the code editor and run the code to unlock the next exercise.&quot;}],&quot;components&quot;:[{&quot;url&quot;:&quot;https://s3.amazonaws.com/codecademy-content/courses/regex/build/index_all.html?query=0&quot;,&quot;_schema&quot;:&quot;WebBrowser&quot;},{&quot;files&quot;:[{&quot;filename&quot;:&quot;script.py&quot;}],&quot;navigator_disabled&quot;:true,&quot;_schema&quot;:&quot;PersistentCodeEditor&quot;},{&quot;content&quot;:&quot;The simplest text we can match with regular expressions are **_literals_**. This is where our regular expression contains the exact text that we want to match. The regex `a`, for example, will match the text `a`, and the regex `bananas` will match the text `bananas`.\n\nWe can additionally match just part of a piece of text. Perhaps we are searching a document to see if the word `monkey` occurs, since we love monkeys. We could use the regex `monkey` to match `monkey` in the piece of text `The monkeys like to eat bananas.`.\n\nNot only are we able to match alphabetical characters \u2014 digits work as well! The regex `3` will match the `3` in the piece of text `34`, and the regex `5 gibbons` will completely match the text `5 gibbons`!\n\nRegular expressions operate by moving character by character, from left to right, through a piece of text. When the regular expression finds a character that matches the first piece of the expression, it looks to find a continuous sequence of matching characters.&quot;,&quot;_schema&quot;:&quot;Narrative&quot;}],&quot;tests&quot;:{&quot;checkpoints&quot;:&quot;checkpoint({\n instructions: &#x27;Each exercise in this lesson will have an interactive applet in the browser that allows you to enter a regular expression and see if it matches a string of text. If a character is matched, you\\&#x27;ll see it highlighted in green. If there\\&#x27;s a checkmark next to the string, you\\&#x27;ve completely matched the whole piece of text!\\n\\nEnter a regular expression that matches each of the strings listed below \&quot;Match these strings\&quot; and does NOT match any of the strings listed below \&quot;Don\\&#x27;t match these strings.\&quot;\\n\\nWhen you\\&#x27;ve entered a regular expression that matches the appropriate strings, a key will appear in the browser. Each key is part of a URL that contains a surprise you can uncover when you complete the lesson! Add the key to the end of the URL in the code editor and run the code to unlock the next exercise.&#x27;,\n hint: &#x27;&#x27;\n}, function (Tests, callback)\n {\n Tests.pythonTest(&#x27;test1.py&#x27;, callback);\n });&quot;,&quot;files&quot;:[{&quot;filename&quot;:&quot;test1.py&quot;,&quot;content&quot;:&quot;load_file_in_context(&#x27;script.py&#x27;)\n\nif url != &#x27;https://s3.amazonaws.com/codecademy-content/courses/regex/on&#x27;:\n fail_tests(\&quot;Sorry, this is not the correct key to move on to the next exercise. Try to complete the activity in the browser to receive the next piece of the url!\&quot;)\n\npass_tests()&quot;}]},&quot;filepath&quot;:&quot;new/content/courses/en/nlp-regex/units/nlp-regex-intro/lessons/nlp-regex-conceptual/exercises/literals.en.yml&quot;},{&quot;node_type&quot;:&quot;exercise&quot;,&quot;locale&quot;:&quot;en&quot;,&quot;uuid&quot;:&quot;60500b0fae7892761542f989ae0c8162&quot;,&quot;slug&quot;:&quot;alternation&quot;,&quot;title&quot;:&quot;Alternation&quot;,&quot;workspace&quot;:{&quot;slug&quot;:&quot;nlp-regex-conceptual-alternation-v0&quot;,&quot;type&quot;:&quot;python3&quot;,&quot;backend&quot;:&quot;workshop&quot;},&quot;instructionsandhints&quot;:[{&quot;instructions&quot;:&quot;The interactive applet in the browser allows you to enter a regular expression and see if it matches a string of text. If a character is matched, you&#x27;ll see it highlighted in green. If there&#x27;s a checkmark next to the string, you&#x27;ve completely matched the whole piece of text!\n\nEnter a regular expression that matches each of the strings listed below \&quot;Match these strings\&quot; and does NOT match any of the strings listed below \&quot;Don&#x27;t match these strings.\&quot;\n\nWhen you&#x27;ve entered a regular expression that matches the appropriate strings, a key will appear in the browser. Add the key to the end of the URL in the code editor and run the code to unlock the next exercise!&quot;}],&quot;components&quot;:[{&quot;url&quot;:&quot;https://s3.amazonaws.com/codecademy-content/courses/regex/build/index_all.html?query=1&quot;,&quot;_schema&quot;:&quot;WebBrowser&quot;},{&quot;files&quot;:[{&quot;filename&quot;:&quot;script.py&quot;}],&quot;navigator_disabled&quot;:true,&quot;_schema&quot;:&quot;PersistentCodeEditor&quot;},{&quot;content&quot;:&quot;Do you love baboons and gorillas? You can find either of them with the same regular expression using **_alternation!_** Alternation, performed in regular expressions with the pipe symbol, `|`, allows us to match either the characters preceding the `|` OR the characters after the `|`. The regex `baboons|gorillas` will match `baboons` in the text `I love baboons`, but will also match `gorillas` in the text `I love gorillas`.\n\nAre you thinking about how to match the whole piece of text `I love baboons` or `I love gorillas`? We will get to that later on!&quot;,&quot;_schema&quot;:&quot;Narrative&quot;}],&quot;tests&quot;:{&quot;checkpoints&quot;:&quot;checkpoint({\n instructions: &#x27;The interactive applet in the browser allows you to enter a regular expression and see if it matches a string of text. If a character is matched, you\\&#x27;ll see it highlighted in green. If there\\&#x27;s a checkmark next to the string, you\\&#x27;ve completely matched the whole piece of text!\\n\\nEnter a regular expression that matches each of the strings listed below \&quot;Match these strings\&quot; and does NOT match any of the strings listed below \&quot;Don\\&#x27;t match these strings.\&quot;\\n\\nWhen you\\&#x27;ve entered a regular expression that matches the appropriate strings, a key will appear in the browser. Add the key to the end of the URL in the code editor and run the code to unlock the next exercise!&#x27;,\n hint: &#x27;&#x27;\n}, function (Tests, callback)\n {\n Tests.pythonTest(&#x27;test1.py&#x27;, callback);\n });&quot;,&quot;files&quot;:[{&quot;filename&quot;:&quot;test1.py&quot;,&quot;content&quot;:&quot;load_file_in_context(&#x27;script.py&#x27;)\n\nif url != &#x27;https://s3.amazonaws.com/codecademy-content/courses/regex/onyour&#x27;:\n fail_tests(\&quot;Sorry, this is not the correct key to move on to the next exercise. Try to complete the activity in the browser to receive the next piece of the url!\&quot;)\n\npass_tests()&quot;}]},&quot;filepath&quot;:&quot;new/content/courses/en/nlp-regex/units/nlp-regex-intro/lessons/nlp-regex-conceptual/exercises/alternation.en.yml&quot;},{&quot;node_type&quot;:&quot;exercise&quot;,&quot;locale&quot;:&quot;en&quot;,&quot;uuid&quot;:&quot;954fcac0ffd9bb70f7d44f00a78055bf&quot;,&quot;slug&quot;:&quot;character-sets&quot;,&quot;title&quot;:&quot;Character Sets&quot;,&quot;workspace&quot;:{&quot;slug&quot;:&quot;nlp-regex-conceptual-character-sets-v0&quot;,&quot;type&quot;:&quot;python3&quot;,&quot;backend&quot;:&quot;workshop&quot;},&quot;instructionsandhints&quot;:[{&quot;instructions&quot;:&quot;The interactive applet in the browser allows you to enter a regular expression and see if it matches a string of text. If a character is matched, you&#x27;ll see it highlighted in green. If there&#x27;s a checkmark next to the string, you&#x27;ve completely matched the whole piece of text!\n\nEnter a regular expression that matches each of the strings listed below \&quot;Match these strings\&quot; and does NOT match any of the strings listed below \&quot;Don&#x27;t match these strings.\&quot;\n\nWhen you&#x27;ve entered a regular expression that matches the appropriate strings, a key will appear in the browser. Add the key to the end of the URL in the code editor and run the code to unlock the next exercise!&quot;}],&quot;components&quot;:[{&quot;url&quot;:&quot;https://s3.amazonaws.com/codecademy-content/courses/regex/build/index_all.html?query=2&quot;,&quot;_schema&quot;:&quot;WebBrowser&quot;},{&quot;files&quot;:[{&quot;filename&quot;:&quot;script.py&quot;}],&quot;navigator_disabled&quot;:true,&quot;_schema&quot;:&quot;PersistentCodeEditor&quot;},{&quot;content&quot;:&quot;Spelling tests may seem like a distant memory from grade school, but we ultimately take them every day while typing. It&#x27;s easy to make mistakes on commonly misspelled words like `consensus`, and on top of that, there are sometimes alternate spellings for the same word. \n\n**_Character sets_**, denoted by a pair of brackets `[]`, let us match one character from a series of characters, allowing for matches with incorrect or different spellings.\n\nThe regex `con[sc]en[sc]us` will match `consensus`, the correct spelling of the word, but also match the following three incorrect spellings: `concensus`, `consencus`, and `concencus`. The letters inside the first brackets, `s` and `c`, are the different possibilities for the character that comes after `con` and before `en`. Similarly for the second brackets, `s` and `c` are the different character possibilities to come after `en` and before `us`.\n\nThus the regex `[cat]` will match the characters `c`, `a`, _or_ `t`, but not the text `cat`. \n\nThe beauty of character sets (and alternation) is that they allow our regular expressions to become more flexible and less rigid than by just matching with literals!\n\nWe can make our character sets even more powerful with the help of the carrot `^` symbol. Placed at the front of a character set, the `^` negates the set, matching any character that is _not_ stated. These are called _negated character sets_. Thus the regex `[^cat]` will match any character that is not `c`, `a`, _or_ `t`, and would completely match each character `d`, `o` _or_ `g`.\n\nDo we have a consensus that regular expressions are pretty cool?&quot;,&quot;_schema&quot;:&quot;Narrative&quot;}],&quot;tests&quot;:{&quot;checkpoints&quot;:&quot;checkpoint({\n instructions: &#x27;The interactive applet in the browser allows you to enter a regular expression and see if it matches a string of text. If a character is matched, you\\&#x27;ll see it highlighted in green. If there\\&#x27;s a checkmark next to the string, you\\&#x27;ve completely matched the whole piece of text!\\n\\nEnter a regular expression that matches each of the strings listed below \&quot;Match these strings\&quot; and does NOT match any of the strings listed below \&quot;Don\\&#x27;t match these strings.\&quot;\\n\\nWhen you\\&#x27;ve entered a regular expression that matches the appropriate strings, a key will appear in the browser. Add the key to the end of the URL in the code editor and run the code to unlock the next exercise!&#x27;,\n hint: &#x27;&#x27;\n}, function (Tests, callback)\n {\n Tests.pythonTest(&#x27;test1.py&#x27;, callback);\n });&quot;,&quot;files&quot;:[{&quot;filename&quot;:&quot;test1.py&quot;,&quot;content&quot;:&quot;load_file_in_context(&#x27;script.py&#x27;)\n\nif url != &#x27;https://s3.amazonaws.com/codecademy-content/courses/regex/onyourexciting&#x27;:\n fail_tests(\&quot;Sorry, this is not the correct key to move on to the next exercise. Try to complete the activity in the browser to receive the next piece of the url!\&quot;)\n\npass_tests()&quot;}]},&quot;filepath&quot;:&quot;new/content/courses/en/nlp-regex/units/nlp-regex-intro/lessons/nlp-regex-conceptual/exercises/character-sets.en.yml&quot;},{&quot;node_type&quot;:&quot;exercise&quot;,&quot;locale&quot;:&quot;en&quot;,&quot;uuid&quot;:&quot;e221a8deeec70eb6f377896dabcda4b9&quot;,&quot;slug&quot;:&quot;wildcards&quot;,&quot;title&quot;:&quot;Wild for Wildcards&quot;,&quot;workspace&quot;:{&quot;slug&quot;:&quot;nlp-regex-conceptual-wildcards-v0&quot;,&quot;type&quot;:&quot;python3&quot;,&quot;backend&quot;:&quot;workshop&quot;},&quot;instructionsandhints&quot;:[{&quot;instructions&quot;:&quot;The interactive applet in the browser allows you to enter a regular expression and see if it matches a string of text. If a character is matched, you&#x27;ll see it highlighted in green. If there&#x27;s a checkmark next to the string, you&#x27;ve completely matched the whole piece of text!\n\nEnter a regular expression that matches each of the strings listed below \&quot;Match these strings\&quot; and does NOT match any of the strings listed below \&quot;Don&#x27;t match these strings.\&quot;\n\nWhen you&#x27;ve entered a regular expression that matches the appropriate strings, a key will appear in the browser. Add the key to the end of the URL in the code editor and run the code to unlock the next exercise!&quot;}],&quot;components&quot;:[{&quot;url&quot;:&quot;https://s3.amazonaws.com/codecademy-content/courses/regex/build/index_all.html?query=3&quot;,&quot;_schema&quot;:&quot;WebBrowser&quot;},{&quot;files&quot;:[{&quot;filename&quot;:&quot;script.py&quot;}],&quot;navigator_disabled&quot;:true,&quot;_schema&quot;:&quot;PersistentCodeEditor&quot;},{&quot;content&quot;:&quot;Sometimes we don&#x27;t care exactly WHAT characters are in a text, just that there are SOME characters. Enter the wildcard `.`! **_Wildcards_** will match any single character (letter, number, symbol or whitespace) in a piece of text. They are useful when we do not care about the specific value of a character, but only that a character exists!\n\nLet&#x27;s say we want to match any 9-character piece of text. The regex `.........` will completely match `orangutan` and `marsupial`! Similarly, the regex `I ate . bananas` will completely match both `I ate 3 bananas` and `I ate 8 bananas`!\n\nWhat happens if we want to match an actual period, `.`? We can use the escape character, `\\`, to escape the wildcard functionality of the `.` and match an actual period. The regex `Howler monkeys are really lazy\\.` will completely match the text `Howler monkeys are really lazy.`.&quot;,&quot;_schema&quot;:&quot;Narrative&quot;}],&quot;tests&quot;:{&quot;checkpoints&quot;:&quot;checkpoint({\n instructions: &#x27;The interactive applet in the browser allows you to enter a regular expression and see if it matches a string of text. If a character is matched, you\\&#x27;ll see it highlighted in green. If there\\&#x27;s a checkmark next to the string, you\\&#x27;ve completely matched the whole piece of text!\\n\\nEnter a regular expression that matches each of the strings listed below \&quot;Match these strings\&quot; and does NOT match any of the strings listed below \&quot;Don\\&#x27;t match these strings.\&quot;\\n\\nWhen you\\&#x27;ve entered a regular expression that matches the appropriate strings, a key will appear in the browser. Add the key to the end of the URL in the code editor and run the code to unlock the next exercise!&#x27;,\n hint: &#x27;&#x27;\n}, function (Tests, callback)\n {\n Tests.pythonTest(&#x27;test1.py&#x27;, callback);\n });&quot;,&quot;files&quot;:[{&quot;filename&quot;:&quot;test1.py&quot;,&quot;content&quot;:&quot;load_file_in_context(&#x27;script.py&#x27;)\n\nif url != &#x27;https://s3.amazonaws.com/codecademy-content/courses/regex/onyourexcitingjourney&#x27;:\n fail_tests(\&quot;Sorry, this is not the correct key to move on to the next exercise. Try to complete the activity in the browser to receive the next piece of the url!\&quot;)\n\npass_tests()&quot;}]},&quot;filepath&quot;:&quot;new/content/courses/en/nlp-regex/units/nlp-regex-intro/lessons/nlp-regex-conceptual/exercises/wildcards.en.yml&quot;},{&quot;node_type&quot;:&quot;exercise&quot;,&quot;locale&quot;:&quot;en&quot;,&quot;uuid&quot;:&quot;4d5fdf72e2477edb0b353882df66beff&quot;,&quot;slug&quot;:&quot;ranges&quot;,&quot;title&quot;:&quot;Ranges&quot;,&quot;workspace&quot;:{&quot;slug&quot;:&quot;nlp-regex-conceptual-ranges-v0&quot;,&quot;type&quot;:&quot;python3&quot;,&quot;backend&quot;:&quot;workshop&quot;},&quot;instructionsandhints&quot;:[{&quot;instructions&quot;:&quot;The interactive applet in the browser allows you to enter a regular expression and see if it matches a string of text. If a character is matched, you&#x27;ll see it highlighted in green. If there&#x27;s a checkmark next to the string, you&#x27;ve gotten a match!\n\nEnter a regular expression that matches each of the three strings listed below \&quot;Match these strings\&quot; and does NOT match any of the three strings listed below \&quot;Don&#x27;t match these strings.\&quot;\n\nWhen you&#x27;ve entered a regular expression that matches the appropriate strings, a key will appear in the browser. Copy the key into the code editor and run the code to unlock the next exercise!&quot;}],&quot;components&quot;:[{&quot;url&quot;:&quot;https://s3.amazonaws.com/codecademy-content/courses/regex/build/index_all.html?query=4&quot;,&quot;_schema&quot;:&quot;WebBrowser&quot;},{&quot;files&quot;:[{&quot;filename&quot;:&quot;script.py&quot;}],&quot;navigator_disabled&quot;:true,&quot;_schema&quot;:&quot;PersistentCodeEditor&quot;},{&quot;content&quot;:&quot;Character sets are great, but their true power isn&#x27;t realized without ranges. **_Ranges_** allow us to specify a range of characters in which we can make a match without having to type out each individual character. The regex `[abc]`, which would match any character `a`, `b`, _or_ `c`, is equivalent to regex range `[a-c]`. The `-` character allows us to specify that we are interested in matching a range of characters.\n\nThe regex `I adopted [2-9] [b-h]ats` will match the text `I adopted 4 bats` as well as `I adopted 8 cats` and even `I adopted 5 hats`.\n\nWith ranges we can match any single capital letter with the regex `[A-Z]`, lowercase letter with the regex `[a-z]`, any digit with the regex `[0-9]`. We can even have multiple ranges in the same character set! To match any single capital _or_ lowercase alphabetical character, we can use the regex `[A-Za-z]`. \n\nRemember, within any character set `[]` we only match _one_ character.&quot;,&quot;_schema&quot;:&quot;Narrative&quot;}],&quot;tests&quot;:{&quot;checkpoints&quot;:&quot;checkpoint({\n instructions: &#x27;The interactive applet in the browser allows you to enter a regular expression and see if it matches a string of text. If a character is matched, you\\&#x27;ll see it highlighted in green. If there\\&#x27;s a checkmark next to the string, you\\&#x27;ve gotten a match!\\n\\nEnter a regular expression that matches each of the three strings listed below \&quot;Match these strings\&quot; and does NOT match any of the three strings listed below \&quot;Don\\&#x27;t match these strings.\&quot;\\n\\nWhen you\\&#x27;ve entered a regular expression that matches the appropriate strings, a key will appear in the browser. Copy the key into the code editor and run the code to unlock the next exercise!&#x27;,\n hint: &#x27;&#x27;\n}, function (Tests, callback)\n {\n Tests.pythonTest(&#x27;test1.py&#x27;, callback);\n });&quot;,&quot;files&quot;:[{&quot;filename&quot;:&quot;test1.py&quot;,&quot;content&quot;:&quot;load_file_in_context(&#x27;script.py&#x27;)\n\nif url != &#x27;https://s3.amazonaws.com/codecademy-content/courses/regex/onyourexcitingjourneylearning&#x27;:\n fail_tests(\&quot;Sorry, this is not the correct key to move on to the next exercise. Try to complete the activity in the browser to receive the next piece of the url!\&quot;)\n\npass_tests()&quot;}]},&quot;filepath&quot;:&quot;new/content/courses/en/nlp-regex/units/nlp-regex-intro/lessons/nlp-regex-conceptual/exercises/ranges.en.yml&quot;},{&quot;node_type&quot;:&quot;exercise&quot;,&quot;locale&quot;:&quot;en&quot;,&quot;uuid&quot;:&quot;8d275d6ffac05c5debdd95948ed9cf0a&quot;,&quot;slug&quot;:&quot;shorthand-character-classes&quot;,&quot;title&quot;:&quot;Shorthand Character Classes&quot;,&quot;workspace&quot;:{&quot;slug&quot;:&quot;nlp-regex-conceptual-shorthand-character-classes-v0&quot;,&quot;type&quot;:&quot;python3&quot;,&quot;backend&quot;:&quot;workshop&quot;},&quot;instructionsandhints&quot;:[{&quot;instructions&quot;:&quot;The interactive applet in the browser allows you to enter a regular expression and see if it matches a string of text. If a character is matched, you&#x27;ll see it highlighted in green. If there&#x27;s a checkmark next to the string, you&#x27;ve completely matched the whole piece of text!\n\nEnter a regular expression that matches each of the strings listed below \&quot;Match these strings\&quot; and does NOT match any of the strings listed below \&quot;Don&#x27;t match these strings.\&quot;\n\nWhen you&#x27;ve entered a regular expression that matches the appropriate strings, a key will appear in the browser. Add the key to the end of the URL in the code editor and run the code to unlock the next exercise!&quot;}],&quot;components&quot;:[{&quot;url&quot;:&quot;https://s3.amazonaws.com/codecademy-content/courses/regex/build/index_all.html?query=5&quot;,&quot;_schema&quot;:&quot;WebBrowser&quot;},{&quot;files&quot;:[{&quot;filename&quot;:&quot;script.py&quot;}],&quot;navigator_disabled&quot;:true,&quot;_schema&quot;:&quot;PersistentCodeEditor&quot;},{&quot;content&quot;:&quot;While character ranges are extremely useful, they can be cumbersome to write out every single time you want to match common ranges such as those that designate alphabetical characters or digits. To alleviate this pain, there are **_shorthand character classes_** that represent common ranges, and they make writing regular expressions much simpler. These shorthand classes include:\n* `\\w`: the \&quot;word character\&quot; class represents the regex range `[A-Za-z0-9_]`, and it matches a single uppercase character, lowercase character, number or underscore\n* `\\d`: the \&quot;digit character\&quot; class represents the regex range `[0-9]`, and it matches a single digit character\n* `\\s`: the \&quot;whitespace character\&quot; class represents the regex range `[ \\t\\r\\n\\f]`, matching a single space, tab, carriage return, line break or form feed\n\nFor example, the regex `\\d\\s\\w\\w\\w\\w\\w\\w\\w` matches a digit character, followed by a whitespace character, followed by 7 word characters. Thus the regex completely matches the text `3 monkeys`.\n\nIn addition to the shorthand character classes `\\w`, `\\d`, and `\\s`, we also have access to the _negated shorthand character classes_! These shorthands will match any character that is NOT in the regular shorthand classes. These negated shorthand classes include:\n* `\\W`: the \&quot;non word character\&quot; class represents the regex range `[^A-Za-z0-9_]`, matching any character that is not included in the range represented by `\\w`\n* `\\D`: the \&quot;non digit character\&quot; class represents the regex range `[^0-9]`, matching any character that is not included in the range represented by `\\d`\n* `\\S`: the \&quot;non whitespace character\&quot; class represents the regex range `[^ \\t\\r\\n\\f]`, matching any character that is not included in the range represented by `\\s`&quot;,&quot;_schema&quot;:&quot;Narrative&quot;}],&quot;tests&quot;:{&quot;checkpoints&quot;:&quot;checkpoint({\n instructions: &#x27;The interactive applet in the browser allows you to enter a regular expression and see if it matches a string of text. If a character is matched, you\\&#x27;ll see it highlighted in green. If there\\&#x27;s a checkmark next to the string, you\\&#x27;ve completely matched the whole piece of text!\\n\\nEnter a regular expression that matches each of the strings listed below \&quot;Match these strings\&quot; and does NOT match any of the strings listed below \&quot;Don\\&#x27;t match these strings.\&quot;\\n\\nWhen you\\&#x27;ve entered a regular expression that matches the appropriate strings, a key will appear in the browser. Add the key to the end of the URL in the code editor and run the code to unlock the next exercise!&#x27;,\n hint: &#x27;&#x27;\n}, function (Tests, callback)\n {\n Tests.pythonTest(&#x27;test1.py&#x27;, callback);\n });&quot;,&quot;files&quot;:[{&quot;filename&quot;:&quot;test1.py&quot;,&quot;content&quot;:&quot;load_file_in_context(&#x27;script.py&#x27;)\n\nif url != &#x27;https://s3.amazonaws.com/codecademy-content/courses/regex/onyourexcitingjourneylearningto&#x27;:\n fail_tests(\&quot;Sorry, this is not the correct key to move on to the next exercise. Try to complete the activity in the browser to receive the next piece of the url!\&quot;)\n\npass_tests()&quot;}]},&quot;filepath&quot;:&quot;new/content/courses/en/nlp-regex/units/nlp-regex-intro/lessons/nlp-regex-conceptual/exercises/shorthand-character-classes.en.yml&quot;},{&quot;node_type&quot;:&quot;exercise&quot;,&quot;locale&quot;:&quot;en&quot;,&quot;uuid&quot;:&quot;b0dff74c19f9d19a07ba16ea5284c39c&quot;,&quot;slug&quot;:&quot;grouping&quot;,&quot;title&quot;:&quot;Grouping&quot;,&quot;workspace&quot;:{&quot;slug&quot;:&quot;nlp-regex-conceptual-grouping-v0&quot;,&quot;type&quot;:&quot;python3&quot;,&quot;backend&quot;:&quot;workshop&quot;},&quot;instructionsandhints&quot;:[{&quot;instructions&quot;:&quot;The interactive applet in the browser allows you to enter a regular expression and see if it matches a string of text. If a character is matched, you&#x27;ll see it highlighted in green. If there&#x27;s a checkmark next to the string, you&#x27;ve completely matched the whole piece of text!\n\nEnter a regular expression that matches each of the strings listed below \&quot;Match these strings\&quot; and does NOT match any of the strings listed below \&quot;Don&#x27;t match these strings.\&quot;\n\nWhen you&#x27;ve entered a regular expression that matches the appropriate strings, a key will appear in the browser. Add the key to the end of the URL in the code editor and run the code to unlock the next exercise!&quot;}],&quot;components&quot;:[{&quot;url&quot;:&quot;https://s3.amazonaws.com/codecademy-content/courses/regex/build/index_all.html?query=6&quot;,&quot;_schema&quot;:&quot;WebBrowser&quot;},{&quot;files&quot;:[{&quot;filename&quot;:&quot;script.py&quot;}],&quot;navigator_disabled&quot;:true,&quot;_schema&quot;:&quot;PersistentCodeEditor&quot;},{&quot;content&quot;:&quot;Remember when we were in love with baboons and gorillas a few exercises ago? We were able to match either `baboons` or `gorillas` using the regex `baboons|gorillas`, taking advantage of the `|` symbol.\n\nBut what if we want to match the whole piece of text `I love baboons` and `I love gorillas` with the same regex? Your first guess might be to use the regex `I love baboons|gorillas`. This regex, while it would completely match the string `I love baboons`, would not match `I love gorillas`, and would instead match `gorillas`. This is because the `|` symbol matches the _entire_ expression before or after itself.\n\nGrouping to the rescue! **_Grouping_**, denoted with the open parenthesis `(` and the closing parenthesis `)`, lets us group parts of a regular expression together, and allows us to limit alternation to part of the regex.\n\nThe regex `I love (baboons|gorillas)` will match the text `I love ` and _then_ match either `baboons` or `gorillas`, as the grouping limits the reach of the `|` to the text within the parentheses.\n\nThese groups are also called _capture groups_, as they have the power to select, or capture, a substring from our matched text.&quot;,&quot;_schema&quot;:&quot;Narrative&quot;}],&quot;tests&quot;:{&quot;checkpoints&quot;:&quot;checkpoint({\n instructions: &#x27;The interactive applet in the browser allows you to enter a regular expression and see if it matches a string of text. If a character is matched, you\\&#x27;ll see it highlighted in green. If there\\&#x27;s a checkmark next to the string, you\\&#x27;ve completely matched the whole piece of text!\\n\\nEnter a regular expression that matches each of the strings listed below \&quot;Match these strings\&quot; and does NOT match any of the strings listed below \&quot;Don\\&#x27;t match these strings.\&quot;\\n\\nWhen you\\&#x27;ve entered a regular expression that matches the appropriate strings, a key will appear in the browser. Add the key to the end of the URL in the code editor and run the code to unlock the next exercise!&#x27;,\n hint: &#x27;&#x27;\n}, function (Tests, callback)\n {\n Tests.pythonTest(&#x27;test1.py&#x27;, callback);\n });&quot;,&quot;files&quot;:[{&quot;filename&quot;:&quot;test1.py&quot;,&quot;content&quot;:&quot;load_file_in_context(&#x27;script.py&#x27;)\n\nif url != &#x27;https://s3.amazonaws.com/codecademy-content/courses/regex/onyourexcitingjourneylearningtocode&#x27;:\n fail_tests(\&quot;Sorry, this is not the correct key to move on to the next exercise. Try to complete the activity in the browser to receive the next piece of the url!\&quot;)\n\npass_tests()&quot;}]},&quot;filepath&quot;:&quot;new/content/courses/en/nlp-regex/units/nlp-regex-intro/lessons/nlp-regex-conceptual/exercises/grouping.en.yml&quot;},{&quot;node_type&quot;:&quot;exercise&quot;,&quot;locale&quot;:&quot;en&quot;,&quot;uuid&quot;:&quot;f9fe554eba89cb12bb0aa0e9a5092661&quot;,&quot;slug&quot;:&quot;quantifiers-fixed&quot;,&quot;title&quot;:&quot;Quantifiers - Fixed&quot;,&quot;workspace&quot;:{&quot;slug&quot;:&quot;nlp-regex-conceptual-quantifiers-fixed-v0&quot;,&quot;type&quot;:&quot;python3&quot;,&quot;backend&quot;:&quot;workshop&quot;},&quot;instructionsandhints&quot;:[{&quot;instructions&quot;:&quot;The interactive applet in the browser allows you to enter a regular expression and see if it matches a string of text. If a character is matched, you&#x27;ll see it highlighted in green. If there&#x27;s a checkmark next to the string, you&#x27;ve completely matched the whole piece of text!\n\nEnter a regular expression that matches each of the strings listed below \&quot;Match these strings\&quot; and does NOT match any of the strings listed below \&quot;Don&#x27;t match these strings.\&quot;\n\nWhen you&#x27;ve entered a regular expression that matches the appropriate strings, a key will appear in the browser. Add the key to the end of the URL in the code editor and run the code to unlock the next exercise!&quot;}],&quot;components&quot;:[{&quot;url&quot;:&quot;https://s3.amazonaws.com/codecademy-content/courses/regex/build/index_all.html?query=7&quot;,&quot;_schema&quot;:&quot;WebBrowser&quot;},{&quot;files&quot;:[{&quot;filename&quot;:&quot;script.py&quot;}],&quot;navigator_disabled&quot;:true,&quot;_schema&quot;:&quot;PersistentCodeEditor&quot;},{&quot;content&quot;:&quot;Here&#x27;s where things start to get really interesting. So far we have only matched text on a character by character basis. But instead of writing the regex `\\w\\w\\w\\w\\w\\w\\s\\w\\w\\w\\w\\w\\w`, which would match 6 word characters, followed by a whitespace character, and then followed by more 6 word characters, such as in the text `rhesus monkey`, is there a better way to denote the quantity of characters we want to match?\n\nThe answer is yes, with the help of quantifiers! **_Fixed quantifiers_**, denoted with curly braces `{}`, let us indicate the exact quantity of a character we wish to match, or allow us to provide a quantity range to match on.\n* `\\w{3}` will match _exactly_ 3 word characters\n* `\\w{4,7}` will match _at minimum_ 4 word characters and _at maximum_ 7 word characters\n\nThe regex `roa{3}r` will match the characters `ro` followed by `3` `a`s, and then the character `r`, such as in the text `roaaar`. The regex `roa{3,7}r` will match the characters `ro` followed by _at least_ `3` `a`s and _at most_ `7` `a`s, followed by an `r`, matching the strings `roaaar`, `roaaaaar` and `roaaaaaaar`.\n\nAn important note is that quantifiers are considered to be _greedy_. This means that they will match the greatest quantity of characters they possibly can. For example, the regex `mo{2,4}` with match the text `moooo` in the string `moooo`, and not return a match of `moo`, or `mooo`. This is because the fixed quantifier wants to match the largest number of `o`s as possible, which is `4` in the string `moooo`.&quot;,&quot;_schema&quot;:&quot;Narrative&quot;}],&quot;tests&quot;:{&quot;checkpoints&quot;:&quot;checkpoint({\n instructions: &#x27;The interactive applet in the browser allows you to enter a regular expression and see if it matches a string of text. If a character is matched, you\\&#x27;ll see it highlighted in green. If there\\&#x27;s a checkmark next to the string, you\\&#x27;ve completely matched the whole piece of text!\\n\\nEnter a regular expression that matches each of the strings listed below \&quot;Match these strings\&quot; and does NOT match any of the strings listed below \&quot;Don\\&#x27;t match these strings.\&quot;\\n\\nWhen you\\&#x27;ve entered a regular expression that matches the appropriate strings, a key will appear in the browser. Add the key to the end of the URL in the code editor and run the code to unlock the next exercise!&#x27;,\n hint: &#x27;&#x27;\n}, function (Tests, callback)\n {\n Tests.pythonTest(&#x27;test1.py&#x27;, callback);\n });&quot;,&quot;files&quot;:[{&quot;filename&quot;:&quot;test1.py&quot;,&quot;content&quot;:&quot;load_file_in_context(&#x27;script.py&#x27;)\n\nif url != &#x27;https://s3.amazonaws.com/codecademy-content/courses/regex/onyourexcitingjourneylearningtocodeyou&#x27;:\n fail_tests(\&quot;Sorry, this is not the correct key to move on to the next exercise. Try to complete the activity in the browser to receive the next piece of the url!\&quot;)\n\npass_tests()&quot;}]},&quot;filepath&quot;:&quot;new/content/courses/en/nlp-regex/units/nlp-regex-intro/lessons/nlp-regex-conceptual/exercises/quantifiers-fixed.en.yml&quot;},{&quot;node_type&quot;:&quot;exercise&quot;,&quot;locale&quot;:&quot;en&quot;,&quot;uuid&quot;:&quot;292b20ddff382fd901ae61e45e1d23ce&quot;,&quot;slug&quot;:&quot;quantifiers-optional&quot;,&quot;title&quot;:&quot;Quantifiers - Optional&quot;,&quot;workspace&quot;:{&quot;slug&quot;:&quot;nlp-regex-conceptual-quantifiers-optional-v0&quot;,&quot;type&quot;:&quot;python3&quot;,&quot;backend&quot;:&quot;workshop&quot;},&quot;instructionsandhints&quot;:[{&quot;instructions&quot;:&quot;The interactive applet in the browser allows you to enter a regular expression and see if it matches a string of text. If a character is matched, you&#x27;ll see it highlighted in green. If there&#x27;s a checkmark next to the string, you&#x27;ve completely matched the whole piece of text!\n\nEnter a regular expression that matches each of the strings listed below \&quot;Match these strings\&quot; and does NOT match any of the strings listed below \&quot;Don&#x27;t match these strings.\&quot;\n\nWhen you&#x27;ve entered a regular expression that matches the appropriate strings, a key will appear in the browser. Add the key to the end of the URL in the code editor and run the code to unlock the next exercise!&quot;}],&quot;components&quot;:[{&quot;url&quot;:&quot;https://s3.amazonaws.com/codecademy-content/courses/regex/build/index_all.html?query=8&quot;,&quot;_schema&quot;:&quot;WebBrowser&quot;},{&quot;files&quot;:[{&quot;filename&quot;:&quot;script.py&quot;}],&quot;navigator_disabled&quot;:true,&quot;_schema&quot;:&quot;PersistentCodeEditor&quot;},{&quot;content&quot;:&quot;You are working on a research project that summarizes the findings of primate behavioral scientists from around the world. Of particular interest to you are the scientists&#x27; observations of humor in chimpanzees, so you whip up some regex to find all occurrences of the word `humor` in the documents you have collected. To your dismay, your regex misses the observations of amusement written by scientists hailing from British English speaking countries, where the spelling of the word is `humour`. Optional quantifiers to the rescue!\n\n**_Optional quantifiers_**, indicated by the question mark `?`, allow us to indicate a character in a regex is optional, or can appear either `0` times or `1` time. For example, the regex `humou?r` matches the characters `humo`, then either `0` occurrences or `1` occurrence of the letter `u`, and finally the letter `r`. Note the `?` _only_ applies to the character directly before it.\n\nWith all quantifiers, we can take advantage of grouping to make even more advanced regexes. The regex `The monkey ate a (rotten)? banana` will completely match both `The monkey ate a rotten banana` and `The monkey ate a banana`.\n\nSince the `?` is a metacharacter, you need to use the escape character in your regex in order to match a question mark `?` in a piece of text. The regex `Aren&#x27;t owl monkeys beautiful\\?` will thus completely match the text `Aren&#x27;t owl monkeys beautiful?`.&quot;,&quot;_schema&quot;:&quot;Narrative&quot;}],&quot;tests&quot;:{&quot;checkpoints&quot;:&quot;checkpoint({\n instructions: &#x27;The interactive applet in the browser allows you to enter a regular expression and see if it matches a string of text. If a character is matched, you\\&#x27;ll see it highlighted in green. If there\\&#x27;s a checkmark next to the string, you\\&#x27;ve completely matched the whole piece of text!\\n\\nEnter a regular expression that matches each of the strings listed below \&quot;Match these strings\&quot; and does NOT match any of the strings listed below \&quot;Don\\&#x27;t match these strings.\&quot;\\n\\nWhen you\\&#x27;ve entered a regular expression that matches the appropriate strings, a key will appear in the browser. Add the key to the end of the URL in the code editor and run the code to unlock the next exercise!&#x27;,\n hint: &#x27;&#x27;\n}, function (Tests, callback)\n {\n Tests.pythonTest(&#x27;test1.py&#x27;, callback);\n });&quot;,&quot;files&quot;:[{&quot;filename&quot;:&quot;test1.py&quot;,&quot;content&quot;:&quot;load_file_in_context(&#x27;script.py&#x27;)\n\nif url != &#x27;https://s3.amazonaws.com/codecademy-content/courses/regex/onyourexcitingjourneylearningtocodeyouwill&#x27;:\n fail_tests(\&quot;Sorry, this is not the correct key to move on to the next exercise. Try to complete the activity in the browser to receive the next piece of the url!\&quot;)\n\npass_tests()&quot;}]},&quot;filepath&quot;:&quot;new/content/courses/en/nlp-regex/units/nlp-regex-intro/lessons/nlp-regex-conceptual/exercises/quantifiers-optional.en.yml&quot;},{&quot;node_type&quot;:&quot;exercise&quot;,&quot;locale&quot;:&quot;en&quot;,&quot;uuid&quot;:&quot;0288af2cf6a6fa9fdc8a3446ce866693&quot;,&quot;slug&quot;:&quot;quantifiers-kleene&quot;,&quot;title&quot;:&quot;Quantifiers - 0 or More, 1 or More&quot;,&quot;workspace&quot;:{&quot;slug&quot;:&quot;nlp-regex-conceptual-quantifiers-kleene-v0&quot;,&quot;type&quot;:&quot;python3&quot;,&quot;backend&quot;:&quot;workshop&quot;},&quot;instructionsandhints&quot;:[{&quot;instructions&quot;:&quot;The interactive applet in the browser allows you to enter a regular expression and see if it matches a string of text. If a character is matched, you&#x27;ll see it highlighted in green. If there&#x27;s a checkmark next to the string, you&#x27;ve completely matched the whole piece of text!\n\nEnter a regular expression that matches each of the strings listed below \&quot;Match these strings\&quot; and does NOT match any of the strings listed below \&quot;Don&#x27;t match these strings.\&quot;\n\nWhen you&#x27;ve entered a regular expression that matches the appropriate strings, a key will appear in the browser. Add the key to the end of the URL in the code editor and run the code to unlock the next exercise!&quot;}],&quot;components&quot;:[{&quot;url&quot;:&quot;https://s3.amazonaws.com/codecademy-content/courses/regex/build/index_all.html?query=9&quot;,&quot;_schema&quot;:&quot;WebBrowser&quot;},{&quot;files&quot;:[{&quot;filename&quot;:&quot;script.py&quot;}],&quot;navigator_disabled&quot;:true,&quot;_schema&quot;:&quot;PersistentCodeEditor&quot;},{&quot;content&quot;:&quot;In 1951, mathematician Stephen Cole Kleene developed a system to match patterns in written language with mathematical notation. This notation is now known as regular expressions!\n\nIn his honor, the next piece of regular expressions syntax we will learn is known as the Kleene star. The **_Kleene star_**, denoted with the asterisk `*`, is also a quantifier, and matches the preceding character `0` or more times. This means that the character doesn&#x27;t need to appear, can appear once, or can appear many many times.\n\nThe regex `meo*w` will match the characters `me`, followed by `0` or more `o`s, followed by a `w`. Thus the regex will match `mew`, `meow`, `meooow`, and `meoooooooooooow`.\n\nAnother useful quantifier is the **_Kleene plus_**, denoted by the plus `+`, which matches the preceding character `1` or more times. \n\nThe regex `meo+w` will match the characters `me`, followed by `1` or more `o`s, followed by a `w`. Thus the regex will match `meow`, `meooow`, and `meoooooooooooow`, but not match `mew`.\n\nLike all the other metacharacters, in order to match the symbols `*` and `+`, you need to use the escape character in your regex. The regex `My cat is a \\*` will completely match the text `My cat is a *`.&quot;,&quot;_schema&quot;:&quot;Narrative&quot;}],&quot;tests&quot;:{&quot;checkpoints&quot;:&quot;checkpoint({\n instructions: &#x27;The interactive applet in the browser allows you to enter a regular expression and see if it matches a string of text. If a character is matched, you\\&#x27;ll see it highlighted in green. If there\\&#x27;s a checkmark next to the string, you\\&#x27;ve completely matched the whole piece of text!\\n\\nEnter a regular expression that matches each of the strings listed below \&quot;Match these strings\&quot; and does NOT match any of the strings listed below \&quot;Don\\&#x27;t match these strings.\&quot;\\n\\nWhen you\\&#x27;ve entered a regular expression that matches the appropriate strings, a key will appear in the browser. Add the key to the end of the URL in the code editor and run the code to unlock the next exercise!&#x27;,\n hint: &#x27;&#x27;\n}, function (Tests, callback)\n {\n Tests.pythonTest(&#x27;test1.py&#x27;, callback);\n });&quot;,&quot;files&quot;:[{&quot;filename&quot;:&quot;test1.py&quot;,&quot;content&quot;:&quot;load_file_in_context(&#x27;script.py&#x27;)\n\nif url != &#x27;https://s3.amazonaws.com/codecademy-content/courses/regex/onyourexcitingjourneylearningtocodeyouwillfind&#x27;:\n fail_tests(\&quot;Sorry, this is not the correct key to move on to the next exercise. Try to complete the activity in the browser to receive the next piece of the url!\&quot;)\n\npass_tests()&quot;}]},&quot;filepath&quot;:&quot;new/content/courses/en/nlp-regex/units/nlp-regex-intro/lessons/nlp-regex-conceptual/exercises/quantifiers-kleene.en.yml&quot;},{&quot;node_type&quot;:&quot;exercise&quot;,&quot;locale&quot;:&quot;en&quot;,&quot;uuid&quot;:&quot;d01d19204d4e20771993a95f270e2d4b&quot;,&quot;slug&quot;:&quot;anchors&quot;,&quot;title&quot;:&quot;Anchors&quot;,&quot;workspace&quot;:{&quot;slug&quot;:&quot;nlp-regex-conceptual-anchors-v0&quot;,&quot;type&quot;:&quot;python3&quot;,&quot;backend&quot;:&quot;workshop&quot;},&quot;instructionsandhints&quot;:[{&quot;instructions&quot;:&quot;The interactive applet in the browser allows you to enter a regular expression and see if it matches a string of text. If a character is matched, you&#x27;ll see it highlighted in green. If there&#x27;s a checkmark next to the string, you&#x27;ve completely matched the whole piece of text!\n\nEnter a regular expression that matches each of the strings listed below \&quot;Match these strings\&quot; and does NOT match any of the strings listed below \&quot;Don&#x27;t match these strings.\&quot;\n\nWhen you&#x27;ve entered a regular expression that matches the appropriate strings, a key will appear in the browser. Add the key to the end of the URL in the code editor and run the code to unlock the next exercise!\n\nWith this last key, you have the complete URL! Before proceeding to the next exercise, open the link in a new tab and see your surprise :)&quot;}],&quot;components&quot;:[{&quot;url&quot;:&quot;https://s3.amazonaws.com/codecademy-content/courses/regex/build/index_all.html?query=10&quot;,&quot;_schema&quot;:&quot;WebBrowser&quot;},{&quot;files&quot;:[{&quot;filename&quot;:&quot;script.py&quot;}],&quot;navigator_disabled&quot;:true,&quot;_schema&quot;:&quot;PersistentCodeEditor&quot;},{&quot;content&quot;:&quot;When writing regular expressions, it&#x27;s useful to make the expression as specific as possible in order to ensure that we do not match unintended text. To aid in this mission of specificity, we can use the anchor metacharacters. The **_anchors_** hat `^` and dollar sign `$` are used to match text at the start and end of a string, respectively.\n\nThe regex `^Monkeys: my mortal enemy$` will completely match the text `Monkeys: my mortal enemy` but not match `Spider Monkeys: my mortal enemy in the wild` or `Squirrel Monkeys: my mortal enemy in the wild`. The `^` ensures that the matched text begins with `Monkeys`, and the `$` ensures the matched text ends with `enemy`.\n\nWithout the anchor tags, the regex `Monkeys: my mortal enemy` will match the text `Monkeys: my mortal enemy` in both `Spider Monkeys: my mortal enemy in the wild` and `Squirrel Monkeys: my mortal enemy in the wild`.\n\nOnce again, as with all other metacharacters, in order to match the symbols `^` and `$`, you need to use the escape character in your regex. The regex `My spider monkey has \\$10\\^6 in the bank` will completely match the text `My spider monkey has $10^6 in the bank`.\n&quot;,&quot;_schema&quot;:&quot;Narrative&quot;}],&quot;tests&quot;:{&quot;checkpoints&quot;:&quot;checkpoint({\n instructions: &#x27;The interactive applet in the browser allows you to enter a regular expression and see if it matches a string of text. If a character is matched, you\\&#x27;ll see it highlighted in green. If there\\&#x27;s a checkmark next to the string, you\\&#x27;ve completely matched the whole piece of text!\\n\\nEnter a regular expression that matches each of the strings listed below \&quot;Match these strings\&quot; and does NOT match any of the strings listed below \&quot;Don\\&#x27;t match these strings.\&quot;\\n\\nWhen you\\&#x27;ve entered a regular expression that matches the appropriate strings, a key will appear in the browser. Add the key to the end of the URL in the code editor and run the code to unlock the next exercise!\\n\\nWith this last key, you have the complete URL! Before proceeding to the next exercise, open the link in a new tab and see your surprise :)&#x27;,\n hint: &#x27;&#x27;\n}, function (Tests, callback)\n {\n Tests.pythonTest(&#x27;test1.py&#x27;, callback);\n });&quot;,&quot;files&quot;:[{&quot;filename&quot;:&quot;test1.py&quot;,&quot;content&quot;:&quot;load_file_in_context(&#x27;script.py&#x27;)\n\nif url != &#x27;https://s3.amazonaws.com/codecademy-content/courses/regex/onyourexcitingjourneylearningtocodeyouwillfindthis.gif&#x27;:\n fail_tests(\&quot;Sorry, this is not the correct key to move on to the next exercise. Try to complete the activity in the browser to receive the next piece of the url!\&quot;)\n\npass_tests()&quot;}]},&quot;filepath&quot;:&quot;new/content/courses/en/nlp-regex/units/nlp-regex-intro/lessons/nlp-regex-conceptual/exercises/anchors.en.yml&quot;},{&quot;node_type&quot;:&quot;exercise&quot;,&quot;locale&quot;:&quot;en&quot;,&quot;uuid&quot;:&quot;21203e331a46c36bc0d53573aa824c38&quot;,&quot;slug&quot;:&quot;review&quot;,&quot;title&quot;:&quot;Review&quot;,&quot;workspace&quot;:{&quot;slug&quot;:&quot;nlp-regex-conceptual-review-v0&quot;,&quot;type&quot;:&quot;python3&quot;,&quot;backend&quot;:&quot;workshop&quot;},&quot;instructionsandhints&quot;:[],&quot;components&quot;:[{&quot;url&quot;:&quot;https://s3.amazonaws.com/codecademy-content/courses/regex/build/index_all.html?query=11&quot;,&quot;_schema&quot;:&quot;WebBrowser&quot;},{&quot;files&quot;:[{&quot;filename&quot;:&quot;script.py&quot;}],&quot;navigator_disabled&quot;:true,&quot;_schema&quot;:&quot;PersistentCodeEditor&quot;},{&quot;content&quot;:&quot;Do you feel those regular expression superpowers coursing through your body? Do you just want to scream `ah+` really loud? Awesome! You are now ready to take these skills and use them out in the wild. Before beginning your adventures, let&#x27;s review what we&#x27;ve learned.\n* _Regular expressions_ are special sequences of characters that describe a pattern of text that is to be matched\n* We can use _literals_ to match the exact characters that we desire\n* _Alternation_, using the pipe symbol `|`, allows us to match the text preceding and following the `|`\n* _Character sets_, denoted by a pair of brackets `[]`, let us match one character from a series of characters\n* _Wildcards_, represented by the period or dot `.`, will match any single character (letter, number, symbol or whitespace)\n* _Ranges_ allow us to specify a range of characters in which we can make a match\n* _Shorthand character classes_ like `\\w`, `\\d` and `\\s` represent the ranges representing word characters, digit characters, and whitespace characters, respectively\n* _Groupings_, denoted with parentheses `()`, group parts of a regular expression together, and allows us to limit alternation to part of a regex\n* _Fixed quantifiers_, represented with curly braces `{}`, let us indicate the exact quantity or a range of quantity of a character we wish to match\n* _Optional quantifiers_, indicated by the question mark `?`, allow us to indicate a character in a regex is optional, or can appear either `0` times or `1` time\n* The _Kleene star_, denoted with the asterisk `*`, is a quantifier that matches the preceding character `0` or more times\n* The _Kleene plus_, denoted by the plus `+`, matches the preceding character `1` or more times\n* The _anchor_ symbols hat `^` and dollar sign `$` are used to match text at the start and end of a string, respectively&quot;,&quot;instructions&quot;:&quot;The interactive applet in the browser allows you to enter a regular expression and see if it matches a string of text. If a character is matched, you&#x27;ll see it highlighted in green. If there&#x27;s a checkmark next to the string, you&#x27;ve completely matched the whole piece of text!\n\nEnter a regular expression that matches each of the telephone numbers listed below \&quot;Match these strings\&quot;. This is a tricky one, so have some fun. Good luck!&quot;,&quot;_schema&quot;:&quot;Narrative&quot;}],&quot;tests&quot;:{},&quot;filepath&quot;:&quot;new/content/courses/en/nlp-regex/units/nlp-regex-intro/lessons/nlp-regex-conceptual/exercises/review.en.yml&quot;}]},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;In this lesson you will learn the syntax of regular expressions and how you can utilize them to match and search text data!&quot;,&quot;published_exercise_ids&quot;:[&quot;9a0e4971733e1114aebaf07a1acdc8be&quot;,&quot;270da082e3f4f88c97f50577bac226c3&quot;,&quot;60500b0fae7892761542f989ae0c8162&quot;,&quot;954fcac0ffd9bb70f7d44f00a78055bf&quot;,&quot;e221a8deeec70eb6f377896dabcda4b9&quot;,&quot;4d5fdf72e2477edb0b353882df66beff&quot;,&quot;8d275d6ffac05c5debdd95948ed9cf0a&quot;,&quot;b0dff74c19f9d19a07ba16ea5284c39c&quot;,&quot;f9fe554eba89cb12bb0aa0e9a5092661&quot;,&quot;292b20ddff382fd901ae61e45e1d23ce&quot;,&quot;0288af2cf6a6fa9fdc8a3446ce866693&quot;,&quot;d01d19204d4e20771993a95f270e2d4b&quot;,&quot;21203e331a46c36bc0d53573aa824c38&quot;]},&quot;a9b97b3c2c3346921f09b30266338db3&quot;:{&quot;uuid&quot;:&quot;a9b97b3c2c3346921f09b30266338db3&quot;,&quot;type&quot;:&quot;lesson&quot;,&quot;slug&quot;:&quot;introduction-to-php-form-validation&quot;,&quot;meta&quot;:{},&quot;title&quot;:&quot;Introduction to PHP Form Validation&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:90,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;Learn the basic theory and practice of validating and sanitizing user input. &quot;,&quot;published_exercise_ids&quot;:[&quot;e7050fc1bff5adab669352b7e6a4e548&quot;,&quot;629358b403ff5282a9c05954615d1239&quot;,&quot;acc78aeff7b61a90f9ad6bb968e13d53&quot;,&quot;e69a1693871521cdb769ecbf6e3785f0&quot;,&quot;45fb6e264adcd0610da4ea464b7f065f&quot;,&quot;86f697a4ce70fad9dff3a00ed742fd52&quot;,&quot;dbbaf5e8e8293ce85b701bbe0968b67a&quot;,&quot;27f3f2449b040f8503b95f584ef1c1e0&quot;,&quot;478bc7a8a21b26d1eba12fb48f08a6f2&quot;,&quot;c036ae5d52c896d751af203b2ae4ff3c&quot;,&quot;b1f2da23ce0b51e5e7d95e6617fb5cdb&quot;,&quot;b29c1c2be24f40e293b29d6cd8fb6970&quot;]},&quot;551aaeb0c663d2e05bf30ecf3d51dc03&quot;:{&quot;uuid&quot;:&quot;551aaeb0c663d2e05bf30ecf3d51dc03&quot;,&quot;type&quot;:&quot;quiz&quot;,&quot;slug&quot;:&quot;php-form-validation-quiz&quot;,&quot;meta&quot;:{&quot;is_free&quot;:null},&quot;title&quot;:&quot;PHP Form Validation&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:15,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;Test your knowledge of validating HTML forms using PHP.&quot;,&quot;published_exercise_ids&quot;:[]},&quot;032e20b63cfbabfbaee7c08b6ca8de89&quot;:{&quot;uuid&quot;:&quot;032e20b63cfbabfbaee7c08b6ca8de89&quot;,&quot;type&quot;:&quot;project&quot;,&quot;slug&quot;:&quot;bobby-tables&quot;,&quot;meta&quot;:{&quot;is_free&quot;:null,&quot;task_count&quot;:15},&quot;title&quot;:&quot;Bobby Tables&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:30,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:&quot;https://codecademy-content.s3.amazonaws.com/courses/PHP_FORMS/tables.jpg&quot;,&quot;description&quot;:&quot;Use PHP to protect your site from infiltration attempts.&quot;,&quot;published_exercise_ids&quot;:[]},&quot;1b942e5ebfcb96d1ec54d8355d2db877&quot;:{&quot;uuid&quot;:&quot;1b942e5ebfcb96d1ec54d8355d2db877&quot;,&quot;type&quot;:&quot;video&quot;,&quot;slug&quot;:&quot;classes-and-objects-video&quot;,&quot;meta&quot;:{},&quot;title&quot;:&quot;Classes and Objects&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:7,&quot;content&quot;:{&quot;description&quot;:&quot;Before we dig into the syntax for classes and objects, find what classes and objects are all about and how they support the object-oriented programming paradigm.&quot;,&quot;body&quot;:null},&quot;youtube_id&quot;:&quot;nVrQO2eVU7A&quot;,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;Before we dig into the syntax for classes and objects, find what classes and objects are all about and how they support the object-oriented programming paradigm.&quot;,&quot;published_exercise_ids&quot;:[]},&quot;ce2d0c75531a5d245a709a6f4ea64996&quot;:{&quot;uuid&quot;:&quot;ce2d0c75531a5d245a709a6f4ea64996&quot;,&quot;type&quot;:&quot;lesson&quot;,&quot;slug&quot;:&quot;php-classes&quot;,&quot;meta&quot;:{},&quot;title&quot;:&quot;Classes and Objects&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:30,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;Learn what classes are and how to create your own in PHP.&quot;,&quot;published_exercise_ids&quot;:[&quot;4f481661babddb3860950a3a8d46890d&quot;,&quot;895aea2454b99f11e6483a6c76f8d4b6&quot;,&quot;0b6070b655a6befeeb79eacac2e75a4f&quot;,&quot;42d47153a76bd5d704673950e7c5b424&quot;,&quot;d740b0c824ae6aec898c3cc1cc1aae9d&quot;,&quot;f02603368b45535214cda040424a62a5&quot;,&quot;1b0c8db9e3676499f190e8dbacaa28da&quot;,&quot;5c1032a07ec71246539a602a37cb9238&quot;,&quot;f94475f0f88783baa2b1a5d9b7bbcf0e&quot;,&quot;500748f6b27ab79d3323de2e1d39bf73&quot;,&quot;56af6146478d46e441c5375bf3c461ee&quot;,&quot;1a35f64a1d6e02eddc91a287ebb3dfae&quot;]},&quot;1c63c9e88a6fbd14b82cccda3dc17133&quot;:{&quot;uuid&quot;:&quot;1c63c9e88a6fbd14b82cccda3dc17133&quot;,&quot;type&quot;:&quot;quiz&quot;,&quot;slug&quot;:&quot;php-classes-and-objects-quiz&quot;,&quot;meta&quot;:{&quot;is_free&quot;:null},&quot;title&quot;:&quot;Classes and Objects&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:15,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:null,&quot;description&quot;:&quot;Check your understanding of object oriented programming in PHP.&quot;,&quot;published_exercise_ids&quot;:[]},&quot;90fab2027d9a69b0a36823c375f02794&quot;:{&quot;uuid&quot;:&quot;90fab2027d9a69b0a36823c375f02794&quot;,&quot;type&quot;:&quot;project&quot;,&quot;slug&quot;:&quot;php-going-to-bed&quot;,&quot;meta&quot;:{&quot;is_free&quot;:null,&quot;task_count&quot;:17},&quot;title&quot;:&quot;Going to Bed&quot;,&quot;locale&quot;:null,&quot;tags&quot;:[],&quot;time&quot;:30,&quot;content&quot;:{},&quot;youtube_id&quot;:null,&quot;thumbnail_url&quot;:&quot;https://codecademy-content.s3.amazonaws.com/courses/php-classes/koala.jpg&quot;,&quot;description&quot;:&quot;Use your knowledge of object oriented programming and PHP to help put a group of animals to bed.&quot;,&quot;published_exercise_ids&quot;:[]}}}},&quot;footer&quot;:{&quot;data&quot;:{&quot;urls&quot;:{&quot;nav&quot;:{&quot;company&quot;:{&quot;about&quot;:&quot;/about&quot;,&quot;codecademy_for_business&quot;:&quot;/business&quot;,&quot;shop&quot;:&quot;https://shop.codecademy.com/&quot;,&quot;stories&quot;:&quot;/stories&quot;,&quot;jobs&quot;:&quot;/about/careers&quot;},&quot;resources&quot;:{&quot;beta_catalog&quot;:&quot;/beta-catalog/subject/beta&quot;,&quot;articles&quot;:&quot;/articles&quot;,&quot;forums&quot;:&quot;https://discuss.codecademy.com/&quot;,&quot;help&quot;:&quot;/help&quot;,&quot;blog&quot;:&quot;/blog&quot;}},&quot;legal&quot;:{&quot;policy&quot;:&quot;/policy&quot;,&quot;terms&quot;:&quot;/terms&quot;}},&quot;filters&quot;:{&quot;language&quot;:{&quot;filter_order&quot;:[&quot;html-css&quot;,&quot;python&quot;,&quot;javascript&quot;,&quot;java&quot;,&quot;sql&quot;,&quot;bash&quot;,&quot;ruby&quot;,&quot;c-plus-plus&quot;,&quot;r&quot;,&quot;c-sharp&quot;,&quot;php&quot;,&quot;go&quot;],&quot;names&quot;:{&quot;html-css&quot;:&quot;HTML \u0026 CSS&quot;,&quot;python&quot;:&quot;Python&quot;,&quot;javascript&quot;:&quot;JavaScript&quot;,&quot;java&quot;:&quot;Java&quot;,&quot;sql&quot;:&quot;SQL&quot;,&quot;bash&quot;:&quot;Bash/Shell&quot;,&quot;ruby&quot;:&quot;Ruby&quot;,&quot;c-plus-plus&quot;:&quot;C++&quot;,&quot;r&quot;:&quot;R&quot;,&quot;c-sharp&quot;:&quot;C#&quot;,&quot;php&quot;:&quot;PHP&quot;,&quot;go&quot;:&quot;Go&quot;}},&quot;subject&quot;:{&quot;filter_order&quot;:[&quot;all&quot;,&quot;web-development&quot;,&quot;programming&quot;,&quot;data-science&quot;,&quot;partnerships&quot;,&quot;design&quot;,&quot;game-development&quot;],&quot;names&quot;:{&quot;all&quot;:&quot;Full Catalog&quot;,&quot;web-development&quot;:&quot;Web Development&quot;,&quot;programming&quot;:&quot;Programming&quot;,&quot;data-science&quot;:&quot;Data Science&quot;,&quot;partnerships&quot;:&quot;Partnerships&quot;,&quot;design&quot;:&quot;Design&quot;,&quot;game-development&quot;:&quot;Game Development&quot;}}}}},&quot;currentUser&quot;:{&quot;showPaidTrialCTA&quot;:true,&quot;experiments&quot;:{&quot;exp_credit_card_trial_2019_06_27_existing_users&quot;:&quot;control&quot;,&quot;exp_credit_card_trial_2019_8_21_existing_users&quot;:&quot;variant&quot;},&quot;isInCreditCardTrialExperiment&quot;:true,&quot;roles&quot;:{&quot;isAnonymous&quot;:false,&quot;isPro&quot;:false,&quot;isProTrial&quot;:true,&quot;proTrialStartedAt&quot;:&quot;2019-08-16T15:09:03-04:00&quot;,&quot;isProTrialActive&quot;:false,&quot;isProTrialExpired&quot;:true,&quot;isReviewer&quot;:false,&quot;isAdmin&quot;:false,&quot;isCustomerService&quot;:false,&quot;isFree&quot;:true,&quot;isInIntensive&quot;:false,&quot;isInTrialPlanInTrialPeriod&quot;:false},&quot;careerInterest&quot;:null,&quot;mostRecentProgramId&quot;:null,&quot;achievements&quot;:[{&quot;_id&quot;:&quot;599b84a4821b96d2700002e7&quot;,&quot;c&quot;:&quot;2017-08-21T21:11:00-04:00&quot;,&quot;container_id&quot;:null,&quot;container_type&quot;:null,&quot;n&quot;:&quot;Max Streak Count of 1&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;max-streak-1&quot;},{&quot;_id&quot;:&quot;599b86faaa33d1974600033d&quot;,&quot;c&quot;:&quot;2017-08-21T21:20:58-04:00&quot;,&quot;container_id&quot;:null,&quot;container_type&quot;:null,&quot;n&quot;:&quot;Lesson Completed: Structure&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;lesson-learn-html-css-structure&quot;},{&quot;_id&quot;:&quot;599b8849dd1ede5a14000353&quot;,&quot;c&quot;:&quot;2017-08-21T21:26:33-04:00&quot;,&quot;container_id&quot;:null,&quot;container_type&quot;:null,&quot;n&quot;:&quot;10 Exercises&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;exercises-10&quot;},{&quot;_id&quot;:&quot;5d5704ff5256dc83f00002f8&quot;,&quot;c&quot;:&quot;2019-08-16T15:33:18-04:00&quot;,&quot;container_id&quot;:null,&quot;container_type&quot;:null,&quot;n&quot;:&quot;Lesson Completed: Introduction to JavaScript &quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;lesson-introduction-to-javascript-introduction-to-javascript&quot;},{&quot;_id&quot;:&quot;5d59a54f7893103dc10046f6&quot;,&quot;c&quot;:&quot;2019-08-18T15:21:50-04:00&quot;,&quot;container_id&quot;:null,&quot;container_type&quot;:null,&quot;n&quot;:&quot;Max Streak Count of 3&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;max-streak-3&quot;},{&quot;_id&quot;:&quot;5d5a0660f4b4a45c1b000064&quot;,&quot;c&quot;:&quot;2019-08-18T22:15:59-04:00&quot;,&quot;container_id&quot;:null,&quot;container_type&quot;:null,&quot;n&quot;:&quot;Completed Project Kelvin Weather&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;project-complete-kelvin-weather-javascript&quot;},{&quot;_id&quot;:&quot;5d5a08e0d431399944000053&quot;,&quot;c&quot;:&quot;2019-08-18T22:26:39-04:00&quot;,&quot;container_id&quot;:null,&quot;container_type&quot;:null,&quot;n&quot;:&quot;Completed Project Dog Years&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;project-complete-dog-years-javascript&quot;},{&quot;_id&quot;:&quot;5d5a0961789310a8c2005392&quot;,&quot;c&quot;:&quot;2019-08-18T22:28:48-04:00&quot;,&quot;container_id&quot;:&quot;eb12916df237eb32f2ae5a879ceea170&quot;,&quot;container_type&quot;:&quot;module&quot;,&quot;n&quot;:&quot;Module Completed: JavaScript Introduction&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;module-eb12916df237eb32f2ae5a879ceea170&quot;},{&quot;_id&quot;:&quot;5d5a098ebb35074937005f8e&quot;,&quot;c&quot;:&quot;2019-08-18T22:29:33-04:00&quot;,&quot;container_id&quot;:&quot;0e969653ec966a2d11c073d966fa70a3&quot;,&quot;container_type&quot;:&quot;module&quot;,&quot;n&quot;:&quot;Module Completed: Learn JavaScript: Introduction&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;module-0e969653ec966a2d11c073d966fa70a3&quot;},{&quot;_id&quot;:&quot;5d5a098fbb35074937005f8f&quot;,&quot;c&quot;:&quot;2019-08-18T22:29:34-04:00&quot;,&quot;container_id&quot;:&quot;618f370efa82216fe3007375cf45ef87&quot;,&quot;container_type&quot;:&quot;module&quot;,&quot;n&quot;:&quot;Module Completed: Intro to JavaScript for APIs&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;module-618f370efa82216fe3007375cf45ef87&quot;},{&quot;_id&quot;:&quot;5d5a0990bb35074937005f90&quot;,&quot;c&quot;:&quot;2019-08-18T22:29:35-04:00&quot;,&quot;container_id&quot;:&quot;be2b676d0f8544bef541a6a8a569f62c&quot;,&quot;container_type&quot;:&quot;track&quot;,&quot;n&quot;:&quot;Milestone Completed: JavaScript Fundamentals&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;track-be2b676d0f8544bef541a6a8a569f62c&quot;},{&quot;_id&quot;:&quot;5d5b206f764d542292000289&quot;,&quot;c&quot;:&quot;2019-08-19T18:19:26-04:00&quot;,&quot;container_id&quot;:null,&quot;container_type&quot;:null,&quot;n&quot;:&quot;Lesson Completed: &quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;lesson-introduction-to-javascript-&quot;},{&quot;_id&quot;:&quot;5d5b273ae12cd123e700041a&quot;,&quot;c&quot;:&quot;2019-08-19T18:48:25-04:00&quot;,&quot;container_id&quot;:null,&quot;container_type&quot;:null,&quot;n&quot;:&quot;Completed Project Magic Eight Ball&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;project-complete-magic-eight-ball-1&quot;},{&quot;_id&quot;:&quot;5d5c386dbb3507cad20005d2&quot;,&quot;c&quot;:&quot;2019-08-20T14:14:04-04:00&quot;,&quot;container_id&quot;:null,&quot;container_type&quot;:null,&quot;n&quot;:&quot;Max Streak Count of 5&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;max-streak-5&quot;},{&quot;_id&quot;:&quot;5d5c45baba702896ae000056&quot;,&quot;c&quot;:&quot;2019-08-20T15:10:49-04:00&quot;,&quot;container_id&quot;:null,&quot;container_type&quot;:null,&quot;n&quot;:&quot;Lesson Completed: Python Syntax&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;lesson-learn-python-python-syntax&quot;},{&quot;_id&quot;:&quot;5d5ee9cfe12cd1e7a600013b&quot;,&quot;c&quot;:&quot;2019-08-22T15:15:26-04:00&quot;,&quot;container_id&quot;:null,&quot;container_type&quot;:null,&quot;n&quot;:&quot;Lesson Completed: &quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;lesson-learn-python-&quot;},{&quot;_id&quot;:&quot;5d5eec8e52da9a1e9500018e&quot;,&quot;c&quot;:&quot;2019-08-22T15:27:09-04:00&quot;,&quot;container_id&quot;:null,&quot;container_type&quot;:null,&quot;n&quot;:&quot;Completed Project Python Mad Libs&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;project-complete-madlibs-1&quot;},{&quot;_id&quot;:&quot;5d5eed0f7893106f02000284&quot;,&quot;c&quot;:&quot;2019-08-22T15:29:18-04:00&quot;,&quot;container_id&quot;:&quot;93e0d2d4089ca9e9aa187788b4f27f42&quot;,&quot;container_type&quot;:&quot;module&quot;,&quot;n&quot;:&quot;Module Completed: Strings and Console Output&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;module-93e0d2d4089ca9e9aa187788b4f27f42&quot;},{&quot;_id&quot;:&quot;5d5eed117893106f02000285&quot;,&quot;c&quot;:&quot;2019-08-22T15:29:20-04:00&quot;,&quot;container_id&quot;:&quot;be6e584b5dae02485d36818712b3bcd1&quot;,&quot;container_type&quot;:&quot;module&quot;,&quot;n&quot;:&quot;Module Completed: Strings and Console Output&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;module-be6e584b5dae02485d36818712b3bcd1&quot;},{&quot;_id&quot;:&quot;5d6971047893106f13000656&quot;,&quot;c&quot;:&quot;2019-08-30T14:55:00-04:00&quot;,&quot;container_id&quot;:&quot;f1e7316ec589b944c18e89c7fc466616&quot;,&quot;container_type&quot;:&quot;module&quot;,&quot;n&quot;:&quot;Module Completed: Student Becomes the Teacher&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;module-f1e7316ec589b944c18e89c7fc466616&quot;},{&quot;_id&quot;:&quot;5d77ec3cbb350771560000c2&quot;,&quot;c&quot;:&quot;2019-09-10T14:32:27-04:00&quot;,&quot;container_id&quot;:&quot;b7e7d77a958c626034a28ecd242bca51&quot;,&quot;container_type&quot;:&quot;module&quot;,&quot;n&quot;:&quot;Module Completed: Exam Statistics&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;module-b7e7d77a958c626034a28ecd242bca51&quot;},{&quot;_id&quot;:&quot;5d7a9399a5f93d86a8000014&quot;,&quot;c&quot;:&quot;2019-09-12T14:51:05-04:00&quot;,&quot;container_id&quot;:null,&quot;container_type&quot;:null,&quot;n&quot;:&quot;Course Completed: Learn Python 2&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;course-learn-python&quot;},{&quot;_id&quot;:&quot;5d7a98aae12cd164ae0000d9&quot;,&quot;c&quot;:&quot;2019-09-12T15:12:42-04:00&quot;,&quot;container_id&quot;:null,&quot;container_type&quot;:null,&quot;n&quot;:&quot;Lesson Completed: Introduction to Ruby&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;lesson-learn-ruby-introduction-to-ruby&quot;},{&quot;_id&quot;:&quot;5d7a991778931086a0000575&quot;,&quot;c&quot;:&quot;2019-09-12T15:14:30-04:00&quot;,&quot;container_id&quot;:&quot;f69ba9cb33c5bf0f8bca7b80032b09e8&quot;,&quot;container_type&quot;:&quot;module&quot;,&quot;n&quot;:&quot;Module Completed: Introduction to Ruby&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;module-f69ba9cb33c5bf0f8bca7b80032b09e8&quot;},{&quot;_id&quot;:&quot;5d7a9bc65256dc12fa00014e&quot;,&quot;c&quot;:&quot;2019-09-12T15:25:58-04:00&quot;,&quot;container_id&quot;:null,&quot;container_type&quot;:null,&quot;n&quot;:&quot;Lesson Completed: &quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;lesson-learn-ruby-&quot;},{&quot;_id&quot;:&quot;5d7a9c9f7893104def000862&quot;,&quot;c&quot;:&quot;2019-09-12T15:29:35-04:00&quot;,&quot;container_id&quot;:&quot;5b8a502f64c3fd1aaf03b4640232c593&quot;,&quot;container_type&quot;:&quot;module&quot;,&quot;n&quot;:&quot;Module Completed: Control Flow in Ruby&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;module-5b8a502f64c3fd1aaf03b4640232c593&quot;},{&quot;_id&quot;:&quot;5d7fd59c789310a5d1001bd9&quot;,&quot;c&quot;:&quot;2019-09-16T14:34:04-04:00&quot;,&quot;container_id&quot;:&quot;cab4cecb78efe53022fdd8f2a095489a&quot;,&quot;container_type&quot;:&quot;module&quot;,&quot;n&quot;:&quot;Module Completed: Looping with Ruby&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;module-cab4cecb78efe53022fdd8f2a095489a&quot;},{&quot;_id&quot;:&quot;5d827840bb35079ccb0018fe&quot;,&quot;c&quot;:&quot;2019-09-18T14:32:32-04:00&quot;,&quot;container_id&quot;:&quot;6eda3b34a07286a0e19571a977fd8e75&quot;,&quot;container_type&quot;:&quot;module&quot;,&quot;n&quot;:&quot;Module Completed: Arrays and Hashes&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;module-6eda3b34a07286a0e19571a977fd8e75&quot;},{&quot;_id&quot;:&quot;5d827c737893107398002311&quot;,&quot;c&quot;:&quot;2019-09-18T14:50:27-04:00&quot;,&quot;container_id&quot;:&quot;19988a8a50128dc75b7b48e81b91942e&quot;,&quot;container_type&quot;:&quot;module&quot;,&quot;n&quot;:&quot;Module Completed: Blocks and Sorting&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;module-19988a8a50128dc75b7b48e81b91942e&quot;},{&quot;_id&quot;:&quot;5d827f50bb35078127000017&quot;,&quot;c&quot;:&quot;2019-09-18T15:02:40-04:00&quot;,&quot;container_id&quot;:&quot;3b3cca61dc07db8c4b6b0d5348832ab7&quot;,&quot;container_type&quot;:&quot;module&quot;,&quot;n&quot;:&quot;Module Completed: Hashes and Symbols&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;module-3b3cca61dc07db8c4b6b0d5348832ab7&quot;},{&quot;_id&quot;:&quot;5d851c71789310ffc200154c&quot;,&quot;c&quot;:&quot;2019-09-20T14:37:37-04:00&quot;,&quot;container_id&quot;:&quot;fff30931146605dec4d75ed23a5a5ce7&quot;,&quot;container_type&quot;:&quot;module&quot;,&quot;n&quot;:&quot;Module Completed: Refactoring&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;module-fff30931146605dec4d75ed23a5a5ce7&quot;},{&quot;_id&quot;:&quot;5d8a60b3bb3507cd59000e06&quot;,&quot;c&quot;:&quot;2019-09-24T14:30:11-04:00&quot;,&quot;container_id&quot;:&quot;7fc13d39a3ec8831a7513b207f900699&quot;,&quot;container_type&quot;:&quot;module&quot;,&quot;n&quot;:&quot;Module Completed: Blocks, Procs, and Lambdas&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;module-7fc13d39a3ec8831a7513b207f900699&quot;},{&quot;_id&quot;:&quot;5d8a6596bb3507112d001205&quot;,&quot;c&quot;:&quot;2019-09-24T14:51:02-04:00&quot;,&quot;container_id&quot;:&quot;d7ef79d869e0c7e3fc51f96af5ce76af&quot;,&quot;container_type&quot;:&quot;module&quot;,&quot;n&quot;:&quot;Module Completed: Object-Oriented Programming, Part I&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;module-d7ef79d869e0c7e3fc51f96af5ce76af&quot;},{&quot;_id&quot;:&quot;5d8d0282bb3507e17a00074b&quot;,&quot;c&quot;:&quot;2019-09-26T14:25:05-04:00&quot;,&quot;container_id&quot;:&quot;030a013bc24da417d2844cdea4946457&quot;,&quot;container_type&quot;:&quot;module&quot;,&quot;n&quot;:&quot;Module Completed: Object-Oriented Programming, Part II&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;module-030a013bc24da417d2844cdea4946457&quot;},{&quot;_id&quot;:&quot;5d8d0282bb3507e17a00074f&quot;,&quot;c&quot;:&quot;2019-09-26T14:25:06-04:00&quot;,&quot;container_id&quot;:&quot;1c05e0382bc5681c824c4cbe85c126fd&quot;,&quot;container_type&quot;:&quot;track&quot;,&quot;n&quot;:&quot;Milestone Completed: Learn Ruby&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;track-1c05e0382bc5681c824c4cbe85c126fd&quot;},{&quot;_id&quot;:&quot;5d8d02905256dc3cea0001ea&quot;,&quot;c&quot;:&quot;2019-09-26T14:25:20-04:00&quot;,&quot;container_id&quot;:null,&quot;container_type&quot;:null,&quot;n&quot;:&quot;Course Completed: Learn Ruby&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;course-learn-ruby&quot;},{&quot;_id&quot;:&quot;5d9399bd52da9a08bf000445&quot;,&quot;c&quot;:&quot;2019-10-01T14:23:57-04:00&quot;,&quot;container_id&quot;:null,&quot;container_type&quot;:null,&quot;n&quot;:&quot;Lesson Completed: Hello World&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;lesson-learn-c-plus-plus-cpp-hello-world&quot;},{&quot;_id&quot;:&quot;5d93a110b9d821b6cb000135&quot;,&quot;c&quot;:&quot;2019-10-01T14:55:11-04:00&quot;,&quot;container_id&quot;:null,&quot;container_type&quot;:null,&quot;n&quot;:&quot;Lesson Completed: &quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;lesson-learn-c-plus-plus-&quot;},{&quot;_id&quot;:&quot;5d9e277ef4b4a4d300000369&quot;,&quot;c&quot;:&quot;2019-10-09T14:31:26-04:00&quot;,&quot;container_id&quot;:null,&quot;container_type&quot;:null,&quot;n&quot;:&quot;Course Completed: Learn C++&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;course-learn-c-plus-plus&quot;},{&quot;_id&quot;:&quot;5da8b0b7bd532bd2530002c5&quot;,&quot;c&quot;:&quot;2019-10-17T14:19:35-04:00&quot;,&quot;container_id&quot;:null,&quot;container_type&quot;:null,&quot;n&quot;:&quot;Lesson Completed: Introduction to PHP&quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;lesson-learn-php-intro-php&quot;},{&quot;_id&quot;:&quot;5da8b5e1f4b4a49f2f0002b0&quot;,&quot;c&quot;:&quot;2019-10-17T14:41:37-04:00&quot;,&quot;container_id&quot;:null,&quot;container_type&quot;:null,&quot;n&quot;:&quot;Lesson Completed: &quot;,&quot;r&quot;:true,&quot;s&quot;:&quot;lesson-learn-php-&quot;}],&quot;id&quot;:&quot;599b8469961bae55e50002c4&quot;,&quot;profileImage&quot;:&quot;https://www.gravatar.com/avatar/ce5342f21f7c19d7d30e6ed3ddd28ddb?s=140\u0026d=retro&quot;,&quot;programEnrollments&quot;:{},&quot;courseEnrollments&quot;:[&quot;1c05e0382bc5681c824c4cbe85c126fd&quot;,&quot;705dcb15de0da4dd9d9fc4f3274b430e&quot;,&quot;9eb0741e5ebef1f9f58a53bfac67d3a7&quot;,&quot;b74a2390dfc4127fa5d43fe147425ad0&quot;,&quot;b97fd4d87a816c761a674af1b5391ef1&quot;,&quot;d24ce3aa4ed99ac04afffec4a78e2e44&quot;],&quot;username&quot;:&quot;liamrwitt&quot;,&quot;handle&quot;:&quot;liamrwitt&quot;,&quot;email&quot;:&quot;liamr.witt@gmail.com&quot;,&quot;currentStreak&quot;:1,&quot;hasTodaysStreak&quot;:true,&quot;subscription&quot;:{&quot;isProPaused&quot;:false,&quot;isProScheduledToPause&quot;:false},&quot;canAccessProExclusiveCourse&quot;:false,&quot;showProAds&quot;:{&quot;currency&quot;:&quot;USD&quot;,&quot;currency_symbol&quot;:&quot;$&quot;,&quot;formatted_price&quot;:&quot;239.88&quot;,&quot;formatted_monthly_price&quot;:&quot;19.99&quot;,&quot;formatted_savings&quot;:&quot;240&quot;,&quot;formatted_savings_six_months&quot;:&quot;120&quot;,&quot;period&quot;:&quot;year&quot;,&quot;period_number&quot;:12,&quot;plan_id&quot;:&quot;proAnnualV4a&quot;,&quot;price&quot;:23988,&quot;title&quot;:&quot;Annual Plan&quot;,&quot;title_2&quot;:&quot;12 Month Subscription&quot;,&quot;link&quot;:&quot;/subscriptions/proAnnualV4a/checkout&quot;,&quot;recommended&quot;:true,&quot;saving_percent&quot;:50,&quot;monthly_price_without_savings&quot;:&quot;39.99&quot;,&quot;price_without_savings&quot;:&quot;479.88&quot;,&quot;trial_days&quot;:0}},&quot;proExclusive&quot;:{&quot;courses&quot;:[&quot;learn-python-3&quot;,&quot;learn-web-scraping&quot;,&quot;learn-circuitpython&quot;,&quot;learn-javascript-unit-testing&quot;,&quot;learn-testing-for-web-development&quot;,&quot;machine-learning&quot;,&quot;linear-data-structures&quot;,&quot;complex-data-structures&quot;,&quot;learn-recursion-python&quot;,&quot;data-processing-pandas&quot;,&quot;intro-statistics-numpy&quot;,&quot;learn-navigation-design&quot;,&quot;sorting-algorithms&quot;,&quot;search-algorithms&quot;,&quot;data-visualization-python&quot;,&quot;build-interactive-websites&quot;,&quot;javascript-errors-debugging&quot;,&quot;technical-interview-practice-python&quot;,&quot;natural-language-processing&quot;,&quot;practical-data-cleaning&quot;,&quot;learn-d3&quot;,&quot;learn-vue-js&quot;,&quot;learn-node-js&quot;,&quot;learn-bootstrap&quot;,&quot;learn-rails&quot;,&quot;learn-jquery&quot;,&quot;learn-sass&quot;,&quot;deploy-a-website&quot;,&quot;machine-learning&quot;,&quot;learn-responsive-design&quot;,&quot;sql-analyzing-business-metrics&quot;,&quot;learn-express&quot;,&quot;introduction-to-blockchain&quot;,&quot;learn-node-sqlite&quot;,&quot;sql-table-transformation&quot;,&quot;learn-color-design&quot;,&quot;asynchronous-javascript&quot;,&quot;learn-statistics-with-python&quot;,&quot;rails-auth&quot;,&quot;ibm-watson&quot;,&quot;learn-node-sqlite&quot;,&quot;learn-git&quot;,&quot;learn-the-command-line&quot;]},&quot;features&quot;:{&quot;active&quot;:[&quot;hotjar_tracking&quot;,&quot;expose_location_data_for_anonymous_users&quot;,&quot;content_service_migrated&quot;,&quot;ohio&quot;,&quot;contentful&quot;,&quot;search&quot;,&quot;replace_intensives_with_skill_paths&quot;,&quot;override_ga_referrer&quot;,&quot;community_landing_page&quot;,&quot;onboarding_all_entry_v2&quot;,&quot;skill_paths_in_onboarding&quot;,&quot;business_sales_page&quot;,&quot;executable_code_practice&quot;,&quot;fall_campaign_2019&quot;]},&quot;scenes&quot;:{&quot;dashboard&quot;:{&quot;selectedSlug&quot;:&quot;learn-php&quot;,&quot;upNextContentInfo&quot;:{&quot;learn-php&quot;:{&quot;nextContentItemId&quot;:&quot;a9b97b3c2c3346921f09b30266338db3&quot;}}}}},&quot;prerender&quot;:{&quot;duration&quot;:165.532337,&quot;hostname&quot;:&quot;app-212\n&quot;}}"><header class="container__1mcnsTuVKPm9oryFJotFgJ" data-testid="AppHeader"><div class="wrapper___FtNJJFPKOjBRYeSq7eqS appBar__129_mhJfJMvqCAAnzWUiOg"><div class="contentContainer__3rYV5hCbkX8Z5A1gQ1uzq4 contentWrapper__2MvNFVWRnpySbai8R2WkFr"><div class="section__3D8Pj6VoF7z2B78gHIMkm6 sectionLeft__1ZxE4qxswlSZVqzj66Yx4I"><div class="headerList__2cFXAvupVnCAG6idZMcZeQ"><div><div id="logo" class="headerTab__7DqFFcu9PUAVmLhZhb1z9"><a data-btn="true" class="basicBtn__3TwUrbvJiSQ1fnlE6tLXUs btn__28utPbbbrFvjM_kBjYubUO btn-brand-dark-blue__2mZAGNDeIumVOjdEzxUnP0 flat__PCxKRaciwPQZPxRchKpFY logo__1W8ukLXybN8rEWBCNwhgft" data-testid="header-logo" href="/"><img alt="Codecademy logo" class="image__2CSw5dhd1g0C30kO8pF64Z" src="/webpack/renderer/d7285ffbbd0ca6d1d2179f7d22ea1f67.svg"/></a></div></div></div><div class="headerList__2cFXAvupVnCAG6idZMcZeQ showOnDesktop__x7795RqOCp8DJ5csmbNfA"><div><div id="catalog" class="headerTab__7DqFFcu9PUAVmLhZhb1z9"><a data-btn="true" class="basicBtn__3TwUrbvJiSQ1fnlE6tLXUs btn__28utPbbbrFvjM_kBjYubUO btn-brand-dark-blue__2mZAGNDeIumVOjdEzxUnP0 flat__PCxKRaciwPQZPxRchKpFY plainNavLink__3HOhfdWRb8Qvz5PAsJIJ2G navLink__1vFiVOfSXmydFMhnUFq3wn" data-testid="header-catalog" href="/catalog/subject/all">Catalog</a></div></div><div><div id="pricing" class="headerTab__7DqFFcu9PUAVmLhZhb1z9"><a data-btn="true" class="basicBtn__3TwUrbvJiSQ1fnlE6tLXUs btn__28utPbbbrFvjM_kBjYubUO btn-brand-dark-blue__2mZAGNDeIumVOjdEzxUnP0 flat__PCxKRaciwPQZPxRchKpFY plainNavLink__3HOhfdWRb8Qvz5PAsJIJ2G navLink__1vFiVOfSXmydFMhnUFq3wn" data-testid="header-pricing" href="/pro/membership">Pricing</a></div></div></div></div><div class="section__3D8Pj6VoF7z2B78gHIMkm6 sectionRight__2x_UrYa_JCgcfdfLU2FgeF"><div class="headerList__2cFXAvupVnCAG6idZMcZeQ showOnDesktop__x7795RqOCp8DJ5csmbNfA"><div><div id="pro-button" class="headerTab__7DqFFcu9PUAVmLhZhb1z9"><a data-btn="true" data-testid="upgrade-link" data-cxlid="upgrade-link" target="_self" rel="noopener noreferrer" class="basicBtn__3TwUrbvJiSQ1fnlE6tLXUs btn__28utPbbbrFvjM_kBjYubUO btn-brand-purple__2HsGqL74je_Znllj96ANu8" href="/subscriptions/proAnnualV4a_7trial/checkout?redirect_url=%2Flearn%2Flearn-php&amp;checkoutv2=true">Try Pro For Free</a></div></div><div><div id="header-search" class="headerTab__7DqFFcu9PUAVmLhZhb1z9"><button data-btn="true" class="basicBtn__3TwUrbvJiSQ1fnlE6tLXUs btn__28utPbbbrFvjM_kBjYubUO btn-brand-dark-blue__2mZAGNDeIumVOjdEzxUnP0 flat__PCxKRaciwPQZPxRchKpFY plainNavLink__3HOhfdWRb8Qvz5PAsJIJ2G navLink__1vFiVOfSXmydFMhnUFq3wn searchButton__2KTNKvMt9TPJiavoQUJujx navIcon__1afXwT9LAGTVR9mbgskuX6" data-testid="header-search"><svg fill="currentColor" height="24" version="1.1" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><title>Search Icon</title><path d="M9.583 2a7.583 7.583 0 0 1 7.584 7.583 7.601 7.601 0 0 1-1.82 4.935l.315.315h.921l5.834 5.834-1.75 1.75-5.834-5.834v-.921l-.315-.315a7.601 7.601 0 0 1-4.935 1.82A7.583 7.583 0 0 1 9.583 2zm0 2.333a5.228 5.228 0 0 0-5.25 5.25 5.228 5.228 0 0 0 5.25 5.25 5.228 5.228 0 0 0 5.25-5.25 5.228 5.228 0 0 0-5.25-5.25z" fill-rule="nonzero"></path></svg></button></div></div><div><div data-testid="header-notifications" id="header-notifications" class="headerTab__7DqFFcu9PUAVmLhZhb1z9"><div class="wrapper__6QRVYmjk_3YS02hd62vt_"><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW menuBell__2Nr0ohYN0pFGGkYvuQTOW3"><span aria-label="notifications" event="click"><button data-btn="true" class="basicBtn__3TwUrbvJiSQ1fnlE6tLXUs btn__28utPbbbrFvjM_kBjYubUO btn-brand-dark-blue__2mZAGNDeIumVOjdEzxUnP0 flat__PCxKRaciwPQZPxRchKpFY bell__1YtD95EH2FFL2VPN2P9xf_ dark__2CPc5p16zIYybEy6xf4RyX" type="button"><svg fill="currentColor" height="24" version="1.1" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><title>Bell Icon</title><path d="M16 17H8v-6.5C8 8 9.778 6 12 6s4 2 4 4.5V17zm2.118-1v-5.5c0-3.07-2.014-5.64-4.706-6.32V3.5c0-.828-.632-1.5-1.412-1.5-.78 0-1.412.672-1.412 1.5v.68c-2.7.68-4.706 3.25-4.706 6.32V16L4 18v1h16v-1l-1.882-2zM12 22a2 2 0 0 0 2-2h-4a2 2 0 0 0 2 2z"></path></svg></button></span></div></div></div></div><div><div data-testid="header-avatar" id="header-avatar" class="headerTab__7DqFFcu9PUAVmLhZhb1z9"><div class="wrapper__6QRVYmjk_3YS02hd62vt_"><button aria-label="my account dropdown toggle" class="toggle__304aSMDrfBOZgFLaPhzXIa" id="dropdown-toggle" type="button"><div class="avatar__Cb1WP643p3tcQpIWLY9R8 round__3de1LBOIa74IvzHDeRG3lQ small__3duTmSpEyR9eEpaRITuulp"><img alt="Avatar" aria-label="my account dropdown toggle" class="image__1Q4r5fS8Aj_N6s2tLcrFks" src="https://www.gravatar.com/avatar/ce5342f21f7c19d7d30e6ed3ddd28ddb?s=140&amp;d=retro"/></div></button></div></div></div></div><div class="headerList__2cFXAvupVnCAG6idZMcZeQ showOnMobile__1OZznV0-PypUlpSlqeVOCi"><div><div id="header-notifications-mobile" class="headerTab__7DqFFcu9PUAVmLhZhb1z9"><button data-btn="true" class="basicBtn__3TwUrbvJiSQ1fnlE6tLXUs navIcon__1afXwT9LAGTVR9mbgskuX6 mobileMenuIcon__2iU10MZCuDwrFoyvSKibBV" data-testid="header-mobile-notifications"><button data-btn="true" class="basicBtn__3TwUrbvJiSQ1fnlE6tLXUs btn__28utPbbbrFvjM_kBjYubUO btn-brand-dark-blue__2mZAGNDeIumVOjdEzxUnP0 flat__PCxKRaciwPQZPxRchKpFY bell__1YtD95EH2FFL2VPN2P9xf_ dark__2CPc5p16zIYybEy6xf4RyX" type="button"><svg fill="currentColor" height="24" version="1.1" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><title>Bell Icon</title><path d="M16 17H8v-6.5C8 8 9.778 6 12 6s4 2 4 4.5V17zm2.118-1v-5.5c0-3.07-2.014-5.64-4.706-6.32V3.5c0-.828-.632-1.5-1.412-1.5-.78 0-1.412.672-1.412 1.5v.68c-2.7.68-4.706 3.25-4.706 6.32V16L4 18v1h16v-1l-1.882-2zM12 22a2 2 0 0 0 2-2h-4a2 2 0 0 0 2 2z"></path></svg></button></button></div></div><div><div id="menu" class="headerTab__7DqFFcu9PUAVmLhZhb1z9"><button data-btn="true" aria-label="Open settings menu" class="basicBtn__3TwUrbvJiSQ1fnlE6tLXUs btn__28utPbbbrFvjM_kBjYubUO btn-brand-dark-blue__2mZAGNDeIumVOjdEzxUnP0 flat__PCxKRaciwPQZPxRchKpFY mobileMenu__1s0HsnJPdQ9POmpFNFNSRS navIcon__1afXwT9LAGTVR9mbgskuX6 mobileMenuIcon__2iU10MZCuDwrFoyvSKibBV" data-testid="header-mobile-menu"><svg fill="currentColor" height="24" version="1.1" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><g fill-rule="nonzero"><path d="M20 11v2H4v-2zM20 17v2H4v-2zM20 5v2H4V5z"></path></g></svg></button></div></div></div></div></div></div></header><main data-testid="course-landing-page" id="course-landing-page"><header class="header__24U-03TosybsS_ZhgIhsYj" style="background-color:#2daaa6"><h1>Learn PHP</h1><p data-testid="header-course-description">Learn the fundamentals of PHP, one of the most popular languages of modern web development.</p><a data-btn="true" aria-label="Resume 88%" class="basicBtn__3TwUrbvJiSQ1fnlE6tLXUs btn__28utPbbbrFvjM_kBjYubUO btn-brand-yellow__3Va_ov9M5cnAGyxnVURUOm large__238UM39NEYe58xDl3ZOw3L round__1JFGRnHnlZuDxyjmGZDKYr courseResumeButton__1Lkbl-B6WWX_GzxTFOWkhe" href="/courses/learn-php/lessons/introduction-to-php-form-validation/resume">Resume 88%</a><div class="resetProgress__3FYBz5-A5jzIDQnJg31RYl"><div><div><button data-btn="true" class="basicBtn__3TwUrbvJiSQ1fnlE6tLXUs btn__28utPbbbrFvjM_kBjYubUO btn-red__2vkka5vttjxjK7LX9VAx2g resetProgressLinkResumeCard__24LOR1KVm4RlFF39QuWSGw resetProgressLinkResumeCard__24LOR1KVm4RlFF39QuWSGw"><svg class="resetIconResumeCard__fEBiHC4FnHYTPDVggvd2e" fill="currentColor" height="24" version="1.1" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><title>Reset Icon</title><path d="M5.338 10.91A6.752 6.752 0 0 1 12 5.25c1.868 0 3.533.776 4.748 2.003l-3.623 3.622H21V3l-2.644 2.644A8.953 8.953 0 0 0 12 3c-4.621 0-8.488 3.426-9 7.91m15.724 2.265a6.752 6.752 0 0 1-6.648 5.575c-1.867 0-3.532-.776-4.747-2.003l3.622-3.622H3.076V21l2.644-2.644A8.953 8.953 0 0 0 12.076 21 9.002 9.002 0 0 0 21 13.177"></path></svg>Reset Progress</button></div></div></div><img class="courseIllustration__3nG5af2j-TXTOqx3dn-FqW" alt="" src="/webpack/renderer/bf5c2cdedc7008c04ffe0b974fcd41b1.svg"/><div class="headerBottom__1eUZ5-QpIM5ar-aH5au1U6"></div></header><section><div><div class="tabList__XveT2ZV7p6lUD6IpeWr__ tabList__2v-8dufmBsPqOtclVbG65p" role="tablist"><div class="tabListItem__xOW3w0T27OEayNPsi4BH8 tab__3LdM-pM3qninJC4JLyRICk" role="tab"><a href="039377340541547823-0-panel" id="039377340541547823-0" class="tab__1-YcJ9pzXURXI_O8IcCAde" tabindex="0">Overview</a></div><div class="tabListItem__xOW3w0T27OEayNPsi4BH8 tab__3LdM-pM3qninJC4JLyRICk" role="tab"><a href="039377340541547823-1-panel" id="039377340541547823-1" class="tab__1-YcJ9pzXURXI_O8IcCAde active__zf7XVFpoPljuOU-Bh-Ppc activeTab__QnOp-brFz8ywOpyUhQZrG" tabindex="0">Syllabus</a></div></div><div id="039377340541547823-0-panel" aria-labelledby="039377340541547823-0" role="tabpanel" style="display:none"></div><div id="039377340541547823-1-panel" aria-labelledby="039377340541547823-1" role="tabpanel" style="display:block"><div class="syllabusPanel__fDIOofnbLoAnncmKBJneT"><div class="flex__1DXxWA75qIiehzlE9Hl8tx col__32wIqoLfm46b6qhAEZ5JTW"><div class="flex__1DXxWA75qIiehzlE9Hl8tx col__32wIqoLfm46b6qhAEZ5JTW complete__2SFh8_026WSGDrR0sTL39k unit__3RntiOH92_C2Qz3AFIp9QP"><button type="button" aria-label="Hide content" event="click" class="asButton__2u5u6yOsjyO99GaSdsS57u"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW undefined unitHeader__1yXffLbR_sV4mwToocJ8Xy"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW unitIndex__OWfiBC_oDCvQw6uLMqmuw">1</div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-1__2MULxgCsHBgUDk-aYSx7JV col__32wIqoLfm46b6qhAEZ5JTW justify-center__3pT-DZ7IHuUR16BSDfuQCW unitName__1bz3SLz8wptF6ohnryfiuL"><div class="noWrap__2HJBWz6VT42GH46vZrVrJ7">Getting Started with PHP</div></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW accordionToggle__1bkA7_yKB7yx8ZO8Ro31z4"><em name="arrow-thin-down" class="i__3Sy29_7-FMzo-1b7QcjE0i ikona-arrow-thin-down__a0QB0lXVs2TmDbLsnsE5d"></em></div></div></button><div style="height:0px"><div class=""><div style="opacity:0;transform:translateY(-10px) translateZ(0)"><div class="flex__1DXxWA75qIiehzlE9Hl8tx col__32wIqoLfm46b6qhAEZ5JTW syllabusUnit__10EUlvRO8oRDLfREo981BY"><div class=""><div data-testid="content-item-lesson"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/courses/learn-php/lessons/intro-php/resume" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="Introduction to PHP"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 complete__1HqSnAol0jN68YDOU1yOpn"><em name="check-thin" class="i__3Sy29_7-FMzo-1b7QcjE0i ikona-check-thin__yxoENGNQAOzgMKYwAINry"></em></div></div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">Introduction to PHP</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Interactive Lesson</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u progressContainer__1LtOdVFCufewgg6nhfFF42"><div class="progress__14E_LRew9UU8eZ7F0Vdhq7">100<!-- -->%</div></div></div></a></div><div data-testid="content-item-quiz"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/pro/membership" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="Introduction to PHP"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="up__a7VljbOGTzfSGlKlhuufW connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 pro__2IeirOuPdlTEy1Fi8d7Krb"><div>PRO</div></div></div><svg class="proLogo__hqGLlKoJ7f8L7cLmi7nEU" height="32" viewBox="0 0 95 40" xmlns="http://www.w3.org/2000/svg"><g fill="currentColor" fill-rule="evenodd"><path d="m0 0h74v40h-74zm78 34h17v6h-17z" fill="currentColor"></path><path d="m13.971 23.67v6.82h-3.971v-20.145h6.82c4.749 0 7.253 2.965 7.253 6.62 0 3.625-2.504 6.705-7.253 6.705zm2.245-9.871h-2.245v6.446h2.245c2.187 0 3.77-1.036 3.77-3.28 0-2.245-1.583-3.166-3.77-3.166zm21.518 16.691-4.46-7.741h-2.821v7.741h-4v-20.145h7.568c4.404 0 6.994 2.62 6.994 6.13 0 1.9-.777 4.317-3.828 5.526l5.151 8.49h-4.604zm-.72-13.986c0-1.784-1.295-2.705-3.51-2.705h-3.051v5.468h3.05c2.216 0 3.511-1.036 3.511-2.763zm16.453-6.504c5.843 0 10.533 4.346 10.533 10.418s-4.69 10.417-10.533 10.417c-5.842 0-10.533-4.345-10.533-10.417s4.691-10.418 10.533-10.418zm0 17.152c3.799 0 6.36-2.878 6.36-6.734 0-3.857-2.561-6.734-6.36-6.734s-6.36 2.877-6.36 6.734c0 3.856 2.561 6.734 6.36 6.734z" fill="#fff"></path></g></svg><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">Introduction to PHP</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Multiple Choice Quiz</div></div></a></div></div></div></div></div></div></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx col__32wIqoLfm46b6qhAEZ5JTW complete__2SFh8_026WSGDrR0sTL39k unit__3RntiOH92_C2Qz3AFIp9QP"><button type="button" aria-label="Hide content" event="click" class="asButton__2u5u6yOsjyO99GaSdsS57u"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW undefined unitHeader__1yXffLbR_sV4mwToocJ8Xy"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW unitIndex__OWfiBC_oDCvQw6uLMqmuw">2</div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-1__2MULxgCsHBgUDk-aYSx7JV col__32wIqoLfm46b6qhAEZ5JTW justify-center__3pT-DZ7IHuUR16BSDfuQCW unitName__1bz3SLz8wptF6ohnryfiuL"><div class="noWrap__2HJBWz6VT42GH46vZrVrJ7">Learn PHP Variables</div></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW accordionToggle__1bkA7_yKB7yx8ZO8Ro31z4"><em name="arrow-thin-down" class="i__3Sy29_7-FMzo-1b7QcjE0i ikona-arrow-thin-down__a0QB0lXVs2TmDbLsnsE5d"></em></div></div></button><div style="height:0px"><div class=""><div style="opacity:0;transform:translateY(-10px) translateZ(0)"><div class="flex__1DXxWA75qIiehzlE9Hl8tx col__32wIqoLfm46b6qhAEZ5JTW syllabusUnit__10EUlvRO8oRDLfREo981BY"><div class=""><div data-testid="content-item-lesson"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/courses/learn-php/lessons/php-strings-and-variables/resume" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="PHP Strings and Variables"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 complete__1HqSnAol0jN68YDOU1yOpn"><em name="check-thin" class="i__3Sy29_7-FMzo-1b7QcjE0i ikona-check-thin__yxoENGNQAOzgMKYwAINry"></em></div></div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">PHP Strings and Variables</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Interactive Lesson</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u progressContainer__1LtOdVFCufewgg6nhfFF42"><div class="progress__14E_LRew9UU8eZ7F0Vdhq7">100<!-- -->%</div></div></div></a></div><div data-testid="content-item-quiz"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/pro/membership" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="PHP Strings and Variables Quiz"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 pro__2IeirOuPdlTEy1Fi8d7Krb"><div>PRO</div></div></div><svg class="proLogo__hqGLlKoJ7f8L7cLmi7nEU" height="32" viewBox="0 0 95 40" xmlns="http://www.w3.org/2000/svg"><g fill="currentColor" fill-rule="evenodd"><path d="m0 0h74v40h-74zm78 34h17v6h-17z" fill="currentColor"></path><path d="m13.971 23.67v6.82h-3.971v-20.145h6.82c4.749 0 7.253 2.965 7.253 6.62 0 3.625-2.504 6.705-7.253 6.705zm2.245-9.871h-2.245v6.446h2.245c2.187 0 3.77-1.036 3.77-3.28 0-2.245-1.583-3.166-3.77-3.166zm21.518 16.691-4.46-7.741h-2.821v7.741h-4v-20.145h7.568c4.404 0 6.994 2.62 6.994 6.13 0 1.9-.777 4.317-3.828 5.526l5.151 8.49h-4.604zm-.72-13.986c0-1.784-1.295-2.705-3.51-2.705h-3.051v5.468h3.05c2.216 0 3.511-1.036 3.511-2.763zm16.453-6.504c5.843 0 10.533 4.346 10.533 10.418s-4.69 10.417-10.533 10.417c-5.842 0-10.533-4.345-10.533-10.417s4.691-10.418 10.533-10.418zm0 17.152c3.799 0 6.36-2.878 6.36-6.734 0-3.857-2.561-6.734-6.36-6.734s-6.36 2.877-6.36 6.734c0 3.856 2.561 6.734 6.36 6.734z" fill="#fff"></path></g></svg><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">PHP Strings and Variables Quiz</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Multiple Choice Quiz</div></div></a></div><div data-testid="content-item-lesson"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/courses/learn-php/lessons/php-numbers/resume" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="PHP Numbers"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 complete__1HqSnAol0jN68YDOU1yOpn"><em name="check-thin" class="i__3Sy29_7-FMzo-1b7QcjE0i ikona-check-thin__yxoENGNQAOzgMKYwAINry"></em></div></div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">PHP Numbers</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Interactive Lesson</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u progressContainer__1LtOdVFCufewgg6nhfFF42"><div class="progress__14E_LRew9UU8eZ7F0Vdhq7">100<!-- -->%</div></div></div></a></div><div data-testid="content-item-quiz"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/pro/membership" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="PHP Numbers Quiz"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 pro__2IeirOuPdlTEy1Fi8d7Krb"><div>PRO</div></div></div><svg class="proLogo__hqGLlKoJ7f8L7cLmi7nEU" height="32" viewBox="0 0 95 40" xmlns="http://www.w3.org/2000/svg"><g fill="currentColor" fill-rule="evenodd"><path d="m0 0h74v40h-74zm78 34h17v6h-17z" fill="currentColor"></path><path d="m13.971 23.67v6.82h-3.971v-20.145h6.82c4.749 0 7.253 2.965 7.253 6.62 0 3.625-2.504 6.705-7.253 6.705zm2.245-9.871h-2.245v6.446h2.245c2.187 0 3.77-1.036 3.77-3.28 0-2.245-1.583-3.166-3.77-3.166zm21.518 16.691-4.46-7.741h-2.821v7.741h-4v-20.145h7.568c4.404 0 6.994 2.62 6.994 6.13 0 1.9-.777 4.317-3.828 5.526l5.151 8.49h-4.604zm-.72-13.986c0-1.784-1.295-2.705-3.51-2.705h-3.051v5.468h3.05c2.216 0 3.511-1.036 3.511-2.763zm16.453-6.504c5.843 0 10.533 4.346 10.533 10.418s-4.69 10.417-10.533 10.417c-5.842 0-10.533-4.345-10.533-10.417s4.691-10.418 10.533-10.418zm0 17.152c3.799 0 6.36-2.878 6.36-6.734 0-3.857-2.561-6.734-6.36-6.734s-6.36 2.877-6.36 6.734c0 3.856 2.561 6.734 6.36 6.734z" fill="#fff"></path></g></svg><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">PHP Numbers Quiz</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Multiple Choice Quiz</div></div></a></div><div data-testid="content-item-project"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/pro/membership" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="World Traveler"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="up__a7VljbOGTzfSGlKlhuufW connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 pro__2IeirOuPdlTEy1Fi8d7Krb"><div>PRO</div></div></div><svg class="proLogo__hqGLlKoJ7f8L7cLmi7nEU" height="32" viewBox="0 0 95 40" xmlns="http://www.w3.org/2000/svg"><g fill="currentColor" fill-rule="evenodd"><path d="m0 0h74v40h-74zm78 34h17v6h-17z" fill="currentColor"></path><path d="m13.971 23.67v6.82h-3.971v-20.145h6.82c4.749 0 7.253 2.965 7.253 6.62 0 3.625-2.504 6.705-7.253 6.705zm2.245-9.871h-2.245v6.446h2.245c2.187 0 3.77-1.036 3.77-3.28 0-2.245-1.583-3.166-3.77-3.166zm21.518 16.691-4.46-7.741h-2.821v7.741h-4v-20.145h7.568c4.404 0 6.994 2.62 6.994 6.13 0 1.9-.777 4.317-3.828 5.526l5.151 8.49h-4.604zm-.72-13.986c0-1.784-1.295-2.705-3.51-2.705h-3.051v5.468h3.05c2.216 0 3.511-1.036 3.511-2.763zm16.453-6.504c5.843 0 10.533 4.346 10.533 10.418s-4.69 10.417-10.533 10.417c-5.842 0-10.533-4.345-10.533-10.417s4.691-10.418 10.533-10.418zm0 17.152c3.799 0 6.36-2.878 6.36-6.734 0-3.857-2.561-6.734-6.36-6.734s-6.36 2.877-6.36 6.734c0 3.856 2.561 6.734 6.36 6.734z" fill="#fff"></path></g></svg><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">World Traveler</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Freeform Project</div></div></a></div></div></div></div></div></div></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx col__32wIqoLfm46b6qhAEZ5JTW complete__2SFh8_026WSGDrR0sTL39k unit__3RntiOH92_C2Qz3AFIp9QP"><button type="button" aria-label="Hide content" event="click" class="asButton__2u5u6yOsjyO99GaSdsS57u"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW undefined unitHeader__1yXffLbR_sV4mwToocJ8Xy"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW unitIndex__OWfiBC_oDCvQw6uLMqmuw">3</div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-1__2MULxgCsHBgUDk-aYSx7JV col__32wIqoLfm46b6qhAEZ5JTW justify-center__3pT-DZ7IHuUR16BSDfuQCW unitName__1bz3SLz8wptF6ohnryfiuL"><div class="noWrap__2HJBWz6VT42GH46vZrVrJ7">Introduction to Functions in PHP</div></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW accordionToggle__1bkA7_yKB7yx8ZO8Ro31z4"><em name="arrow-thin-down" class="i__3Sy29_7-FMzo-1b7QcjE0i ikona-arrow-thin-down__a0QB0lXVs2TmDbLsnsE5d"></em></div></div></button><div style="height:0px"><div class=""><div style="opacity:0;transform:translateY(-10px) translateZ(0)"><div class="flex__1DXxWA75qIiehzlE9Hl8tx col__32wIqoLfm46b6qhAEZ5JTW syllabusUnit__10EUlvRO8oRDLfREo981BY"><div class=""><div data-testid="content-item-lesson"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/courses/learn-php/lessons/introduction-to-php-functions/resume" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="Introduction to PHP Functions"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 complete__1HqSnAol0jN68YDOU1yOpn"><em name="check-thin" class="i__3Sy29_7-FMzo-1b7QcjE0i ikona-check-thin__yxoENGNQAOzgMKYwAINry"></em></div></div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">Introduction to PHP Functions</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Interactive Lesson</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u progressContainer__1LtOdVFCufewgg6nhfFF42"><div class="progress__14E_LRew9UU8eZ7F0Vdhq7">100<!-- -->%</div></div></div></a></div><div data-testid="content-item-quiz"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/pro/membership" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="Introduction to PHP Functions"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 pro__2IeirOuPdlTEy1Fi8d7Krb"><div>PRO</div></div></div><svg class="proLogo__hqGLlKoJ7f8L7cLmi7nEU" height="32" viewBox="0 0 95 40" xmlns="http://www.w3.org/2000/svg"><g fill="currentColor" fill-rule="evenodd"><path d="m0 0h74v40h-74zm78 34h17v6h-17z" fill="currentColor"></path><path d="m13.971 23.67v6.82h-3.971v-20.145h6.82c4.749 0 7.253 2.965 7.253 6.62 0 3.625-2.504 6.705-7.253 6.705zm2.245-9.871h-2.245v6.446h2.245c2.187 0 3.77-1.036 3.77-3.28 0-2.245-1.583-3.166-3.77-3.166zm21.518 16.691-4.46-7.741h-2.821v7.741h-4v-20.145h7.568c4.404 0 6.994 2.62 6.994 6.13 0 1.9-.777 4.317-3.828 5.526l5.151 8.49h-4.604zm-.72-13.986c0-1.784-1.295-2.705-3.51-2.705h-3.051v5.468h3.05c2.216 0 3.511-1.036 3.511-2.763zm16.453-6.504c5.843 0 10.533 4.346 10.533 10.418s-4.69 10.417-10.533 10.417c-5.842 0-10.533-4.345-10.533-10.417s4.691-10.418 10.533-10.418zm0 17.152c3.799 0 6.36-2.878 6.36-6.734 0-3.857-2.561-6.734-6.36-6.734s-6.36 2.877-6.36 6.734c0 3.856 2.561 6.734 6.36 6.734z" fill="#fff"></path></g></svg><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">Introduction to PHP Functions</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Multiple Choice Quiz</div></div></a></div><div data-testid="content-item-project"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/pro/membership" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="Mad Lib Functions"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="up__a7VljbOGTzfSGlKlhuufW connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 pro__2IeirOuPdlTEy1Fi8d7Krb"><div>PRO</div></div></div><svg class="proLogo__hqGLlKoJ7f8L7cLmi7nEU" height="32" viewBox="0 0 95 40" xmlns="http://www.w3.org/2000/svg"><g fill="currentColor" fill-rule="evenodd"><path d="m0 0h74v40h-74zm78 34h17v6h-17z" fill="currentColor"></path><path d="m13.971 23.67v6.82h-3.971v-20.145h6.82c4.749 0 7.253 2.965 7.253 6.62 0 3.625-2.504 6.705-7.253 6.705zm2.245-9.871h-2.245v6.446h2.245c2.187 0 3.77-1.036 3.77-3.28 0-2.245-1.583-3.166-3.77-3.166zm21.518 16.691-4.46-7.741h-2.821v7.741h-4v-20.145h7.568c4.404 0 6.994 2.62 6.994 6.13 0 1.9-.777 4.317-3.828 5.526l5.151 8.49h-4.604zm-.72-13.986c0-1.784-1.295-2.705-3.51-2.705h-3.051v5.468h3.05c2.216 0 3.511-1.036 3.511-2.763zm16.453-6.504c5.843 0 10.533 4.346 10.533 10.418s-4.69 10.417-10.533 10.417c-5.842 0-10.533-4.345-10.533-10.417s4.691-10.418 10.533-10.418zm0 17.152c3.799 0 6.36-2.878 6.36-6.734 0-3.857-2.561-6.734-6.36-6.734s-6.36 2.877-6.36 6.734c0 3.856 2.561 6.734 6.36 6.734z" fill="#fff"></path></g></svg><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">Mad Lib Functions</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Freeform Project</div></div></a></div></div></div></div></div></div></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx col__32wIqoLfm46b6qhAEZ5JTW complete__2SFh8_026WSGDrR0sTL39k unit__3RntiOH92_C2Qz3AFIp9QP"><button type="button" aria-label="Hide content" event="click" class="asButton__2u5u6yOsjyO99GaSdsS57u"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW undefined unitHeader__1yXffLbR_sV4mwToocJ8Xy"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW unitIndex__OWfiBC_oDCvQw6uLMqmuw">4</div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-1__2MULxgCsHBgUDk-aYSx7JV col__32wIqoLfm46b6qhAEZ5JTW justify-center__3pT-DZ7IHuUR16BSDfuQCW unitName__1bz3SLz8wptF6ohnryfiuL"><div class="noWrap__2HJBWz6VT42GH46vZrVrJ7">PHP Built-in Functions</div></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW accordionToggle__1bkA7_yKB7yx8ZO8Ro31z4"><em name="arrow-thin-down" class="i__3Sy29_7-FMzo-1b7QcjE0i ikona-arrow-thin-down__a0QB0lXVs2TmDbLsnsE5d"></em></div></div></button><div style="height:0px"><div class=""><div style="opacity:0;transform:translateY(-10px) translateZ(0)"><div class="flex__1DXxWA75qIiehzlE9Hl8tx col__32wIqoLfm46b6qhAEZ5JTW syllabusUnit__10EUlvRO8oRDLfREo981BY"><div class=""><div data-testid="content-item-lesson"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/courses/learn-php/lessons/intro-to-built-in-php-functions/resume" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="Intro to Built-in PHP Functions"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 complete__1HqSnAol0jN68YDOU1yOpn"><em name="check-thin" class="i__3Sy29_7-FMzo-1b7QcjE0i ikona-check-thin__yxoENGNQAOzgMKYwAINry"></em></div></div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">Intro to Built-in PHP Functions</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Interactive Lesson</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u progressContainer__1LtOdVFCufewgg6nhfFF42"><div class="progress__14E_LRew9UU8eZ7F0Vdhq7">100<!-- -->%</div></div></div></a></div><div data-testid="content-item-quiz"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/pro/membership" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="Intro to Built-in PHP Functions"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 pro__2IeirOuPdlTEy1Fi8d7Krb"><div>PRO</div></div></div><svg class="proLogo__hqGLlKoJ7f8L7cLmi7nEU" height="32" viewBox="0 0 95 40" xmlns="http://www.w3.org/2000/svg"><g fill="currentColor" fill-rule="evenodd"><path d="m0 0h74v40h-74zm78 34h17v6h-17z" fill="currentColor"></path><path d="m13.971 23.67v6.82h-3.971v-20.145h6.82c4.749 0 7.253 2.965 7.253 6.62 0 3.625-2.504 6.705-7.253 6.705zm2.245-9.871h-2.245v6.446h2.245c2.187 0 3.77-1.036 3.77-3.28 0-2.245-1.583-3.166-3.77-3.166zm21.518 16.691-4.46-7.741h-2.821v7.741h-4v-20.145h7.568c4.404 0 6.994 2.62 6.994 6.13 0 1.9-.777 4.317-3.828 5.526l5.151 8.49h-4.604zm-.72-13.986c0-1.784-1.295-2.705-3.51-2.705h-3.051v5.468h3.05c2.216 0 3.511-1.036 3.511-2.763zm16.453-6.504c5.843 0 10.533 4.346 10.533 10.418s-4.69 10.417-10.533 10.417c-5.842 0-10.533-4.345-10.533-10.417s4.691-10.418 10.533-10.418zm0 17.152c3.799 0 6.36-2.878 6.36-6.734 0-3.857-2.561-6.734-6.36-6.734s-6.36 2.877-6.36 6.734c0 3.856 2.561 6.734 6.36 6.734z" fill="#fff"></path></g></svg><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">Intro to Built-in PHP Functions</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Multiple Choice Quiz</div></div></a></div><div data-testid="content-item-project"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/pro/membership" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="The Hitchhiker&#x27;s Guide to PHP Math Functions"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="up__a7VljbOGTzfSGlKlhuufW connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 pro__2IeirOuPdlTEy1Fi8d7Krb"><div>PRO</div></div></div><svg class="proLogo__hqGLlKoJ7f8L7cLmi7nEU" height="32" viewBox="0 0 95 40" xmlns="http://www.w3.org/2000/svg"><g fill="currentColor" fill-rule="evenodd"><path d="m0 0h74v40h-74zm78 34h17v6h-17z" fill="currentColor"></path><path d="m13.971 23.67v6.82h-3.971v-20.145h6.82c4.749 0 7.253 2.965 7.253 6.62 0 3.625-2.504 6.705-7.253 6.705zm2.245-9.871h-2.245v6.446h2.245c2.187 0 3.77-1.036 3.77-3.28 0-2.245-1.583-3.166-3.77-3.166zm21.518 16.691-4.46-7.741h-2.821v7.741h-4v-20.145h7.568c4.404 0 6.994 2.62 6.994 6.13 0 1.9-.777 4.317-3.828 5.526l5.151 8.49h-4.604zm-.72-13.986c0-1.784-1.295-2.705-3.51-2.705h-3.051v5.468h3.05c2.216 0 3.511-1.036 3.511-2.763zm16.453-6.504c5.843 0 10.533 4.346 10.533 10.418s-4.69 10.417-10.533 10.417c-5.842 0-10.533-4.345-10.533-10.417s4.691-10.418 10.533-10.418zm0 17.152c3.799 0 6.36-2.878 6.36-6.734 0-3.857-2.561-6.734-6.36-6.734s-6.36 2.877-6.36 6.734c0 3.856 2.561 6.734 6.36 6.734z" fill="#fff"></path></g></svg><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">The Hitchhiker&#x27;s Guide to PHP Math Functions</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Freeform Project</div></div></a></div></div></div></div></div></div></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx col__32wIqoLfm46b6qhAEZ5JTW complete__2SFh8_026WSGDrR0sTL39k unit__3RntiOH92_C2Qz3AFIp9QP"><button type="button" aria-label="Hide content" event="click" class="asButton__2u5u6yOsjyO99GaSdsS57u"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW undefined unitHeader__1yXffLbR_sV4mwToocJ8Xy"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW unitIndex__OWfiBC_oDCvQw6uLMqmuw">5</div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-1__2MULxgCsHBgUDk-aYSx7JV col__32wIqoLfm46b6qhAEZ5JTW justify-center__3pT-DZ7IHuUR16BSDfuQCW unitName__1bz3SLz8wptF6ohnryfiuL"><div class="noWrap__2HJBWz6VT42GH46vZrVrJ7">Learn PHP Arrays</div></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW accordionToggle__1bkA7_yKB7yx8ZO8Ro31z4"><em name="arrow-thin-down" class="i__3Sy29_7-FMzo-1b7QcjE0i ikona-arrow-thin-down__a0QB0lXVs2TmDbLsnsE5d"></em></div></div></button><div style="height:0px"><div class=""><div style="opacity:0;transform:translateY(-10px) translateZ(0)"><div class="flex__1DXxWA75qIiehzlE9Hl8tx col__32wIqoLfm46b6qhAEZ5JTW syllabusUnit__10EUlvRO8oRDLfREo981BY"><div class=""><div data-testid="content-item-lesson"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/courses/learn-php/lessons/ordered-arrays/resume" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="Ordered Arrays"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 complete__1HqSnAol0jN68YDOU1yOpn"><em name="check-thin" class="i__3Sy29_7-FMzo-1b7QcjE0i ikona-check-thin__yxoENGNQAOzgMKYwAINry"></em></div></div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">Ordered Arrays</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Interactive Lesson</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u progressContainer__1LtOdVFCufewgg6nhfFF42"><div class="progress__14E_LRew9UU8eZ7F0Vdhq7">100<!-- -->%</div></div></div></a></div><div data-testid="content-item-quiz"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/pro/membership" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="Ordered Arrays Quiz"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 pro__2IeirOuPdlTEy1Fi8d7Krb"><div>PRO</div></div></div><svg class="proLogo__hqGLlKoJ7f8L7cLmi7nEU" height="32" viewBox="0 0 95 40" xmlns="http://www.w3.org/2000/svg"><g fill="currentColor" fill-rule="evenodd"><path d="m0 0h74v40h-74zm78 34h17v6h-17z" fill="currentColor"></path><path d="m13.971 23.67v6.82h-3.971v-20.145h6.82c4.749 0 7.253 2.965 7.253 6.62 0 3.625-2.504 6.705-7.253 6.705zm2.245-9.871h-2.245v6.446h2.245c2.187 0 3.77-1.036 3.77-3.28 0-2.245-1.583-3.166-3.77-3.166zm21.518 16.691-4.46-7.741h-2.821v7.741h-4v-20.145h7.568c4.404 0 6.994 2.62 6.994 6.13 0 1.9-.777 4.317-3.828 5.526l5.151 8.49h-4.604zm-.72-13.986c0-1.784-1.295-2.705-3.51-2.705h-3.051v5.468h3.05c2.216 0 3.511-1.036 3.511-2.763zm16.453-6.504c5.843 0 10.533 4.346 10.533 10.418s-4.69 10.417-10.533 10.417c-5.842 0-10.533-4.345-10.533-10.417s4.691-10.418 10.533-10.418zm0 17.152c3.799 0 6.36-2.878 6.36-6.734 0-3.857-2.561-6.734-6.36-6.734s-6.36 2.877-6.36 6.734c0 3.856 2.561 6.734 6.36 6.734z" fill="#fff"></path></g></svg><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">Ordered Arrays Quiz</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Multiple Choice Quiz</div></div></a></div><div data-testid="content-item-lesson"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/courses/learn-php/lessons/associative-arrays/resume" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="Associative Arrays"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 complete__1HqSnAol0jN68YDOU1yOpn"><em name="check-thin" class="i__3Sy29_7-FMzo-1b7QcjE0i ikona-check-thin__yxoENGNQAOzgMKYwAINry"></em></div></div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">Associative Arrays</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Interactive Lesson</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u progressContainer__1LtOdVFCufewgg6nhfFF42"><div class="progress__14E_LRew9UU8eZ7F0Vdhq7">100<!-- -->%</div></div></div></a></div><div data-testid="content-item-quiz"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/pro/membership" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="Associative Array Quiz"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 pro__2IeirOuPdlTEy1Fi8d7Krb"><div>PRO</div></div></div><svg class="proLogo__hqGLlKoJ7f8L7cLmi7nEU" height="32" viewBox="0 0 95 40" xmlns="http://www.w3.org/2000/svg"><g fill="currentColor" fill-rule="evenodd"><path d="m0 0h74v40h-74zm78 34h17v6h-17z" fill="currentColor"></path><path d="m13.971 23.67v6.82h-3.971v-20.145h6.82c4.749 0 7.253 2.965 7.253 6.62 0 3.625-2.504 6.705-7.253 6.705zm2.245-9.871h-2.245v6.446h2.245c2.187 0 3.77-1.036 3.77-3.28 0-2.245-1.583-3.166-3.77-3.166zm21.518 16.691-4.46-7.741h-2.821v7.741h-4v-20.145h7.568c4.404 0 6.994 2.62 6.994 6.13 0 1.9-.777 4.317-3.828 5.526l5.151 8.49h-4.604zm-.72-13.986c0-1.784-1.295-2.705-3.51-2.705h-3.051v5.468h3.05c2.216 0 3.511-1.036 3.511-2.763zm16.453-6.504c5.843 0 10.533 4.346 10.533 10.418s-4.69 10.417-10.533 10.417c-5.842 0-10.533-4.345-10.533-10.417s4.691-10.418 10.533-10.418zm0 17.152c3.799 0 6.36-2.878 6.36-6.734 0-3.857-2.561-6.734-6.36-6.734s-6.36 2.877-6.36 6.734c0 3.856 2.561 6.734 6.36 6.734z" fill="#fff"></path></g></svg><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">Associative Array Quiz</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Multiple Choice Quiz</div></div></a></div><div data-testid="content-item-project"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/pro/membership" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="Bob&#x27;s Budget"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="up__a7VljbOGTzfSGlKlhuufW connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 pro__2IeirOuPdlTEy1Fi8d7Krb"><div>PRO</div></div></div><svg class="proLogo__hqGLlKoJ7f8L7cLmi7nEU" height="32" viewBox="0 0 95 40" xmlns="http://www.w3.org/2000/svg"><g fill="currentColor" fill-rule="evenodd"><path d="m0 0h74v40h-74zm78 34h17v6h-17z" fill="currentColor"></path><path d="m13.971 23.67v6.82h-3.971v-20.145h6.82c4.749 0 7.253 2.965 7.253 6.62 0 3.625-2.504 6.705-7.253 6.705zm2.245-9.871h-2.245v6.446h2.245c2.187 0 3.77-1.036 3.77-3.28 0-2.245-1.583-3.166-3.77-3.166zm21.518 16.691-4.46-7.741h-2.821v7.741h-4v-20.145h7.568c4.404 0 6.994 2.62 6.994 6.13 0 1.9-.777 4.317-3.828 5.526l5.151 8.49h-4.604zm-.72-13.986c0-1.784-1.295-2.705-3.51-2.705h-3.051v5.468h3.05c2.216 0 3.511-1.036 3.511-2.763zm16.453-6.504c5.843 0 10.533 4.346 10.533 10.418s-4.69 10.417-10.533 10.417c-5.842 0-10.533-4.345-10.533-10.417s4.691-10.418 10.533-10.418zm0 17.152c3.799 0 6.36-2.878 6.36-6.734 0-3.857-2.561-6.734-6.36-6.734s-6.36 2.877-6.36 6.734c0 3.856 2.561 6.734 6.36 6.734z" fill="#fff"></path></g></svg><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">Bob&#x27;s Budget</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Freeform Project</div></div></a></div></div></div></div></div></div></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx col__32wIqoLfm46b6qhAEZ5JTW complete__2SFh8_026WSGDrR0sTL39k unit__3RntiOH92_C2Qz3AFIp9QP"><button type="button" aria-label="Hide content" event="click" class="asButton__2u5u6yOsjyO99GaSdsS57u"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW undefined unitHeader__1yXffLbR_sV4mwToocJ8Xy"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW unitIndex__OWfiBC_oDCvQw6uLMqmuw">6</div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-1__2MULxgCsHBgUDk-aYSx7JV col__32wIqoLfm46b6qhAEZ5JTW justify-center__3pT-DZ7IHuUR16BSDfuQCW unitName__1bz3SLz8wptF6ohnryfiuL"><div class="noWrap__2HJBWz6VT42GH46vZrVrJ7">HTML Form Handling in PHP</div></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW accordionToggle__1bkA7_yKB7yx8ZO8Ro31z4"><em name="arrow-thin-down" class="i__3Sy29_7-FMzo-1b7QcjE0i ikona-arrow-thin-down__a0QB0lXVs2TmDbLsnsE5d"></em></div></div></button><div style="height:0px"><div class=""><div style="opacity:0;transform:translateY(-10px) translateZ(0)"><div class="flex__1DXxWA75qIiehzlE9Hl8tx col__32wIqoLfm46b6qhAEZ5JTW syllabusUnit__10EUlvRO8oRDLfREo981BY"><div class=""><div data-testid="content-item-lesson"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/courses/learn-php/lessons/php-and-html/resume" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="PHP and HTML"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 complete__1HqSnAol0jN68YDOU1yOpn"><em name="check-thin" class="i__3Sy29_7-FMzo-1b7QcjE0i ikona-check-thin__yxoENGNQAOzgMKYwAINry"></em></div></div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">PHP and HTML</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Interactive Lesson</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u progressContainer__1LtOdVFCufewgg6nhfFF42"><div class="progress__14E_LRew9UU8eZ7F0Vdhq7">100<!-- -->%</div></div></div></a></div><div data-testid="content-item-lesson"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/courses/learn-php/lessons/html-form-handling-in-php/resume" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="HTML Form Handling in PHP"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 complete__1HqSnAol0jN68YDOU1yOpn"><em name="check-thin" class="i__3Sy29_7-FMzo-1b7QcjE0i ikona-check-thin__yxoENGNQAOzgMKYwAINry"></em></div></div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">HTML Form Handling in PHP</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Interactive Lesson</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u progressContainer__1LtOdVFCufewgg6nhfFF42"><div class="progress__14E_LRew9UU8eZ7F0Vdhq7">100<!-- -->%</div></div></div></a></div><div data-testid="content-item-quiz"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/pro/membership" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="HTML Form Handling in PHP"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 pro__2IeirOuPdlTEy1Fi8d7Krb"><div>PRO</div></div></div><svg class="proLogo__hqGLlKoJ7f8L7cLmi7nEU" height="32" viewBox="0 0 95 40" xmlns="http://www.w3.org/2000/svg"><g fill="currentColor" fill-rule="evenodd"><path d="m0 0h74v40h-74zm78 34h17v6h-17z" fill="currentColor"></path><path d="m13.971 23.67v6.82h-3.971v-20.145h6.82c4.749 0 7.253 2.965 7.253 6.62 0 3.625-2.504 6.705-7.253 6.705zm2.245-9.871h-2.245v6.446h2.245c2.187 0 3.77-1.036 3.77-3.28 0-2.245-1.583-3.166-3.77-3.166zm21.518 16.691-4.46-7.741h-2.821v7.741h-4v-20.145h7.568c4.404 0 6.994 2.62 6.994 6.13 0 1.9-.777 4.317-3.828 5.526l5.151 8.49h-4.604zm-.72-13.986c0-1.784-1.295-2.705-3.51-2.705h-3.051v5.468h3.05c2.216 0 3.511-1.036 3.511-2.763zm16.453-6.504c5.843 0 10.533 4.346 10.533 10.418s-4.69 10.417-10.533 10.417c-5.842 0-10.533-4.345-10.533-10.417s4.691-10.418 10.533-10.418zm0 17.152c3.799 0 6.36-2.878 6.36-6.734 0-3.857-2.561-6.734-6.36-6.734s-6.36 2.877-6.36 6.734c0 3.856 2.561 6.734 6.36 6.734z" fill="#fff"></path></g></svg><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">HTML Form Handling in PHP</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Multiple Choice Quiz</div></div></a></div><div data-testid="content-item-project"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/pro/membership" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="HTML - PHP Calculator"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="up__a7VljbOGTzfSGlKlhuufW connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 pro__2IeirOuPdlTEy1Fi8d7Krb"><div>PRO</div></div></div><svg class="proLogo__hqGLlKoJ7f8L7cLmi7nEU" height="32" viewBox="0 0 95 40" xmlns="http://www.w3.org/2000/svg"><g fill="currentColor" fill-rule="evenodd"><path d="m0 0h74v40h-74zm78 34h17v6h-17z" fill="currentColor"></path><path d="m13.971 23.67v6.82h-3.971v-20.145h6.82c4.749 0 7.253 2.965 7.253 6.62 0 3.625-2.504 6.705-7.253 6.705zm2.245-9.871h-2.245v6.446h2.245c2.187 0 3.77-1.036 3.77-3.28 0-2.245-1.583-3.166-3.77-3.166zm21.518 16.691-4.46-7.741h-2.821v7.741h-4v-20.145h7.568c4.404 0 6.994 2.62 6.994 6.13 0 1.9-.777 4.317-3.828 5.526l5.151 8.49h-4.604zm-.72-13.986c0-1.784-1.295-2.705-3.51-2.705h-3.051v5.468h3.05c2.216 0 3.511-1.036 3.511-2.763zm16.453-6.504c5.843 0 10.533 4.346 10.533 10.418s-4.69 10.417-10.533 10.417c-5.842 0-10.533-4.345-10.533-10.417s4.691-10.418 10.533-10.418zm0 17.152c3.799 0 6.36-2.878 6.36-6.734 0-3.857-2.561-6.734-6.36-6.734s-6.36 2.877-6.36 6.734c0 3.856 2.561 6.734 6.36 6.734z" fill="#fff"></path></g></svg><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">HTML - PHP Calculator</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Freeform Project</div></div></a></div></div></div></div></div></div></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx col__32wIqoLfm46b6qhAEZ5JTW complete__2SFh8_026WSGDrR0sTL39k unit__3RntiOH92_C2Qz3AFIp9QP"><button type="button" aria-label="Hide content" event="click" class="asButton__2u5u6yOsjyO99GaSdsS57u"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW undefined unitHeader__1yXffLbR_sV4mwToocJ8Xy"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW unitIndex__OWfiBC_oDCvQw6uLMqmuw">7</div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-1__2MULxgCsHBgUDk-aYSx7JV col__32wIqoLfm46b6qhAEZ5JTW justify-center__3pT-DZ7IHuUR16BSDfuQCW unitName__1bz3SLz8wptF6ohnryfiuL"><div class="noWrap__2HJBWz6VT42GH46vZrVrJ7">Conditionals and Logic in PHP</div></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW accordionToggle__1bkA7_yKB7yx8ZO8Ro31z4"><em name="arrow-thin-down" class="i__3Sy29_7-FMzo-1b7QcjE0i ikona-arrow-thin-down__a0QB0lXVs2TmDbLsnsE5d"></em></div></div></button><div style="height:0px"><div class=""><div style="opacity:0;transform:translateY(-10px) translateZ(0)"><div class="flex__1DXxWA75qIiehzlE9Hl8tx col__32wIqoLfm46b6qhAEZ5JTW syllabusUnit__10EUlvRO8oRDLfREo981BY"><div class=""><div data-testid="content-item-lesson"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/courses/learn-php/lessons/booleans-and-comparison-operators/resume" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="Booleans and Comparison Operators"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 complete__1HqSnAol0jN68YDOU1yOpn"><em name="check-thin" class="i__3Sy29_7-FMzo-1b7QcjE0i ikona-check-thin__yxoENGNQAOzgMKYwAINry"></em></div></div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">Booleans and Comparison Operators</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Interactive Lesson</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u progressContainer__1LtOdVFCufewgg6nhfFF42"><div class="progress__14E_LRew9UU8eZ7F0Vdhq7">100<!-- -->%</div></div></div></a></div><div data-testid="content-item-quiz"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/pro/membership" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="PHP Conditionals"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 pro__2IeirOuPdlTEy1Fi8d7Krb"><div>PRO</div></div></div><svg class="proLogo__hqGLlKoJ7f8L7cLmi7nEU" height="32" viewBox="0 0 95 40" xmlns="http://www.w3.org/2000/svg"><g fill="currentColor" fill-rule="evenodd"><path d="m0 0h74v40h-74zm78 34h17v6h-17z" fill="currentColor"></path><path d="m13.971 23.67v6.82h-3.971v-20.145h6.82c4.749 0 7.253 2.965 7.253 6.62 0 3.625-2.504 6.705-7.253 6.705zm2.245-9.871h-2.245v6.446h2.245c2.187 0 3.77-1.036 3.77-3.28 0-2.245-1.583-3.166-3.77-3.166zm21.518 16.691-4.46-7.741h-2.821v7.741h-4v-20.145h7.568c4.404 0 6.994 2.62 6.994 6.13 0 1.9-.777 4.317-3.828 5.526l5.151 8.49h-4.604zm-.72-13.986c0-1.784-1.295-2.705-3.51-2.705h-3.051v5.468h3.05c2.216 0 3.511-1.036 3.511-2.763zm16.453-6.504c5.843 0 10.533 4.346 10.533 10.418s-4.69 10.417-10.533 10.417c-5.842 0-10.533-4.345-10.533-10.417s4.691-10.418 10.533-10.418zm0 17.152c3.799 0 6.36-2.878 6.36-6.734 0-3.857-2.561-6.734-6.36-6.734s-6.36 2.877-6.36 6.734c0 3.856 2.561 6.734 6.36 6.734z" fill="#fff"></path></g></svg><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">PHP Conditionals</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Multiple Choice Quiz</div></div></a></div><div data-testid="content-item-project"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/pro/membership" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="Magic 8 Ball"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 pro__2IeirOuPdlTEy1Fi8d7Krb"><div>PRO</div></div></div><svg class="proLogo__hqGLlKoJ7f8L7cLmi7nEU" height="32" viewBox="0 0 95 40" xmlns="http://www.w3.org/2000/svg"><g fill="currentColor" fill-rule="evenodd"><path d="m0 0h74v40h-74zm78 34h17v6h-17z" fill="currentColor"></path><path d="m13.971 23.67v6.82h-3.971v-20.145h6.82c4.749 0 7.253 2.965 7.253 6.62 0 3.625-2.504 6.705-7.253 6.705zm2.245-9.871h-2.245v6.446h2.245c2.187 0 3.77-1.036 3.77-3.28 0-2.245-1.583-3.166-3.77-3.166zm21.518 16.691-4.46-7.741h-2.821v7.741h-4v-20.145h7.568c4.404 0 6.994 2.62 6.994 6.13 0 1.9-.777 4.317-3.828 5.526l5.151 8.49h-4.604zm-.72-13.986c0-1.784-1.295-2.705-3.51-2.705h-3.051v5.468h3.05c2.216 0 3.511-1.036 3.511-2.763zm16.453-6.504c5.843 0 10.533 4.346 10.533 10.418s-4.69 10.417-10.533 10.417c-5.842 0-10.533-4.345-10.533-10.417s4.691-10.418 10.533-10.418zm0 17.152c3.799 0 6.36-2.878 6.36-6.734 0-3.857-2.561-6.734-6.36-6.734s-6.36 2.877-6.36 6.734c0 3.856 2.561 6.734 6.36 6.734z" fill="#fff"></path></g></svg><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">Magic 8 Ball</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Freeform Project</div></div></a></div><div data-testid="content-item-project"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/pro/membership" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="PHP Number Guessing"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 pro__2IeirOuPdlTEy1Fi8d7Krb"><div>PRO</div></div></div><svg class="proLogo__hqGLlKoJ7f8L7cLmi7nEU" height="32" viewBox="0 0 95 40" xmlns="http://www.w3.org/2000/svg"><g fill="currentColor" fill-rule="evenodd"><path d="m0 0h74v40h-74zm78 34h17v6h-17z" fill="currentColor"></path><path d="m13.971 23.67v6.82h-3.971v-20.145h6.82c4.749 0 7.253 2.965 7.253 6.62 0 3.625-2.504 6.705-7.253 6.705zm2.245-9.871h-2.245v6.446h2.245c2.187 0 3.77-1.036 3.77-3.28 0-2.245-1.583-3.166-3.77-3.166zm21.518 16.691-4.46-7.741h-2.821v7.741h-4v-20.145h7.568c4.404 0 6.994 2.62 6.994 6.13 0 1.9-.777 4.317-3.828 5.526l5.151 8.49h-4.604zm-.72-13.986c0-1.784-1.295-2.705-3.51-2.705h-3.051v5.468h3.05c2.216 0 3.511-1.036 3.511-2.763zm16.453-6.504c5.843 0 10.533 4.346 10.533 10.418s-4.69 10.417-10.533 10.417c-5.842 0-10.533-4.345-10.533-10.417s4.691-10.418 10.533-10.418zm0 17.152c3.799 0 6.36-2.878 6.36-6.734 0-3.857-2.561-6.734-6.36-6.734s-6.36 2.877-6.36 6.734c0 3.856 2.561 6.734 6.36 6.734z" fill="#fff"></path></g></svg><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">PHP Number Guessing</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Freeform Project</div></div></a></div><div data-testid="content-item-lesson"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/courses/learn-php/lessons/logical-operators-and-compound-conditions/resume" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title=" Logical Operators and Compound Conditions"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 complete__1HqSnAol0jN68YDOU1yOpn"><em name="check-thin" class="i__3Sy29_7-FMzo-1b7QcjE0i ikona-check-thin__yxoENGNQAOzgMKYwAINry"></em></div></div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf"> Logical Operators and Compound Conditions</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Interactive Lesson</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u progressContainer__1LtOdVFCufewgg6nhfFF42"><div class="progress__14E_LRew9UU8eZ7F0Vdhq7">100<!-- -->%</div></div></div></a></div><div data-testid="content-item-quiz"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/pro/membership" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="Compound Conditions"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 pro__2IeirOuPdlTEy1Fi8d7Krb"><div>PRO</div></div></div><svg class="proLogo__hqGLlKoJ7f8L7cLmi7nEU" height="32" viewBox="0 0 95 40" xmlns="http://www.w3.org/2000/svg"><g fill="currentColor" fill-rule="evenodd"><path d="m0 0h74v40h-74zm78 34h17v6h-17z" fill="currentColor"></path><path d="m13.971 23.67v6.82h-3.971v-20.145h6.82c4.749 0 7.253 2.965 7.253 6.62 0 3.625-2.504 6.705-7.253 6.705zm2.245-9.871h-2.245v6.446h2.245c2.187 0 3.77-1.036 3.77-3.28 0-2.245-1.583-3.166-3.77-3.166zm21.518 16.691-4.46-7.741h-2.821v7.741h-4v-20.145h7.568c4.404 0 6.994 2.62 6.994 6.13 0 1.9-.777 4.317-3.828 5.526l5.151 8.49h-4.604zm-.72-13.986c0-1.784-1.295-2.705-3.51-2.705h-3.051v5.468h3.05c2.216 0 3.511-1.036 3.511-2.763zm16.453-6.504c5.843 0 10.533 4.346 10.533 10.418s-4.69 10.417-10.533 10.417c-5.842 0-10.533-4.345-10.533-10.417s4.691-10.418 10.533-10.418zm0 17.152c3.799 0 6.36-2.878 6.36-6.734 0-3.857-2.561-6.734-6.36-6.734s-6.36 2.877-6.36 6.734c0 3.856 2.561 6.734 6.36 6.734z" fill="#fff"></path></g></svg><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">Compound Conditions</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Multiple Choice Quiz</div></div></a></div><div data-testid="content-item-article"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/pro/membership" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="Common Mistakes with Conditionals"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 pro__2IeirOuPdlTEy1Fi8d7Krb"><div>PRO</div></div></div><svg class="proLogo__hqGLlKoJ7f8L7cLmi7nEU" height="32" viewBox="0 0 95 40" xmlns="http://www.w3.org/2000/svg"><g fill="currentColor" fill-rule="evenodd"><path d="m0 0h74v40h-74zm78 34h17v6h-17z" fill="currentColor"></path><path d="m13.971 23.67v6.82h-3.971v-20.145h6.82c4.749 0 7.253 2.965 7.253 6.62 0 3.625-2.504 6.705-7.253 6.705zm2.245-9.871h-2.245v6.446h2.245c2.187 0 3.77-1.036 3.77-3.28 0-2.245-1.583-3.166-3.77-3.166zm21.518 16.691-4.46-7.741h-2.821v7.741h-4v-20.145h7.568c4.404 0 6.994 2.62 6.994 6.13 0 1.9-.777 4.317-3.828 5.526l5.151 8.49h-4.604zm-.72-13.986c0-1.784-1.295-2.705-3.51-2.705h-3.051v5.468h3.05c2.216 0 3.511-1.036 3.511-2.763zm16.453-6.504c5.843 0 10.533 4.346 10.533 10.418s-4.69 10.417-10.533 10.417c-5.842 0-10.533-4.345-10.533-10.417s4.691-10.418 10.533-10.418zm0 17.152c3.799 0 6.36-2.878 6.36-6.734 0-3.857-2.561-6.734-6.36-6.734s-6.36 2.877-6.36 6.734c0 3.856 2.561 6.734 6.36 6.734z" fill="#fff"></path></g></svg><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">Common Mistakes with Conditionals</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Article</div></div></a></div><div data-testid="content-item-project"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/pro/membership" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="Save the Farm!"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="up__a7VljbOGTzfSGlKlhuufW connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 pro__2IeirOuPdlTEy1Fi8d7Krb"><div>PRO</div></div></div><svg class="proLogo__hqGLlKoJ7f8L7cLmi7nEU" height="32" viewBox="0 0 95 40" xmlns="http://www.w3.org/2000/svg"><g fill="currentColor" fill-rule="evenodd"><path d="m0 0h74v40h-74zm78 34h17v6h-17z" fill="currentColor"></path><path d="m13.971 23.67v6.82h-3.971v-20.145h6.82c4.749 0 7.253 2.965 7.253 6.62 0 3.625-2.504 6.705-7.253 6.705zm2.245-9.871h-2.245v6.446h2.245c2.187 0 3.77-1.036 3.77-3.28 0-2.245-1.583-3.166-3.77-3.166zm21.518 16.691-4.46-7.741h-2.821v7.741h-4v-20.145h7.568c4.404 0 6.994 2.62 6.994 6.13 0 1.9-.777 4.317-3.828 5.526l5.151 8.49h-4.604zm-.72-13.986c0-1.784-1.295-2.705-3.51-2.705h-3.051v5.468h3.05c2.216 0 3.511-1.036 3.511-2.763zm16.453-6.504c5.843 0 10.533 4.346 10.533 10.418s-4.69 10.417-10.533 10.417c-5.842 0-10.533-4.345-10.533-10.417s4.691-10.418 10.533-10.418zm0 17.152c3.799 0 6.36-2.878 6.36-6.734 0-3.857-2.561-6.734-6.36-6.734s-6.36 2.877-6.36 6.734c0 3.856 2.561 6.734 6.36 6.734z" fill="#fff"></path></g></svg><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">Save the Farm!</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Freeform Project</div></div></a></div></div></div></div></div></div></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx col__32wIqoLfm46b6qhAEZ5JTW complete__2SFh8_026WSGDrR0sTL39k unit__3RntiOH92_C2Qz3AFIp9QP"><button type="button" aria-label="Hide content" event="click" class="asButton__2u5u6yOsjyO99GaSdsS57u"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW undefined unitHeader__1yXffLbR_sV4mwToocJ8Xy"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW unitIndex__OWfiBC_oDCvQw6uLMqmuw">8</div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-1__2MULxgCsHBgUDk-aYSx7JV col__32wIqoLfm46b6qhAEZ5JTW justify-center__3pT-DZ7IHuUR16BSDfuQCW unitName__1bz3SLz8wptF6ohnryfiuL"><div class="noWrap__2HJBWz6VT42GH46vZrVrJ7">Loops in PHP</div></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW accordionToggle__1bkA7_yKB7yx8ZO8Ro31z4"><em name="arrow-thin-down" class="i__3Sy29_7-FMzo-1b7QcjE0i ikona-arrow-thin-down__a0QB0lXVs2TmDbLsnsE5d"></em></div></div></button><div style="height:0px"><div class=""><div style="opacity:0;transform:translateY(-10px) translateZ(0)"><div class="flex__1DXxWA75qIiehzlE9Hl8tx col__32wIqoLfm46b6qhAEZ5JTW syllabusUnit__10EUlvRO8oRDLfREo981BY"><div class=""><div data-testid="content-item-lesson"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/courses/learn-php/lessons/php-loops/resume" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="Loops"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 complete__1HqSnAol0jN68YDOU1yOpn"><em name="check-thin" class="i__3Sy29_7-FMzo-1b7QcjE0i ikona-check-thin__yxoENGNQAOzgMKYwAINry"></em></div></div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">Loops</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Interactive Lesson</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u progressContainer__1LtOdVFCufewgg6nhfFF42"><div class="progress__14E_LRew9UU8eZ7F0Vdhq7">100<!-- -->%</div></div></div></a></div><div data-testid="content-item-quiz"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/pro/membership" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="Loops"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 pro__2IeirOuPdlTEy1Fi8d7Krb"><div>PRO</div></div></div><svg class="proLogo__hqGLlKoJ7f8L7cLmi7nEU" height="32" viewBox="0 0 95 40" xmlns="http://www.w3.org/2000/svg"><g fill="currentColor" fill-rule="evenodd"><path d="m0 0h74v40h-74zm78 34h17v6h-17z" fill="currentColor"></path><path d="m13.971 23.67v6.82h-3.971v-20.145h6.82c4.749 0 7.253 2.965 7.253 6.62 0 3.625-2.504 6.705-7.253 6.705zm2.245-9.871h-2.245v6.446h2.245c2.187 0 3.77-1.036 3.77-3.28 0-2.245-1.583-3.166-3.77-3.166zm21.518 16.691-4.46-7.741h-2.821v7.741h-4v-20.145h7.568c4.404 0 6.994 2.62 6.994 6.13 0 1.9-.777 4.317-3.828 5.526l5.151 8.49h-4.604zm-.72-13.986c0-1.784-1.295-2.705-3.51-2.705h-3.051v5.468h3.05c2.216 0 3.511-1.036 3.511-2.763zm16.453-6.504c5.843 0 10.533 4.346 10.533 10.418s-4.69 10.417-10.533 10.417c-5.842 0-10.533-4.345-10.533-10.417s4.691-10.418 10.533-10.418zm0 17.152c3.799 0 6.36-2.878 6.36-6.734 0-3.857-2.561-6.734-6.36-6.734s-6.36 2.877-6.36 6.734c0 3.856 2.561 6.734 6.36 6.734z" fill="#fff"></path></g></svg><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">Loops</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Multiple Choice Quiz</div></div></a></div><div data-testid="content-item-project"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/pro/membership" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="FizzBuzz"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 pro__2IeirOuPdlTEy1Fi8d7Krb"><div>PRO</div></div></div><svg class="proLogo__hqGLlKoJ7f8L7cLmi7nEU" height="32" viewBox="0 0 95 40" xmlns="http://www.w3.org/2000/svg"><g fill="currentColor" fill-rule="evenodd"><path d="m0 0h74v40h-74zm78 34h17v6h-17z" fill="currentColor"></path><path d="m13.971 23.67v6.82h-3.971v-20.145h6.82c4.749 0 7.253 2.965 7.253 6.62 0 3.625-2.504 6.705-7.253 6.705zm2.245-9.871h-2.245v6.446h2.245c2.187 0 3.77-1.036 3.77-3.28 0-2.245-1.583-3.166-3.77-3.166zm21.518 16.691-4.46-7.741h-2.821v7.741h-4v-20.145h7.568c4.404 0 6.994 2.62 6.994 6.13 0 1.9-.777 4.317-3.828 5.526l5.151 8.49h-4.604zm-.72-13.986c0-1.784-1.295-2.705-3.51-2.705h-3.051v5.468h3.05c2.216 0 3.511-1.036 3.511-2.763zm16.453-6.504c5.843 0 10.533 4.346 10.533 10.418s-4.69 10.417-10.533 10.417c-5.842 0-10.533-4.345-10.533-10.417s4.691-10.418 10.533-10.418zm0 17.152c3.799 0 6.36-2.878 6.36-6.734 0-3.857-2.561-6.734-6.36-6.734s-6.36 2.877-6.36 6.734c0 3.856 2.561 6.734 6.36 6.734z" fill="#fff"></path></g></svg><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">FizzBuzz</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Freeform Project</div></div></a></div><div data-testid="content-item-lesson"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/courses/learn-php/lessons/php-loops-in-html/resume" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="Loops in HTML"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 complete__1HqSnAol0jN68YDOU1yOpn"><em name="check-thin" class="i__3Sy29_7-FMzo-1b7QcjE0i ikona-check-thin__yxoENGNQAOzgMKYwAINry"></em></div></div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">Loops in HTML</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Interactive Lesson</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u progressContainer__1LtOdVFCufewgg6nhfFF42"><div class="progress__14E_LRew9UU8eZ7F0Vdhq7">100<!-- -->%</div></div></div></a></div><div data-testid="content-item-quiz"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/pro/membership" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="Loops in HTML"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 pro__2IeirOuPdlTEy1Fi8d7Krb"><div>PRO</div></div></div><svg class="proLogo__hqGLlKoJ7f8L7cLmi7nEU" height="32" viewBox="0 0 95 40" xmlns="http://www.w3.org/2000/svg"><g fill="currentColor" fill-rule="evenodd"><path d="m0 0h74v40h-74zm78 34h17v6h-17z" fill="currentColor"></path><path d="m13.971 23.67v6.82h-3.971v-20.145h6.82c4.749 0 7.253 2.965 7.253 6.62 0 3.625-2.504 6.705-7.253 6.705zm2.245-9.871h-2.245v6.446h2.245c2.187 0 3.77-1.036 3.77-3.28 0-2.245-1.583-3.166-3.77-3.166zm21.518 16.691-4.46-7.741h-2.821v7.741h-4v-20.145h7.568c4.404 0 6.994 2.62 6.994 6.13 0 1.9-.777 4.317-3.828 5.526l5.151 8.49h-4.604zm-.72-13.986c0-1.784-1.295-2.705-3.51-2.705h-3.051v5.468h3.05c2.216 0 3.511-1.036 3.511-2.763zm16.453-6.504c5.843 0 10.533 4.346 10.533 10.418s-4.69 10.417-10.533 10.417c-5.842 0-10.533-4.345-10.533-10.417s4.691-10.418 10.533-10.418zm0 17.152c3.799 0 6.36-2.878 6.36-6.734 0-3.857-2.561-6.734-6.36-6.734s-6.36 2.877-6.36 6.734c0 3.856 2.561 6.734 6.36 6.734z" fill="#fff"></path></g></svg><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">Loops in HTML</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Multiple Choice Quiz</div></div></a></div><div data-testid="content-item-project"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/pro/membership" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="Repetitive Cafe"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="up__a7VljbOGTzfSGlKlhuufW connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 pro__2IeirOuPdlTEy1Fi8d7Krb"><div>PRO</div></div></div><svg class="proLogo__hqGLlKoJ7f8L7cLmi7nEU" height="32" viewBox="0 0 95 40" xmlns="http://www.w3.org/2000/svg"><g fill="currentColor" fill-rule="evenodd"><path d="m0 0h74v40h-74zm78 34h17v6h-17z" fill="currentColor"></path><path d="m13.971 23.67v6.82h-3.971v-20.145h6.82c4.749 0 7.253 2.965 7.253 6.62 0 3.625-2.504 6.705-7.253 6.705zm2.245-9.871h-2.245v6.446h2.245c2.187 0 3.77-1.036 3.77-3.28 0-2.245-1.583-3.166-3.77-3.166zm21.518 16.691-4.46-7.741h-2.821v7.741h-4v-20.145h7.568c4.404 0 6.994 2.62 6.994 6.13 0 1.9-.777 4.317-3.828 5.526l5.151 8.49h-4.604zm-.72-13.986c0-1.784-1.295-2.705-3.51-2.705h-3.051v5.468h3.05c2.216 0 3.511-1.036 3.511-2.763zm16.453-6.504c5.843 0 10.533 4.346 10.533 10.418s-4.69 10.417-10.533 10.417c-5.842 0-10.533-4.345-10.533-10.417s4.691-10.418 10.533-10.418zm0 17.152c3.799 0 6.36-2.878 6.36-6.734 0-3.857-2.561-6.734-6.36-6.734s-6.36 2.877-6.36 6.734c0 3.856 2.561 6.734 6.36 6.734z" fill="#fff"></path></g></svg><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">Repetitive Cafe</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Freeform Project</div></div></a></div></div></div></div></div></div></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx col__32wIqoLfm46b6qhAEZ5JTW expanded__1VmApvvGZVaQse7iZanRGs unit__3RntiOH92_C2Qz3AFIp9QP"><button type="button" aria-label="Expand content" event="click" class="asButton__2u5u6yOsjyO99GaSdsS57u"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW unitHeader__1yXffLbR_sV4mwToocJ8Xy"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW unitIndex__OWfiBC_oDCvQw6uLMqmuw">9</div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-1__2MULxgCsHBgUDk-aYSx7JV col__32wIqoLfm46b6qhAEZ5JTW justify-center__3pT-DZ7IHuUR16BSDfuQCW unitName__1bz3SLz8wptF6ohnryfiuL"><div class="noWrap__2HJBWz6VT42GH46vZrVrJ7">PHP Form Validation</div></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW accordionToggle__1bkA7_yKB7yx8ZO8Ro31z4"><em name="arrow-thin-up" class="i__3Sy29_7-FMzo-1b7QcjE0i ikona-arrow-thin-up__245t_noPUhqQR6e9bEA0jM"></em></div></div></button><div style="height:100%"><div class=""><div style="opacity:1;transform:none"><div class="flex__1DXxWA75qIiehzlE9Hl8tx col__32wIqoLfm46b6qhAEZ5JTW syllabusUnit__10EUlvRO8oRDLfREo981BY"><div class=""><div data-testid="content-item-lesson"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/courses/learn-php/lessons/introduction-to-form-validation/resume" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="Introduction to Form Validation"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 complete__1HqSnAol0jN68YDOU1yOpn"><em name="check-thin" class="i__3Sy29_7-FMzo-1b7QcjE0i ikona-check-thin__yxoENGNQAOzgMKYwAINry"></em></div></div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">Introduction to Form Validation</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Interactive Lesson</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u progressContainer__1LtOdVFCufewgg6nhfFF42"><div class="progress__14E_LRew9UU8eZ7F0Vdhq7">100<!-- -->%</div></div></div></a></div><div data-testid="content-item-lesson"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/courses/learn-php/lessons/nlp-regex-conceptual/resume" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="Introduction to Regular Expressions"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 complete__1HqSnAol0jN68YDOU1yOpn"><em name="check-thin" class="i__3Sy29_7-FMzo-1b7QcjE0i ikona-check-thin__yxoENGNQAOzgMKYwAINry"></em></div></div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">Introduction to Regular Expressions</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Interactive Lesson</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u progressContainer__1LtOdVFCufewgg6nhfFF42"><div class="progress__14E_LRew9UU8eZ7F0Vdhq7">100<!-- -->%</div></div></div></a></div><div data-testid="content-item-lesson"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/courses/learn-php/lessons/introduction-to-php-form-validation/resume" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="Introduction to PHP Form Validation"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextArrowContainer___pNJs5HMiihg7XR-4Mrkx" title="Up next"><em class="i__3Sy29_7-FMzo-1b7QcjE0i ikona-arrow-thin-right__2QbHHktZo3MXRsHm_YT9Ny nextArrow__2eX_1rzvxv2-UYaT1jD6ha" name="arrow-thin-right"></em></div></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5"><em name="editor" class="i__3Sy29_7-FMzo-1b7QcjE0i ikona-editor__2cssvks6s-iVb2Qj2TrcO-"></em></div></div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">Introduction to PHP Form Validation</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Interactive Lesson</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u progressContainer__1LtOdVFCufewgg6nhfFF42"><div class="progress__14E_LRew9UU8eZ7F0Vdhq7">8<!-- -->%</div></div></div></a></div><div data-testid="content-item-quiz"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/pro/membership" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="PHP Form Validation"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 pro__2IeirOuPdlTEy1Fi8d7Krb"><div>PRO</div></div></div><svg class="proLogo__hqGLlKoJ7f8L7cLmi7nEU" height="32" viewBox="0 0 95 40" xmlns="http://www.w3.org/2000/svg"><g fill="currentColor" fill-rule="evenodd"><path d="m0 0h74v40h-74zm78 34h17v6h-17z" fill="currentColor"></path><path d="m13.971 23.67v6.82h-3.971v-20.145h6.82c4.749 0 7.253 2.965 7.253 6.62 0 3.625-2.504 6.705-7.253 6.705zm2.245-9.871h-2.245v6.446h2.245c2.187 0 3.77-1.036 3.77-3.28 0-2.245-1.583-3.166-3.77-3.166zm21.518 16.691-4.46-7.741h-2.821v7.741h-4v-20.145h7.568c4.404 0 6.994 2.62 6.994 6.13 0 1.9-.777 4.317-3.828 5.526l5.151 8.49h-4.604zm-.72-13.986c0-1.784-1.295-2.705-3.51-2.705h-3.051v5.468h3.05c2.216 0 3.511-1.036 3.511-2.763zm16.453-6.504c5.843 0 10.533 4.346 10.533 10.418s-4.69 10.417-10.533 10.417c-5.842 0-10.533-4.345-10.533-10.417s4.691-10.418 10.533-10.418zm0 17.152c3.799 0 6.36-2.878 6.36-6.734 0-3.857-2.561-6.734-6.36-6.734s-6.36 2.877-6.36 6.734c0 3.856 2.561 6.734 6.36 6.734z" fill="#fff"></path></g></svg><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">PHP Form Validation</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Multiple Choice Quiz</div></div></a></div><div data-testid="content-item-project"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/pro/membership" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="Bobby Tables"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="up__a7VljbOGTzfSGlKlhuufW connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 pro__2IeirOuPdlTEy1Fi8d7Krb"><div>PRO</div></div></div><svg class="proLogo__hqGLlKoJ7f8L7cLmi7nEU" height="32" viewBox="0 0 95 40" xmlns="http://www.w3.org/2000/svg"><g fill="currentColor" fill-rule="evenodd"><path d="m0 0h74v40h-74zm78 34h17v6h-17z" fill="currentColor"></path><path d="m13.971 23.67v6.82h-3.971v-20.145h6.82c4.749 0 7.253 2.965 7.253 6.62 0 3.625-2.504 6.705-7.253 6.705zm2.245-9.871h-2.245v6.446h2.245c2.187 0 3.77-1.036 3.77-3.28 0-2.245-1.583-3.166-3.77-3.166zm21.518 16.691-4.46-7.741h-2.821v7.741h-4v-20.145h7.568c4.404 0 6.994 2.62 6.994 6.13 0 1.9-.777 4.317-3.828 5.526l5.151 8.49h-4.604zm-.72-13.986c0-1.784-1.295-2.705-3.51-2.705h-3.051v5.468h3.05c2.216 0 3.511-1.036 3.511-2.763zm16.453-6.504c5.843 0 10.533 4.346 10.533 10.418s-4.69 10.417-10.533 10.417c-5.842 0-10.533-4.345-10.533-10.417s4.691-10.418 10.533-10.418zm0 17.152c3.799 0 6.36-2.878 6.36-6.734 0-3.857-2.561-6.734-6.36-6.734s-6.36 2.877-6.36 6.734c0 3.856 2.561 6.734 6.36 6.734z" fill="#fff"></path></g></svg><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">Bobby Tables</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Freeform Project</div></div></a></div></div></div></div></div></div></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx col__32wIqoLfm46b6qhAEZ5JTW unit__3RntiOH92_C2Qz3AFIp9QP"><button type="button" aria-label="Hide content" event="click" class="asButton__2u5u6yOsjyO99GaSdsS57u"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW unitHeader__1yXffLbR_sV4mwToocJ8Xy"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW unitIndex__OWfiBC_oDCvQw6uLMqmuw">10</div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-1__2MULxgCsHBgUDk-aYSx7JV col__32wIqoLfm46b6qhAEZ5JTW justify-center__3pT-DZ7IHuUR16BSDfuQCW unitName__1bz3SLz8wptF6ohnryfiuL"><div class="noWrap__2HJBWz6VT42GH46vZrVrJ7">Classes and Objects in PHP</div></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW accordionToggle__1bkA7_yKB7yx8ZO8Ro31z4"><em name="arrow-thin-down" class="i__3Sy29_7-FMzo-1b7QcjE0i ikona-arrow-thin-down__a0QB0lXVs2TmDbLsnsE5d"></em></div></div></button><div style="height:0px"><div class=""><div style="opacity:0;transform:translateY(-10px) translateZ(0)"><div class="flex__1DXxWA75qIiehzlE9Hl8tx col__32wIqoLfm46b6qhAEZ5JTW syllabusUnit__10EUlvRO8oRDLfREo981BY"><div class=""><div data-testid="content-item-video"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/pro/membership" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="Classes and Objects"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 pro__2IeirOuPdlTEy1Fi8d7Krb"><div>PRO</div></div></div><svg class="proLogo__hqGLlKoJ7f8L7cLmi7nEU" height="32" viewBox="0 0 95 40" xmlns="http://www.w3.org/2000/svg"><g fill="currentColor" fill-rule="evenodd"><path d="m0 0h74v40h-74zm78 34h17v6h-17z" fill="currentColor"></path><path d="m13.971 23.67v6.82h-3.971v-20.145h6.82c4.749 0 7.253 2.965 7.253 6.62 0 3.625-2.504 6.705-7.253 6.705zm2.245-9.871h-2.245v6.446h2.245c2.187 0 3.77-1.036 3.77-3.28 0-2.245-1.583-3.166-3.77-3.166zm21.518 16.691-4.46-7.741h-2.821v7.741h-4v-20.145h7.568c4.404 0 6.994 2.62 6.994 6.13 0 1.9-.777 4.317-3.828 5.526l5.151 8.49h-4.604zm-.72-13.986c0-1.784-1.295-2.705-3.51-2.705h-3.051v5.468h3.05c2.216 0 3.511-1.036 3.511-2.763zm16.453-6.504c5.843 0 10.533 4.346 10.533 10.418s-4.69 10.417-10.533 10.417c-5.842 0-10.533-4.345-10.533-10.417s4.691-10.418 10.533-10.418zm0 17.152c3.799 0 6.36-2.878 6.36-6.734 0-3.857-2.561-6.734-6.36-6.734s-6.36 2.877-6.36 6.734c0 3.856 2.561 6.734 6.36 6.734z" fill="#fff"></path></g></svg><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">Classes and Objects</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Video</div></div></a></div><div data-testid="content-item-lesson"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/courses/learn-php/lessons/php-classes/resume" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="Classes and Objects"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5"><em name="editor" class="i__3Sy29_7-FMzo-1b7QcjE0i ikona-editor__2cssvks6s-iVb2Qj2TrcO-"></em></div></div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">Classes and Objects</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Interactive Lesson</div></div></a></div><div data-testid="content-item-quiz"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/pro/membership" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="Classes and Objects"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="both__3SYyjWPkbsFxo-pO2ALEDs connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 pro__2IeirOuPdlTEy1Fi8d7Krb"><div>PRO</div></div></div><svg class="proLogo__hqGLlKoJ7f8L7cLmi7nEU" height="32" viewBox="0 0 95 40" xmlns="http://www.w3.org/2000/svg"><g fill="currentColor" fill-rule="evenodd"><path d="m0 0h74v40h-74zm78 34h17v6h-17z" fill="currentColor"></path><path d="m13.971 23.67v6.82h-3.971v-20.145h6.82c4.749 0 7.253 2.965 7.253 6.62 0 3.625-2.504 6.705-7.253 6.705zm2.245-9.871h-2.245v6.446h2.245c2.187 0 3.77-1.036 3.77-3.28 0-2.245-1.583-3.166-3.77-3.166zm21.518 16.691-4.46-7.741h-2.821v7.741h-4v-20.145h7.568c4.404 0 6.994 2.62 6.994 6.13 0 1.9-.777 4.317-3.828 5.526l5.151 8.49h-4.604zm-.72-13.986c0-1.784-1.295-2.705-3.51-2.705h-3.051v5.468h3.05c2.216 0 3.511-1.036 3.511-2.763zm16.453-6.504c5.843 0 10.533 4.346 10.533 10.418s-4.69 10.417-10.533 10.417c-5.842 0-10.533-4.345-10.533-10.417s4.691-10.418 10.533-10.418zm0 17.152c3.799 0 6.36-2.878 6.36-6.734 0-3.857-2.561-6.734-6.36-6.734s-6.36 2.877-6.36 6.734c0 3.856 2.561 6.734 6.36 6.734z" fill="#fff"></path></g></svg><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">Classes and Objects</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Multiple Choice Quiz</div></div></a></div><div data-testid="content-item-project"><a class="noUnderline__1SC6_eVwcicCvkuSVbHlDb link__2aU7OvXJmLyj20kEMPY18r" href="/pro/membership" event="click"><div class="flex__1DXxWA75qIiehzlE9Hl8tx row__cqkxg6Ld1Ugd4dReD_LK7 align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW contentListItem__3XlHMY6-cpoNhB9a64yI3o" title="Going to Bed"><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW nextContainer__3Gt_cIMxZOJot0nwwtXtUA"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-0__o_9O8bkMHghg85IYak58u align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW container__2fm_JH_BgwPPv53QI1LeT_"><div class="up__a7VljbOGTzfSGlKlhuufW connector__1jtIxzXAys-m2BJuyOdf-Q"></div><div class="flex__1DXxWA75qIiehzlE9Hl8tx align-center___4czj8D6zfd0m04k4leyM justify-center__3pT-DZ7IHuUR16BSDfuQCW icon__1wdclztRIZxK0s8ZfPk-H5 pro__2IeirOuPdlTEy1Fi8d7Krb"><div>PRO</div></div></div><svg class="proLogo__hqGLlKoJ7f8L7cLmi7nEU" height="32" viewBox="0 0 95 40" xmlns="http://www.w3.org/2000/svg"><g fill="currentColor" fill-rule="evenodd"><path d="m0 0h74v40h-74zm78 34h17v6h-17z" fill="currentColor"></path><path d="m13.971 23.67v6.82h-3.971v-20.145h6.82c4.749 0 7.253 2.965 7.253 6.62 0 3.625-2.504 6.705-7.253 6.705zm2.245-9.871h-2.245v6.446h2.245c2.187 0 3.77-1.036 3.77-3.28 0-2.245-1.583-3.166-3.77-3.166zm21.518 16.691-4.46-7.741h-2.821v7.741h-4v-20.145h7.568c4.404 0 6.994 2.62 6.994 6.13 0 1.9-.777 4.317-3.828 5.526l5.151 8.49h-4.604zm-.72-13.986c0-1.784-1.295-2.705-3.51-2.705h-3.051v5.468h3.05c2.216 0 3.511-1.036 3.511-2.763zm16.453-6.504c5.843 0 10.533 4.346 10.533 10.418s-4.69 10.417-10.533 10.417c-5.842 0-10.533-4.345-10.533-10.417s4.691-10.418 10.533-10.418zm0 17.152c3.799 0 6.36-2.878 6.36-6.734 0-3.857-2.561-6.734-6.36-6.734s-6.36 2.877-6.36 6.734c0 3.856 2.561 6.734 6.36 6.734z" fill="#fff"></path></g></svg><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-0__30XiDjD2eMW-sqUPROY1jm fls-1__2MULxgCsHBgUDk-aYSx7JV title__x95mVsb3MaTbet73DiRPf">Going to Bed</div><div class="fld__TAyiKqSVLPDYEpwvcd68M flg-1__3I5UX1Z1GNlEHAmLfB1nuD fls-0__o_9O8bkMHghg85IYak58u shortDescription__3HWv-l9SjQqtl9_doL3BH_">Freeform Project</div></div></a></div></div></div></div></div></div></div></div></div></div></div></section><footer class="courseResume__1wY7WQdQEbjdupYt_Q3aGN" style="background-color:#2daaa6"><a data-btn="true" aria-label="Resume 88%" class="basicBtn__3TwUrbvJiSQ1fnlE6tLXUs btn__28utPbbbrFvjM_kBjYubUO btn-brand-yellow__3Va_ov9M5cnAGyxnVURUOm large__238UM39NEYe58xDl3ZOw3L round__1JFGRnHnlZuDxyjmGZDKYr courseResumeButton__1Lkbl-B6WWX_GzxTFOWkhe" href="/courses/learn-php/lessons/introduction-to-php-form-validation/resume">Resume 88%</a></footer></main><div class="footerContainer__1lX4xMFd1eOmayhSXXv_V7" role="contentinfo"><div class="contentContainer__3rYV5hCbkX8Z5A1gQ1uzq4"><div class="flex__1DXxWA75qIiehzlE9Hl8tx footerLinkContainer__1fVEJLlXFdmwmH23Hzrq8m"><div class=""><div class="linkArea__YiBJzcGLU5cCSSNZc5_7Y"><div aria-level="2" class="linkHeader__2FrXvHMMf6o_tUxeTz_p-t" role="heading">Codecademy</div><a class="footerReference__hLFux-8KzqKxLD9_gf5BE" href="/about">About</a><a class="footerReference__hLFux-8KzqKxLD9_gf5BE" href="/business">For Businesses</a><a class="footerReference__hLFux-8KzqKxLD9_gf5BE" href="https://shop.codecademy.com/">Shop</a><a class="footerReference__hLFux-8KzqKxLD9_gf5BE" href="/stories">Stories</a><a class="footerReference__hLFux-8KzqKxLD9_gf5BE" href="/about/careers">We&#x27;re Hiring</a><div class="wrapper__2xWKIMh5bLsavkrY8XKWS6"><a aria-label="Follow us on Twitter" class="icon__3IsAK7_O14HUVOx9_moIPM" href="https://twitter.com/Codecademy"><em name="twitter" class="i__3Sy29_7-FMzo-1b7QcjE0i ikona-twitter__-ZQ0y5vQDVQUPTlgwzqzb"></em></a><a aria-label="Like us on Facebook" class="icon__3IsAK7_O14HUVOx9_moIPM" href="https://codecademy.com/users/redirect?redirect_url=https://www.facebook.com/groups/codecademy.community"><em name="facebook" class="i__3Sy29_7-FMzo-1b7QcjE0i ikona-facebook__sYZBmu2Ogm2xbWlNizEf-"></em></a><a aria-label="Follow us on Instagram" class="icon__3IsAK7_O14HUVOx9_moIPM" href="https://instagram.com/codecademy"><em name="instagram" class="i__3Sy29_7-FMzo-1b7QcjE0i ikona-instagram__1gYCOhzPC-3dWIcMaaZWf8"></em></a><a aria-label="Subscribe to Codecademy on YouTube" class="icon__3IsAK7_O14HUVOx9_moIPM" href="https://www.youtube.com/channel/UC5CMtpogD_P3mOoeiDHD5eQ"><em name="youtube" class="i__3Sy29_7-FMzo-1b7QcjE0i ikona-youtube__MYo83XyI6SGxCP97RxsBD"></em></a></div></div></div><div class="courses__2VXoPcL4m-CbI9cFVP-_F4"><div aria-level="2" class="linkHeader__2FrXvHMMf6o_tUxeTz_p-t" role="heading">Catalog</div><section class="container__2cd2iSviy9GLzdidfncbsH"><div class="column__52XfuA5fJllEtFV6-MbWl"><h3 class="columnHeader__wHF9k9UsU3EC5E6UodJ4k">By Subject</h3><div class="linkSection__3roC9s5UyE9YLaEaMoGBoP"><a href="/catalog/subject/all" class="noUnderline__1SC6_eVwcicCvkuSVbHlDb filterLink__21EtDs3yWnfAItB_tr_HVB" event="click">Full Catalog</a><a href="/catalog/subject/web-development" class="noUnderline__1SC6_eVwcicCvkuSVbHlDb filterLink__21EtDs3yWnfAItB_tr_HVB" event="click">Web Development</a><a href="/catalog/subject/programming" class="noUnderline__1SC6_eVwcicCvkuSVbHlDb filterLink__21EtDs3yWnfAItB_tr_HVB" event="click">Programming</a><a href="/catalog/subject/data-science" class="noUnderline__1SC6_eVwcicCvkuSVbHlDb filterLink__21EtDs3yWnfAItB_tr_HVB" event="click">Data Science</a><a href="/catalog/subject/partnerships" class="noUnderline__1SC6_eVwcicCvkuSVbHlDb filterLink__21EtDs3yWnfAItB_tr_HVB" event="click">Partnerships</a><a href="/catalog/subject/design" class="noUnderline__1SC6_eVwcicCvkuSVbHlDb filterLink__21EtDs3yWnfAItB_tr_HVB" event="click">Design</a><a href="/catalog/subject/game-development" class="noUnderline__1SC6_eVwcicCvkuSVbHlDb filterLink__21EtDs3yWnfAItB_tr_HVB" event="click">Game Development</a></div></div><div class="column__52XfuA5fJllEtFV6-MbWl"><h3 class="columnHeader__wHF9k9UsU3EC5E6UodJ4k">By Language</h3><div class="linkSectionLanguage__1Vf9BiuHRsQUN3rFXxCOPJ"><a href="/catalog/language/html-css" class="noUnderline__1SC6_eVwcicCvkuSVbHlDb filterLink__21EtDs3yWnfAItB_tr_HVB" event="click">HTML &amp; CSS</a><a href="/catalog/language/python" class="noUnderline__1SC6_eVwcicCvkuSVbHlDb filterLink__21EtDs3yWnfAItB_tr_HVB" event="click">Python</a><a href="/catalog/language/javascript" class="noUnderline__1SC6_eVwcicCvkuSVbHlDb filterLink__21EtDs3yWnfAItB_tr_HVB" event="click">JavaScript</a><a href="/catalog/language/java" class="noUnderline__1SC6_eVwcicCvkuSVbHlDb filterLink__21EtDs3yWnfAItB_tr_HVB" event="click">Java</a><a href="/catalog/language/sql" class="noUnderline__1SC6_eVwcicCvkuSVbHlDb filterLink__21EtDs3yWnfAItB_tr_HVB" event="click">SQL</a><a href="/catalog/language/bash" class="noUnderline__1SC6_eVwcicCvkuSVbHlDb filterLink__21EtDs3yWnfAItB_tr_HVB" event="click">Bash/Shell</a><a href="/catalog/language/ruby" class="noUnderline__1SC6_eVwcicCvkuSVbHlDb filterLink__21EtDs3yWnfAItB_tr_HVB" event="click">Ruby</a><a href="/catalog/language/c-plus-plus" class="noUnderline__1SC6_eVwcicCvkuSVbHlDb filterLink__21EtDs3yWnfAItB_tr_HVB" event="click">C++</a><a href="/catalog/language/r" class="noUnderline__1SC6_eVwcicCvkuSVbHlDb filterLink__21EtDs3yWnfAItB_tr_HVB" event="click">R</a><a href="/catalog/language/c-sharp" class="noUnderline__1SC6_eVwcicCvkuSVbHlDb filterLink__21EtDs3yWnfAItB_tr_HVB" event="click">C#</a><a href="/catalog/language/php" class="noUnderline__1SC6_eVwcicCvkuSVbHlDb filterLink__21EtDs3yWnfAItB_tr_HVB" event="click">PHP</a><a href="/catalog/language/go" class="noUnderline__1SC6_eVwcicCvkuSVbHlDb filterLink__21EtDs3yWnfAItB_tr_HVB" event="click">Go</a></div></div></section></div><div class=""><div class="linkArea__YiBJzcGLU5cCSSNZc5_7Y"><div aria-level="2" class="linkHeader__2FrXvHMMf6o_tUxeTz_p-t" role="heading">Resources</div><a class="footerReference__hLFux-8KzqKxLD9_gf5BE" href="/beta-catalog/subject/beta">Beta Courses</a><a class="footerReference__hLFux-8KzqKxLD9_gf5BE" href="/articles">Articles</a><a class="footerReference__hLFux-8KzqKxLD9_gf5BE" href="https://discuss.codecademy.com/">Forums</a><a class="footerReference__hLFux-8KzqKxLD9_gf5BE" href="/help">Help</a><a class="footerReference__hLFux-8KzqKxLD9_gf5BE" href="/blog">Blog</a></div></div></div></div><div class="legalLocalDivider__3R_kPtdcnK2Bmxt58p1-xC"></div><div class="contentContainer__3rYV5hCbkX8Z5A1gQ1uzq4"><div class="legalLocalContainer__svIS7zurAcagN3R_mnPB0"><div class="legalLinks__15oguwSH9xMtUWyzrt11tz"><a class="legalLink__Sm_XiNRw9HAHKjAJ1oviH" href="/policy">Privacy Policy</a><span class="divider__1k3N_s0H2aR9vPHGQYVh43"></span><a class="legalLink__Sm_XiNRw9HAHKjAJ1oviH" href="/terms">Terms</a></div><div class="madeIn__uLbnO-9RYq5yUowYUjl55">Made with<span aria-label="love" class="helloFellowKids__3iZ3CrhjPJ6VfdUDLNFA-d" role="img">️❤️</span>in NYC ©<!-- --> 2019 <!-- -->Codecademy</div></div></div></div></div>
  236.  
  237.  
  238.  
  239.  
  240.  
  241.  
  242.  
  243.  
  244. <div id="modal">
  245.  
  246. </div>
  247.  
  248.  
  249.  
  250.  
  251.  
  252. <script type="text/javascript">
  253. (function (url) {
  254. if(!window.DataLayer){
  255. window.DataLayer = {};
  256. }
  257. if(!DataLayer.events){
  258. DataLayer.events = {};
  259. }
  260. DataLayer.events.SPIVersion = DataLayer.events.SPIVersion || "3.3";
  261. DataLayer.events.SiteSection = "1";
  262.  
  263. var loc, ct = document.createElement("script");
  264. ct.type = "text/javascript";
  265. ct.async = true; ct.src = url; loc = document.getElementsByTagName('script')[0];
  266. loc.parentNode.insertBefore(ct, loc);
  267. }(document.location.protocol + "//intljs.rmtag.com/118985.ct.js"));
  268. </script>
  269.  
  270.  
  271.  
  272.  
  273. <script defer src="https://static.cloudflareinsights.com/beacon.min.js" data-cf-beacon='{"rayId":"52a61de1ea239eeb","startTime":1571858934674}'></script>
  274. </body>
  275. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement