ComputereFiltyper

PHP: læser en PHP-fil. Arbejde med filer i PHP: læsning, skrivning og anbefalinger

PHP optrådte meget senere end programmeringssprog styrket deres positioner, formulerede generelle begreber om syntaks, logik, variabler og andre objekter af programmer. Filerne og funktionerne i arbejdet med dem havde ingen fremskridt, og selv problemet med filkodning, der opstod naturligt, førte ikke til kardinalt nye løsninger.

Generelle noter

Hovedarbejdet med filer, uanset hvad de er, er at åbne, læse / skrive og lukke. Du kan bruge låsen / låsefunktionen til at få adgang til filen, mens du behandler den. Du kan indstille læsnings- / skrivepositionen i filen - alt som tidligere, i den fjerne fortid.

Et vigtigt punkt i PHP er overskydende funktioner i at arbejde med filer og mulighederne for at bruge dem. I praksis er det tilstrækkeligt at bruge enkle men arbejdsvarianter. Filen er først og fremmest programhukommelsen. Det kan lagre information. Formålet med ethvert program, formålet med ethvert websted - at repræsentere, behandle og sikre sikkerheden ved information.

Vigtige omstændigheder

Tidligere var kravet om kompatibilitet i det mindste fra under opad uhørlig. Det vil sige, at når en gang er skrevet, er et program på en version af programmeringssproget ideelt kompileret / fortolket i den næste version. I moderne programmering er dette ikke tilfældet. Kravet om kompatibilitet af syntaktiske konstruktioner af sprog er gået ned i historien, og kampen mellem stilarter og programmeringsformer og versioner af disse eller andre instrumenter er blevet normen for deres liv.

Arbejde med filer, såvel som med databaser, er vigtig så meget som grænsefladen på webstedet er vigtig. Den første skal bygges på en sådan måde, at når du skifter platforme, hosting, sprogversioner, behøver du ikke at ændre webstedskoden. Interfacet med filerne skal lægges i et separat script og sikre fuld kompatibilitet samt design af webstedet skal tilpasses til enhver enhed, browser og give resten af funktionaliteten af hjemmesiden de samme muligheder.

Læs og skift dig selv

Kan programmet ændre sig selv, det vil sige, kan scriptet forbedres? Til denne dag er dette problem af interesse for mange. Men opgaven er meget mere praktisk: PHP læser en PHP-fil. Ikke altid udvikleren kan løse denne eller den opgave ved at skrive en bestemt kode. Nogle gange er det nødvendigt at ændre det, når en besøgende kom til webstedet og formulerede et spørgsmål, der ikke var fastsat i udviklingsfasen.

Som i alle andre tilfælde skal du først og fremmest åbne filen. Det er ligegyldigt, om denne fil eksisterer eller ej. Hvis du ved, at filen findes (funktionen file_exists () giver et positivt svar), brug funktionen fopen () med adgang 'r', 'r +', 'a', 'a +'. Hvis der endnu ikke er nogen fil, så har du adgang til 'a', 'a +', 'w', 'w +'. Resultatet af at åbne filen vil være dens deskriptor. Filen er lukket med fclose ().

Det er praktisk at bruge PHP til at læse en fil i en matrix, når der ikke er behov for at behandle det på læsningstidspunktet.

Hvis (file_exists ($ fName)) {

$ ALines = fil ($ fName)

}

I dette tilfælde går hver linje af filen ind i arrayelementet i rækkefølge. Det skal bemærkes, at filerne () eller file_get_contents () ikke behøver at åbne en fil og lukke den.

Når inputfilen er for stor, og du skal finde en hel del oplysninger, eller af andre grunde, kan du bruge PHP-fillæsningslinje for linje. PHP giver mulighed for at gøre dette med funktionerne fgets () og fgetc ().

$ CLines = ''

$ Fvs = fopen ($ fName, 'r')

$ I = 0

Mens ((false! == ($ cLine = fgets ($ fvs, 2000))))) {

$ I ++

$ CLines. = '
'. $ I. '). '. $ CLine

}

Fclose ($ fvs)

Begge muligheder fungerer fejlfrit. Men når du udfører PHP, læser PHP-filen til senere ændringer, skal du følge forholdsreglerne. Det er ikke altid muligt at levere varianter af dets brug af den besøgende på scenen for hjemmesideudvikling. Det er bedre, hvis skiftskiftet udføres inden for webstedets funktioner, og administrationen af denne ændring er ikke tilgængelig for den besøgende, herunder ressourceadministratoren.

Lagring af resultater

