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

PHP syntes meget senere end sprogprogrammering styrket sin position, formulerede en fælles forståelse af syntaks, logik, variabler og andre programobjekter. Filer og funktioner i arbejdet med dem havde ingen fremskridt, og selv problemet med kodning af filer, der opstod naturligt, førte ikke til radikalt nye løsninger.

Generelle noter

Hovedarbejdet med filer, uanset hvad de er,består i åbning, læsning / skrivning og lukning. Du kan bruge funktionerne til at blokere / fjerne blokering af adgangen til filen, mens den behandles. Du kan indstille læsnings- / skrivepositionen i filen - alt som tidligere er i fjerntiden.

php læse php fil

Et vigtigt punkt i PHP er overskydende funktionerarbejde med filer og muligheder for deres brug. I praksis er det nok at bruge enkle, men arbejdsmuligheder. Filen er først og fremmest hukommelsen af ​​programmet. Det kan lagre oplysninger. Målet med ethvert program er at formålet med ethvert websted er at repræsentere, behandle og sikre informationssikkerheden.

Materiale omstændigheder

Det plejede at være unshakable kompatibilitet kravi hvert fald fra bunden opad. Det vil sige, at et program, der en gang er skrevet i en version af et programmeringssprog, kompileres / fortolkes ideelt i den næste version. I moderne programmering er det ikke. Kravet om kompatibilitet af syntaktiske konstruktioner af sproget er gået ned i historien, og kampen mellem stilarter og programmeringsværktøjer og versioner af forskellige værktøjer er blevet normen for deres liv.

At arbejde med filer, som med databaser, er vigtigt.så vidt som webstedets grænseflade er vigtig. Den første skal bygges på en sådan måde, at når du skifter platformen, hosting, sprogversion, er det ikke nødvendigt at ændre webstedskoden. Grænsefladen til at arbejde med filer skal placeres i et separat script og sikre fuld kompatibilitet, samt at site design skal tilpasses til en hvilken som helst enhed, browser og give resten af ​​webstedets funktionalitet de samme funktioner.

Læs og skift dig selv

Kan et program ændre sig selv, det kan detSkifter scriptet? Indtil denne dag er dette spørgsmål mange interesser. Men opgaven lyder meget mere praktisk: PHP læser PHP-fil. Ikke altid udvikleren kan løse dette eller det pågældende problem 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 designfasen.

Som i alle andre tilfælde, først og fremmestfilen skal åbnes. Det er ligegyldigt, om denne fil eksisterer eller ej. Hvis filen er kendt for at eksistere (funktionen file_exists () giver et positivt svar), bruges fopen () -funktionen med adgang til 'r', 'r +', 'a', 'a +'. Hvis der endnu ikke er nogen fil, så har du adgang til 'a', 'a +', 'w', 'w +'. Resultatet af at åbne en fil er dens deskriptor. Lukker filen med funktionen fclose ().

php-fil læser linje for linje

Det er praktisk at bruge PHP-fillæsning i et array, når der ikke er behov for at behandle det på læsningstidspunktet.

hvis (file_exists ($ fName)) {

$ aLines = fil ($ fName)

}

I denne udførelsesform falder hver linje af filen i arrayelementet i rækkefølge. Det skal bemærkes, at filen () eller file_get_contents () ikke behøver at åbne filen og lukke den.

Når inputfilen er for stor, men du skal findeEn hel del oplysninger, eller af andre grunde, kan du bruge PHP til at læse en fillinie 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. = "<br/>". $ i. ").". $ cLine

}

fclose ($ fvs)

php læse fil i array

Begge muligheder fungerer fejlfrit. Men når man udfører en PHP-læst PHP-fil til senere ændring, skal man tage sig af. Det er langt fra altid muligt at forudse i stedet for udviklingen af ​​hjemmesiden mulighederne for brug af den besøgende. Det er bedre, hvis skifteskiftene udføres inden for webstedets funktioner, og ændringen er ikke tilgængelig for den besøgende, herunder ressourceadministratoren.

Gem resultater

Den modtagne og opdaterede information er skrevet til filen ved hjælp af funktionen fputs () linje for linje eller af funktionen file_put_contents () helt.

$ fName = $ _SERVER ["DOCUMENT_ROOT"]. "/tmp/scData.php"

$ fvs = fopen ($ fName, "a")

flok ($ fvs, LOCK_EX)

$ cLine = "1 linje". chr (10)

fputs ($ fvs, $ cLine)

$ cLine = "2 line". chr (10)

fputs ($ fvs, $ cLine)

fflush ($ fvs)

flok ($ fvs, LOCK_UN)

fclose ($ fvs)

I line-by-line-versionen af ​​posten kan du manipulere data under optagelsesprocessen, i det andet tilfælde er den optagne streng eller array placeret i hele filen.

$ file = "scData.php"

$ cContents = file_get_contents ($ file)

// tilføj adgang

$ cContents. = "ny indtastning"

// skriv filen tilbage

file_put_contents ($ file, $ cContents)

læs skrive php filer

At læse og skrive PHP-filer er enkelt ognaturligt. 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 oplyses automatisk på hosting, men i nogle tilfælde skal de udvides.

I nogle tilfælde er det tilrådeligt at kontrollereResultater ved at afslutte en testlæsning. Skrivning af PHP-filer kræver dette i designfasen, men i nogle tilfælde er det vigtigt, at det er af hensyn til sikkerheden eller pålideligheden af ​​webstedet at kontrollere dataregisteret.

