PHP 5.5, wat te verwachten van de PHP 5.5,,,,,,,,,,,, 162, aandelen,,,,,,, de delen van het netwerk, maandag wat in tuts + koers zal dalen tot slechts drie dollar.Niet' niet missen.,, de eerste PHP 5.5 α had gepubliceerd.Na een periode van proeven en experimenten, kunnen we nu breng je ons inzicht iets om naar uit te kijken.,,,, installatie, als je het wil lezen, je moet de installatie PHP 5.5 voor zichzelf.Hier vind je de bron voor banden.Bovendien, als wat je nodig hebt is een binaire bestanden, kun je met een van de web - pagina 's voor het downloaden van, als je de source code, alles gewonnen op de MAP, en je favoriete programma' s voor de terminal te navigeren.Je kan de installatie PHP waar je wil gaan, maar voor het gemak, ik zal leiden tot een bestand in mijn wortels heeft, php5.5, rijden.Het creëren van een nieuwe MAP, en dan laat je de eigenaar zei dat de gebruiker MAP, de volgende op je terminal, pseudo - nummer /php5.5 pseudo - chown gebruikersnaam /php5.5, en dan moet je beslissen wat je wil tot uitbreiding van de taken en de installatie van uw PHP.Want dit is een alfa - versie, maar om te testen, en ik wil niet dat het volledig kenmerken.Tijdens de les, ik zal alleen voor het installeren van curly, maar er kan iets zijn dat je wil toevoegen, zoals mysql en - steun.Om een volledige lijst van opties, die - afgezien van de installatie, configuratie: /opties, maar ook andere eigenschappen, moeten we: "voor" en "profiel weg" - optie.Deze twee eigenschappen die PHP installatie, plaats. INI, respectievelijk.Dus in de terminal type:,. /configuratie - prefix = /php5.5 - profiel weg = /php5.5 krullend = EXT /opgerold zodat de installatie, configuratie en de eerste rij PHP opgerold en de locatie van de map van ons vroeg.De volgende twee rijen vgp en bestanden op een gespecificeerde lijst.De volgende stap is een kopie van de documenten van de monsters, zoals PHP MAP.Dus, de werking van php.ini-development /CP:, php5.5 /PHP INI, je moet nu alles goed geregeld.Het testen van de nieuwe versie van de meest eenvoudige methode is in het netwerk servers zijn gebouwd.- naar binnen, vaten, php5.5 mappen (CD /php5.5 /doos) en van het type. /PHP /weg //- 0.0.0.0:4444,.,,, t, de opties van de wortel van de server (d.w.z. de positie van je zal je PHP documenten), de, de, de eigendom van het onderzoektijdvak Adres en nummer van de haven, de server bindend moeten zijn.Het gebruik van de server IP - adres vertellen 0.0.0.0 luisteren naar alle IP - adressen (bijvoorbeeld localhost, 127.0.0.1192.168.0.100, enz.).En als alles goed gaat, moet je aan je gedag zeggen, ik zeg het je, de server van de intellectuele - eigendomsrechten /haven luisteren, het zal u vertellen dat het dossier waar de wortels.Kunnen we nu gaan spelen met de kenmerken van de nieuwe.,, de generator, waardoor je de functie van een gewoonte, behouden de status die tussen de grootste PHP 5.5.,, naast de generator.De generator mag je je functie, het behoud van in die staat.Het van een nieuwe sleutel, bekend als de produktie, in een functie voor de input en output van gegevens, in wezen, als functie van de opbrengst van die beschikking bevat een PHP worden bevroren, van de uitvoering van de taken en de voortzetting van de exploitatie van andere programma 's.Als je moet blijven functioneren is het mobiele of door te zeggen dat de doorgifte van gegevens naar een PHP zal functioneren en het behoud van de plaats van vertrek, wordt gedefinieerd in een lokale waarden, dit klinkt misschien een beetje Cool is, maar als je aan het denken, het opent de deur naar de ontwerp - programma 's, veel plezier.Ten eerste, het is voor een andere taal "lui bij de beoordeling van de effecten van" zoals haskell.Alleen deze, kan je de definitie van een model van de gegevens en de wiskundige functie na hun praktische definitie.Trouwens, je hoeft niet om veel van de variabelen; indien een variabele alleen betekent dat een specifieke functie, kan je het opgenomen in een generator, en als tegen zoiets gebeurt automatisch in de vorm van de sleutel van het object in terug, dat is genoeg, laten we eens kijken de rol van een generator.In de eerste plaats, de navigatie in je PHP die server definitie van document wortel, en het creëren van een document, de zogenaamde "index. Php".Nu, in het dossier, de functie van aard:. () {% = 0; $b = 1; overwegende dat de (echt) {% = $$b; b = $dollar b; de opbrengst;}}, dit is een oneindige reeks "hallo" wereld functioneren.Dit is een functie die de produktie van alle getallen.Het gebruik van de generators, alles wat je hoeft te doen is: de dollar, T = fibonacci (); vezels > de huidige (); $FIB - > de volgende (); $FIB - > de huidige (); ///////..., wat Hier gebeurt, is wat we doen, $FIB, generatoren. En dan kan je naar de begane grond, commando 's, zoals de huidige, en volgende), (().De huidige (), de huidige waarde van de generator, functie terug te keren; dit is je functie - in ons geval, dollar.Je kan deze functie herhaaldelijk, je krijgt altijd dezelfde waarde, omdat de huidige (), functie, niet tegen de generator te blijven voor de evaluatie van de code.Dat is het, de volgende (), is de functie van; de volgende (), dat voor het ontdooien en blijven functioneren.Omdat we van de functie is van de oneindige cyclus, en de volgende dag, en het zal weer bevroren, opbrengst, commando 's, kunnen we met een andere telefoon, krijgen een waarde onder de huidige (), de voordelen van de generator,., van lokale variabelen, als van blijvende aard is, moet je Zulke dingen in het verleden. Je moet een ring,,, voor de berekening van de waarde van een reeks vooraf, en niet na een aantal herhalingen van (100), opdat de overbelasting PHP.De voordelen van de generator, lokale variabelen is blijvend, je kan schrijven wat de functie zou moeten doen, en niet wat ik moet doen.Ik bedoel, je moet alleen schrijf opdracht, hoeft zich geen zorgen te maken over de variabelen moeten worden uitgevoerd, en veel herhalingen.De manier waarop het werkt en als de functie voor: een met, de opbrengst, de sleutelwoorden, zal het stoppen, maar, in plaats van de huidige gegevens, lezen, (), geven we het /de functie van de gegevens (,).Dit is een voorbeeld van de actie: de functie van de houthakker, () {% log_num = 1; overwegende dat de (echt) {% f = de opbrengst; ECHO "van #".Log_num dollar + + ".: ".A.}} $recorder = houthakker (); ($I = 0; ik < 10; $I + +) {% recorder - > sturen ($ik * 2);}, dit is een boodschap van eenvoudige generator.Alle generatoren begonnen is in een lidstaat, een oproep te sturen, zelfs de huidige,), start de generator, en blijven, totdat het op, de opbrengst, de commando 's.Stuur de toegezonden gegevens, om de inbreng van de functie, en verder verwerken, totdat het kwam onder een opbrengst.Elke latere oproepen, stuur een cyclus, zullen worden behandeld, gaat het in de toezending van de gegevens aan een, $, dan blijven, totdat het verkeer terug naar de volgende, rendement, dus waarom niet gewoon dit veranderen in een normale functie?Oké, je kan het, maar dan moet je een afzonderlijke variabelen te volgen, of moet ik je nummer, het creëren van een speciaal soort,,, niet als een methode om de generator te doen is onmogelijk, maar als een instrument om de dingen sneller en efficiënter te doen zelfs een oneindige reeks.,, is mogelijk, maar het moet opnieuw een lijst van alle tijd vanaf het begin (d.w.z. door middel van wiskunde tot de index), of in de winkel, alle gegevens van de variabelen.Als je de Code Generator, schonere en meer nauwkeurige opsomming van de,,.,, verklaring, vind ik dat zeer nuttig is de volgende bijwerking van het breken van een...), lokale variabelen voor de capaciteit van de verklaring.Een lijst, al geruime tijd (aangezien PHP 4); het in kaart brengen van een reeks in de lijst van variabelen.Dus, in plaats van het schrijven van wat, $gegevens = array ("John", "Smith", "032-234-4923"); $naam = $gegevens [0]; model = $gegevens [1] =%; - gegevens [2], schrijf je:;, $gegevens = array ("John" "Smith", "032-234-4923"); de lijst (in $, model cellen) = $gegevens; dit is het enige probleem, als je er een reeks) (...) de informatie die je wilde kaart, je kan ze niet door een van de voor het verkeer, de ring.Maar je moet de aangewezen voor de resultaten voor een variabele, en dan met een lijst van de opbouw van de interne circulatie, kaart, in de versie van, 5.5, sla je man in het midden, ruim je code.Dit is een voorbeeld van de oude manier, en nieuwe methoden, /jaar: - /voor (parentarr dollar childarr) {lijst (een dubbele) = $childarr; //////////////- nieuwe methoden door recycling} /voor ($parentarr lijst (eerste en tweede element)) {///////blijven cyclische}, oude manier lijkt het niet te veel moeite is, maar het is een puinhoop en daling van de leesbaarheid,, simpel wachtwoord API, op mijn MAC ingebouwde grafische kaart, ik kan door middel van 2 miljard naar hasj.,, nu dit verzoek - en encryptie volledig bewust van een beetje kennis, - wachtwoord in PHP de eenvoudigste methode is gebruikt als md5 en SHA - algoritme.Als deze hasj probleem is, ze is heel eenvoudig te berekenen.Ze niet meer bruikbaar is veilig.Nu, ze mag alleen worden gebruikt voor de verificatie van de integriteit van de gegevens.Ik op mijn computer geïnstalleerd voor het testen van een hasher gpu van deze verklaring.Op mijn MAC ingebouwde video, kan ik gaan is na 2 miljard - tweede!Als je aan de Top van de investeringen in gespecialiseerde, multi - kaart die je kan de ervaring van miljarden - waarde, ten tweede, deze aanpak betekent niet het einde van de technologie,, hoe ga je dan om dit probleem op te lossen?Het antwoord is op de last op je rekenen.Ik bedoel je moeilijk om mee om te gaan.Niet elke - seconden die schade toebrengen aan de gebruiker.Maar stel je voor dat je laat het al een halve seconde.Dan kan de gebruiker niet zijn verwezenlijkt, maar iemand proberen te lopen door het geweld zal miljoenen om - als het niet meer, een halve seconde over in totaal al decennia of eeuwen.In de loop van de tijd, de computer, wat is het probleem?Dit is "aangepast": elk deel van de zo vaak, zou je de complexiteit, het creëren van een hasj.Zo kan je het altijd dezelfde tijd te nemen om ervoor te zorgen dat de hoeveelheid.Dit is de ontwikkelaar van de mensen aan te moedigen PHP probeert te doen, nieuwe PHP bibliotheek is een hasj "te maken," de mensen daar gemakkelijk kan worden geverifieerd en de modernisering van de encryptie, hasj en hun complexiteit in de loop van de tijd.Het is op dit moment slechts vaartuigen en BCrypt algoritme, maar de PHP team nog een optie, die bij verstek kan je gebruiken.Het zal de veiligheid van de automatische update je hasj rekenen, als ze nieuwe toe te voegen. Dergelijke werkzaamheden is het wachtwoord BCrypt door middel van encryptie, X, tijden, maar het gebruik van vis met een sleutel, zodat je kon na de terugkeer van de vorige operatie, door naar de volgende stap van de sleutel.Volgens Wikipedia, het loopt je wachtwoord voor door, 2,, * * * * * * *, bedragen.Dit is een deel van je kunnen worden aangepast.Nu, wil je dat het niveau van de kosten van de met 5: BCrypt loopt je hasj, 2, 5, of de, 32.Dit lijkt op een lage cijfers, maar omdat de kosten van aanpassing van de parameters van de functie, als je hem vervangen door 15, dan zal het de functies die door de 32768.Het niveau van de kosten voor de standaard 10, maar dit is de configuratie van de source code met behulp van de theoretische kant, laten we in een voorbeeld zien, $= "secret_password"; - = password_hash dollar ($gaan door, password_bcrypt array (kosten = > 12, "zout" = > 20. 2. De brief. Zout "); als (password_verify (biografie, $hasj)) {als (password_needs_rehash ($hasj, password_default array (kosten = > 15))) {% - = password_hash (biografie, password_default array (kosten = > 15));) ///////- hier doen.}, password_hash, functie, aanvaarding van drie parameters: het woord hasj, hasj... Constant, en de oprichting van een facultatieve lijst, met inbegrip van zout en kosten.In het kader van een functie, password_verify, om ervoor te zorgen dat touw met hasj van encryptie, en, tot slot, de functie van de volgende parameters password_needs_rehash, om ervoor te zorgen dat de hasj.Bijvoorbeeld, in ons geval, stellen wij voor de kosten van de twaalf -, maar hier, we hebben aangewezen, 15, zo deze functie terug, echt, dit betekent dat het moet worden veranderd, en misschien is het je opgevallen, in password_verify password_needs_rehash, functie,,,, je hoeft niet te worden vermeld - methode, zout, of kosten.Dit is omdat de details aan de hasj string.,, zout is gebruikt om te voorkomen dat de berekening van de waarde van de Regenboog van tevoren voor hasj.,, waarom gaat kosten en zout met hasj niet geheim te houden, omdat het systeem het voordeel van het samen.De kosten van een geheim niet nodig is, omdat het betekent dat een digitale, dat voorziet in een voldoende grote last op de server.Ik bedoel, zelfs als iemand je hasj en besluiten van het niveau van de kosten van de vereiste je 1 /2 seconden, zal hij weten wat het niveau van de sterke, maar hij moet te lang (zoals de crack van tientallen jaren), zout is gebruikt om te voorkomen dat de berekening van de Regenboog - waarde worden vooraf in tabel, tabel, de Regenboog. Eigenlijk is het een "woordenboek" en de overeenkomstige woorden sleutels opgeslagen - waarde als een sleutel.,, van alle mensen moet doen is reeds genoeg woorden, of, wat nog erger is, de mogelijkheid van alle snaren... Dan kunnen ze zien voor een bepaald moment wat hasj.Dit is een voorbeeld van zout kan helpen. Laten we zeggen dat je het wachtwoord is "password", normaal gesproken, dit is nogal een universeel woord is, kan het in de Regenboog.Wat is de toevoeging van zout van een willekeurige reeks codes en wachtwoorden; dus, hasj, hasj voor "waarheid" passwordrandomsalt524 dollar& ". Dit is waarschijnlijk niet vooraf berekende, dus waarom zout wordt algemeen beschouwd als een privé - informatie?Traditioneel, zoals md5 en willen, als iemand je zout, kunnen ze terug naar hun brute kracht, ze zullen je aan het eind van de zout.Dit betekent dat u, in plaats van bruteforcing willekeurige wachtwoord, ze bruteforcing kortere standaard code, is de toevoeging van zout.Maar gelukkig is, want wij hebben de kosten van de instellingen die het kost uren om elke nieuwe berekening van hasj en zout. Zout,,, kortom, om ervoor te zorgen dat een hasj niet van tevoren worden gebruikt een andere hasj, en de kosten van de parameters, om ervoor te zorgen dat het niet haalbaar is vanaf Het begin de berekening per hasj.Beide zijn nodig, maar ze zijn niet geheim, en dat is de reden waarom de functie zal ze in de hasj, herinner je, je wat zout is, zolang het is uniek, dus nu, als je begrijp wat zout in, dan zou je moeten weten is het de taak van de willekeurige die een en dan in Je eigen woorden.Hoewel deze functie voorziet, wil je niet dat je alle woorden hebben dezelfde zout.Als ze dat doen, dus als iemand proberen te breken in je database, alles wat ze moeten doen, is een berekening van de tabel.Omdat ze met zout en het niveau van de kosten, dit kan even duren, maar, er is genoeg van computers, als ze eenmaal in de loop van hun zet al je hasj.Dus, de beste verdeling van niet, maar laat een PHP willekeurig.,, het toenemen, tot nu toe, er is geen makkelijke manier door het smtp - een e - mail sturen,, het is een ander gebied, in PHP team, toename van het aantal nieuwe, opwindende aangevuld en bijgewerkt.Als de 5,5 versie, en nu hebben we voor deze richtlijn steunt, het vaststellen van koekjes van de richtlijn, en de rekeningen van de richtlijnen, en de richtlijn - en streaming protocol, met inbegrip van.Het zou teveel tijd over ze allemaal, maar om een volledige lijst van de pers, kan je de pagina 's, en dat doe ik, maar willen praten over een met name wat mij het meest interesseert: de smtp - richtlijn.Tot nu toe, er is geen makkelijke manier via smtp e - mail.Je kan de wijziging van de programma 's van je server via smtp server send - mail verzenden, of je download een derde partij nodig. - dit zijn de beste keuze.Met de nieuwe richtlijn de krullen, je kan rechtstreeks met de smtp server gmail praten, zoals een paar lijnen, voor een beter begrip van de code is hoe het werkt, is het waard om te leren het smtp - protocol.Wat er gebeurd is, is dat je het script in verband met de e - mail server, e - mail server bevestigen dat je terug naar je het verband en de informatie (zoals het domein, software).Je moet terug naar de server en je adres.Als een PRATER (maar beleefd) overeenkomst, weet je dat het smtp - zal de groeten van je is ontvangen, op dit punt, je bent klaar om te verzenden.Commando post, nodig is, en deze rechtstreeks in kaart te brengen, te,; op die richtlijn, respectievelijk curlopt_mail_from, curlopt_mail_rcpt,,.Heb je maar één van, adres, maar je kan een met het adres.Als je dit doet, kan je gewoon bellen om gegevens te verzenden, en de werkelijke boodschap en het hoofd.Om een einde te maken aan de overdracht, als je dat wilt, stuur een ruimte, en dan stuur je een blanco, en dan stuur je een blanco.De laatste twee delen (d.w.z. gegevens en een einde te maken aan de reeks) is door het, dus we hoeven ons geen zorgen te maken, dus in de PHP.,, wat we moeten doen, is het aangewezen de post,,,, van de richtlijn, dan zal de werkelijke boodschap in de krul.Om de dingen veel eenvoudiger, en ik zal tot een soort, dat gmail, die zal aanvaarden van een gebruikersnaam en wachtwoord en gedetailleerde informatie, gaat het door jouw gmail account een e - mail sturen, zou ik de pasta in de volgende klas, dan zullen we er doorheen, rijen, dit is het meest., de klasse (particuliere gmail privé e - dollar; de dollar; particuliere door; de functie van __construct (dollar per e - mail door middel van de Amerikaanse dollar) {% dit > e - mail: $per e - mail; de dollar - > - = $gaan;} {privé functie mailgen () = = dollar opbrengst; produktie van $= opbrengst; de opbrengst van de opbrengst van het lichaam; - =; ": <".Dollar. "> n "; de opbrengst": < ".""> n "; de datum" rendement ".Datum ("onderzoek")."Winst" betreft: ".De thema 's van $. "N "; de opbrengst van 'n"; de opbrengst van $lichaam; de opbrengst "; de openbare functie () {} $Resp = dollar - > e - mail > de huidige (); de dollar - > e - mail > de volgende (); terug of openbare functies te sturen;} ($, door de dollar, het lichaam) {% dit > e = dollar - > mailgen (); de dollar - > e - mail > sturen ($- > e - mail); de dollar - > e - mail > sturen (USD); - > e - mail > sturen ($); de dollar - > e - mail sturen > ($); $CH = curl_init (" smtps://smtp. Gmail Website: 465 "); curl_setopt ($CH, curlopt_mail_from" < ".De dollar - > e - mail.> "); curl_setopt ($CH, curlopt_mail_rcpt array (" < ".""> "); curl_setopt ($), curlopt_username dollar - > e - mail); curl_setopt ($), curlopt_password dollar - > door de); curl_setopt ($CH, curlopt_use_ssl, curlusessl_all); ///////curl_setopt ($), curlopt_verbose, waar); Als u wilt zien curl_setopt (transacties $CH, curlopt_readfunction array ($," functies "); terug naar curl_exec ($CH);}}, ik hoop dat je reactie, de code is langs de lijn," WOW, dit is een complete smtp voor korte! "Alsof het lijkt ingewikkeld, we gaan.In de eerste plaats, de definitie van drie particuliere variabelen: een boodschap van een generator is opgeslagen, is de gebruiker van e - mail, een wachtwoord is opgeslagen.We hebben de constructeurs, die e - mail wachtwoord voor opslag en later; dit is de manier waarop we kunnen multi - e - mail sturen, zonder dat het nodig is het elke keer weer in.En mailgen, is de functie van de generator PHP 5.5, gebruikt voor de productie van informatie in overeenstemming met de e - mail overeenkomst rechtstreeks in de muziek.Dit is nodig omdat in het gebruik van de in de beschikking is om een dossier, en door de Bank.Dus, we hebben een extra variabelen te herinneren aan de lijn, ik gebruikte een generator, het redden van het standpunt, een functie van de generator recyclen.Kunnen we niet rechtstreeks naar de generator, we hebben een man in het midden.Curly zal blijven deze functie tot het ontstaan van een lege.Dit is de reden waarom in de laatste regel van de generator is een lege string in de categorie van de laatste, in een functie is die het samen.We starten de definitie van voor de generator eerder de privé - variabelen.De volgende, sturen we alle informatie die nodig is voor een generator, en het creëren van een nieuwe vorm van variabele.Hier hebben we het al over gehad, curlopt_mail_from, curlopt_mail_rcpt; ze in kaart te brengen, en gelijkwaardige smtp - commando 's.Curlopt_mail_rcpt, is een reeks, dus je kan in meer dan één adres.Dan, we moeten nog de geloofsbrieven gmail.Ik heb een optie is; het afzeggen, als je wilt dat het smtp - zaken.De laatste twee lijnen van slechts één functie, het moet de gegevens van de informatie in, dan gaan we terug naar de resultaten, en dat is een goede twee lijnen, maar niet zo ingewikkeld.Voor het gebruik van deze functie, de totstandbrenging van deze klasse, en roept deze functie.Er zijn twee e - mail zo een voorbeeld te geven: de dollar = nieuwe gmail gmail ("gmanricks @ gmail. COM", "de code"); $gmail - > ("first_guy @ e - mail verzonden. COM", "het onderwerp van de e - mail", "Hallo, jongen, ik precies wat er gebeurd is."); $gmail - > ("second_guy @ e - mail verzonden. COM", "de verschillende thema 's", "belangrijk nieuws.");,, onderdelen, voltooiing van het artikel, begon ik in een kleine update PHP 5.5, een coole dingen is extra steun voor /string citaat... Constant.Dat betekent dat je kan in statisch touw in de toegang tot individuele personen, zoals de string is een reeks tekens.Dit is een eenvoudig voorbeeld: ECHO, "hallo" [1]; ///////deze lijn zal ECHO heeft ECHO ["e", "tweede", "drie"] [2]; ///////- "drie", is de volgende stap, we hebben, tot slot, het wachtwoord.Dit is toegevoegd aan een test /de laatste vangst blokken; het is een leidende PHP, ongeacht de proberen of ik heet, wil je het proces en, ten slotte, de.Het is een goede zaak, als je wil dat het resultaat van de behandeling van een verklaring proberen /vangen.En niet een herhaling van de code, je kan alleen een deel van het "risico 's", in een poging om de behandeling van alle /blok, blok, in de laatste, een ander gebruik, heeft een van de beste praktijken is, alle geheime code in de laatste stuk.Dit zal ervoor zorgen dat je niet probeert te sluiten, bijvoorbeeld met de - vaak (zoals de code tegen een blok af, je probeerde dicht), en ten slotte het vermelden waard is, is de uitbreiding van mysql zal in deze nieuwe versie te gebruiken.Je moet je code is, mysqli of uitbreiding in plaats van, BOB.Er is lange tijd beschouwd als een anti - model voor het goede PHP team formeel bezwaar, maar veel meer onderzoek in de actualisering van de goederen, vertegenwoordigers van wat ik voel is het belangrijkste en meest opwindende.,, conclusies, bedankt voor het lezen; ik hoop dat je iets op het spoor.Zoals altijd, als je er geen opmerkingen of vragen naar de volgende dialoog, laten we praten.,
Wat te verwachten van de
Previous:- blog betreft: betreft
Next Page:E - mail: bouw - een gewoonte commentaar