De modtagne og opdaterede oplysninger er skrevet til filen ved fputs () funktion linje for linje eller ved funktionen file_put_contents () helt.

$ FName = $ _SERVER ['DOCUMENT_ROOT']. '/tmp/scData.php'

$ Fvs = fopen ($ fName, 'a')

Flock ($ fvs, LOCK_EX)

$ CLine = '1 line'. Chr (10)

Fputs ($ fvs, $ cLine)

$ CLine = '2 line'. Chr (10)

Fputs ($ fvs, $ cLine)

Fflush ($ fvs)

Flock ($ fvs, LOCK_UN)

Fclose ($ fvs)

I rækken-for-række-versionen af pladen kan du manipulere dataene under skriveprocessen, i det andet tilfælde er den skrevne streng eller array placeret i filen som helhed.

$ File = 'scData.php'

$ CContents = file_get_contents ($ file)

// tilføje en post

$ CContents. = "Ny post \ n"

// skriv filen tilbage

File_put_contents ($ file, $ cContents)

Læse og skrive PHP-filer er enkle og naturlige. Det er dog vigtigt at huske: hver fil har et navn, en udvidelse og en sti (mappe). For at PHP-scriptet skal kunne læse og skrive filer, skal dette script have de rette rettigheder. De sættes automatisk på hosting, men i nogle tilfælde skal de udvides.

I nogle tilfælde er det ønskeligt at kontrollere resultaterne ved at udføre en testaflæsning. Skrivning af php-filer kræver dette under udviklingsfasen, men i nogle tilfælde af hensyn til sikkerhed eller pålidelighed på webstedet er dataindtastningsverifikation afgørende.

Et karakteristisk træk ved PHP, MySQl, JavaScript, og især browsere: stille stille nogle fejl. "Det blev ikke anerkendt, det skete ikke ..." - Det er ikke en god praksis med informationsteknologiens forkant, men det lærer udviklere at gøre det rigtige og skrive ren kvalitetskode, hvilket heller ikke er dårligt.

PHP og arbejder med ægte dokumenter

PHP læser en PHP-fil er af praktisk interesse, men det er et programmeringsområde. Bruger og besøgende på webstederne er interesseret i information om en anvendt natur, som han er vant til at se i form af tabeller og dokumenter, især i formaterne * .xlsx og * .docx-filer. Disse filer er i MS Excel og MS Word format.

Lister over varer, priser, egenskaber er generelt dannet i form af tabeller, så PHP læsning Excel-fil er afgørende.

For at arbejde med sådanne filer er PHPExcel og PHPWord-biblioteker blevet udviklet. Indholdet af * .xlsx og * .docx-filerne er dog repræsenteret i OOXML-standarden, dvs. det egentlige dokument, der er tilgængeligt for forståelse, er repræsenteret af zip-arkivet. Ziparkiv er et sæt af filer, herunder billeder, objekter, formler, indlæg fra andre programmer. Tekstfiler her er repræsenteret af beskrivelser i form af tags. For at læse en sådan fil er lille, skal du analysere det for at få indhold og struktur til brug og modifikation.

Dette betyder, at læseoperationen bliver en procedure for åbning af arkivet. Disse biblioteker åbner arkivet for selve dokumentet og giver udvikleren omfattende funktioner til læsning, behandling og registrering af sådanne dokumenter.

Excel-tabeller

For at kunne læse Excel-regnearket er det nok at kende navnet på dets fil og stien til det ($ xls). Som følge af udførelse af den følgende kode genereres en række værdier af den originale Excel-tabel:

Include_once 'PhpOffice / PhpExcel / IOFactory.php'

Funktion scGetExcelFile ($ xls) {

$ ObjPHPExcel = PHPExcel_IOFactory :: load ($ xls)

$ ObjPHPExcel-> setActiveSheetIndex (0)

// dette array indeholder arrayer af strenge

$ ASheet = $ objPHPExcel-> getActiveSheet ()

$ Array = array ()

// behandling

Foreach ($ aSheet-> getRowIterator () som $ række) {

$ CellIterator = $ row-> getCellIterator ()

$ Item = array ()

Foreach ($ cellIterator som $ celle) {

Array_push ($ item, iconv ('utf-8', 'cp1251', $ celle-> getCalculatedValue ()))

}

Array_push ($ array, $ item)

}

Returner $ array

}

At læse og behandle Excel-filer er meget vanskeligere end at behandle Word-dokumenter. Den bedste løsning, hvis du har brug for at gennemføre et seriøst projekt til læsning og behandling af applikationsoplysninger, er først at beherske PHPWord-biblioteket. Dette vil give god erfaring og en hurtig indgang i problemets specifikationer.