Karakteristisk træk ved PHP, MySQl, javascript ogisær browsere: Lad stille nogle fejl tage deres kurs. "Ikke anerkendt, ikke færdig ..." er ikke for god praksis af forkanten af ​​informationsteknologi, men det lærer udviklere at ikke lave fejl og skrive ren kode af høj kvalitet, hvilket heller ikke er dårligt.

PHP og arbejde med ægte dokumenter

Php læsning php fil repræsenterer absolutpraktisk interesse, men det er et programmeringsområde. Brugeren og besøgende på webstedet er interesserede i informationer om en anvendt natur, som han sædvanligvis ser i form af tabeller og dokumenter, især i * .xlsx og * .docx filformaterne. Disse er filer i MS Excel og MS Word.

Lister over varer, priser, specifikationer accepteres generelt i form af tabeller, så PHP læser en Excel-fil er afgørende.

Biblioteker er blevet udviklet til at arbejde med sådanne filer.PHPExcel og PHPWord. Indholdet af * .xlsx og * .docx-filerne er dog repræsenteret i OOXML-standarden, dvs. et ægte forståeligt dokument er repræsenteret af et zip-arkiv. Ziparkiv er et sæt af filer, herunder billeder, objekter, formler, indlæg fra andre programmer. Tekstfiler præsenteres her i form af tags. For at læse en sådan fil er det ikke nok, skal du analysere det for at få indhold og struktur til at bruge og ændre.

php læse linje fra fil

Det betyder, at læsningens drift bliver tilprocedure for åbning af arkivet. Disse biblioteker åbner dokumentarkivet selv og giver udvikleren omfattende funktioner til læsning, behandling og skrivning af sådanne dokumenter.

Excel regneark

For at kunne læse et Excel-regneark er det nok at kende navnet på dets fil og stien til det ($ xls). Som et resultat af at udføre følgende kode, vil der blive dannet 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)

}

returnere $ array

}

Læsning og behandling af Excel-filer betydeligthårdere forarbejdningsorddokumenter. Den bedste mulighed, 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 en god oplevelse og hurtig adgang til problemets specifikationer.

Word-dokumenter

Kun to linjer:

$ oWord = ny PhpOfficePhpWordPhpWord ()

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

Nu er dokumentet $ cFileName tilgængeligt for behandling. Derefter åbnes arkivet, dets indhold er valgt og analyseret, hvilket kan vises på webstedet, ændres og skrives tilbage.

php læse excel-fil

$ 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 udvidelser ".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 det er

$ cNameOnly = substr ($ cNameIn, strrpos ($ cNameIn, "/") + 1)

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

}

Funktioner, der åbner med PHPExcel og PHP Word giver dig mulighed for at manipulere ægte dokumenter og gøre deres indhold relevant til enhver tid. I den moderne dynamiske verden bliver det meget vigtigt. Tyngdepunktet er længe blevet overført fra lokal brug af computerteknologi til virtuelt internetrum. Fordi oprettelsen af ​​tabeller og dokumenter i lokale produkter fra Microsoft er mindre effektiv end at arbejde med sådanne dokumenter i automatisk og halvautomatisk tilstand på webstedet, som ikke kun er tilgængelig for skaberen af ​​bordet eller dokumentet, men også for forbrugerne.

Tekstfiler, et andet liv

Som en første tilnærmelse er tekstfiler enklere endPHP-filer eller applikationsdokumenter. Der er dog noget at tænke over. Læs / skriv operationer af sådanne filer er allerede angivet ovenfor, men betydningen af ​​sådanne filer er meget vigtigere.

Kohl er sådan en given, som klient og server (påden første er domineret af JavaScript, den anden af ​​PHP), selv cookie- og sessionsmekanismerne kan ikke klare behovet for at overføre oplysninger mellem scripts, sider eller andre processer.

Du kan afspejle de ønskede ændringer i databasen, menFor alle deres fortjenester og hurtighed kan små midlertidige eller permanente tekstfiler være en meget mere interessant mulighed for overførsel af information. Hvis du ikke opretter mange små filer og styrer deres størrelse, kan de være en specifik og mere fleksibel version af databasen.

php læser tekstfil

PHP tekstfil læsning er hurtig,det kan straks adskilles i en struktur, array eller objekt. Sidstnævnte er meget vigtigt, fordi det giver dig mulighed for at oprette objekter, der lever uden for den tid, der er tildelt til PHP-scriptet, som som du ved kun kan eksistere på serveren og kun på tidspunktet for indlæsning af siden, generering af et AJAX-svar eller af andre grunde, der udløser PHP-tolken.

Lovende ideer, anbefalinger

Hvis du tænker på, at tekstfilen erindhold og struktur fra udvikleren, PHP-fil er tolkens syntax plus udviklerlogik, og "tag" beskrivelser af html, css, xml er mere meningsfulde elementer, men reguleret af statiske standarder. Du kan komme til tanken om, at det sandsynligvis er tid for filerne at erhverve nyt indhold, og det skal selv bestemme deres kvalitet og logik for brug. Netop fordi programmeringen endnu ikke er klar til næste fase af dens udvikling, forbliver filerne bare de filer, som udvikleren opretter og bestemmer deres brug.

Den mest interessante og lovende når PHPAt læse en PHP-fil sker, når behovet opstår. En simpel PHP, der læser en linje fra en fil, resulterer i oprettelsen af ​​et objekt, i det mindste i den tilstand, hvor den blev gemt. Disse er ikke ligefrem velkendte ideer, men i den moderne verden ændrer alt så hurtigt.