Word-dokumenter

Kun to linjer:

$ OWord = new \ PhpOffice \ PhpWord \ PhpWord ()

$ ODocx = $ this-> oWord-> loadTemplate ($ cFileName)

Nu er dokumentet $ cFileName tilgængeligt for behandling. Derefter åbnes arkivet, vælger og analyserer dets indhold, som kan vises på webstedet, ændres og skrives tilbage.

$ ZipClass = ny ZipArchive ()

$ ZipClass-> open ($ this-> tempFileName)

// læs hele indholdet af dokumentet

For ($ i = 0; $ i <$ zipClass-> numFiles; $ i ++) {

$ CNameIn = $ zipClass-> getNameIndex ($ i)

$ CNameInExt = substr ($ cNameIn, -4)

Hvis (($ cNameInExt == '.xml') || ($ cNameInExt == 'rels')) {

// filer med udvidelserne '.xml' og '.xml.rels' gemmes i dokumenttabellen

// hver xml-linje er skrevet med et unikt nummer i rækkefølge

$ CBodyIn = $ zipClass-> getFromName ($ cNameIn)

$ CBodyInLen = strlen ($ cBodyIn)

} Ellers {

// Alle andre filer er skrevet til dokumentmappen som den er

$ CNameOnly = substr ($ cNameIn, strrpos ($ cNameIn, '/') + 1)

$ ZipClass-> getFromName ($ cNameIn, $ cWorkPath); // indhold som en fil

}

Muligheder, der åbnes ved hjælp af PHP Excel og PHP Word, giver dig mulighed for at manipulere ægte dokumenter, gøre deres indhold relevante til enhver tid. I dagens dynamiske verden bliver dette meget vigtigt. Tyngdepunktet er for længst flyttet fra den lokale brug af computerteknologi til et virtuelt internetrum. Derfor er oprettelsen af tabeller og dokumenter i lokale produkter fra Microsoft mindre effektiv end at arbejde med sådanne dokumenter i automatisk og halvautomatisk tilstand på et websted, der ikke kun er tilgængelig for skaberen af bordet eller dokumentet, men også for forbrugerne.

Tekstfiler, et andet liv

I den første tilnærmelse er tekstfiler lettere end PHP-filer eller applikationsdokumenter. Der er dog noget at tænke på. Operationerne for læsning / skrivning af sådanne filer er allerede angivet ovenfor, men betydningen af sådanne filer er meget vigtigere.

Hvis der findes en sådan som en klient og en server (JavaScript dominerer den første, er PHP den første), selv om cookie- og sessionsmekanismerne ikke klare behovet for at overføre oplysninger mellem scripts, sider eller andre processer.

Du kan afspejle de nødvendige ændringer i databasen, men med alle deres fordele og hurtighed kan små midlertidige eller permanente tekstfiler være en meget mere interessant mulighed for informationsoverførsel. Hvis du ikke opretter mange små filer og styrer deres størrelser, kan de være en specifik og mere fleksibel version af databasen.

PHP læser en tekstfil er hurtig, du kan straks analysere den i en struktur, et array eller en genstand. Sidstnævnte er meget vigtigt, da det giver dig mulighed for at oprette objekter, der lever uden for den tid, der er afsat til PHP-scriptet, som som du ved kan eksistere kun på serveren, og kun i øjeblikket siden er indlæst, dannes AJAX-svaret eller af en anden grund, der udløser PHP-tolken.

Lovende ideer, anbefalinger

Hvis du mener, at tekstfilen er indholdet og strukturen fra udvikleren, er PHP-filen syntaxen til tolken plus udviklerens logik, og de "tagged" beskrivelser af html, css, xml er mere semantiske elementer, men reguleres af statiske standarder. Man kan komme til den konklusion, at det sandsynligvis er tid for filer at erhverve nyt indhold, og det skal bestemme deres kvalitet og logik for ansøgningen. Netop fordi programmeringen endnu ikke er klar til næste fase af dens udvikling, forbliver filerne blot filer, som udvikleren opretter og bestemmer deres brug.

Den mest interessante og lovende, når PHP læser en PHP-fil, forekommer i sig selv, når dette bliver nødvendigt. En simpel PHP-læsning af en streng fra en fil resulterer i oprettelsen af et objekt, i det mindste i den tilstand, hvor den blev gemt. Disse er ikke ligefrem de sædvanlige ideer, men i virkeligheden i den moderne verden ændrer alt så hurtigt.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 da.birmiss.com. Theme powered by WordPress.