RekenaarsLêertipes

PHP: PHP-lêer lees nie. Werk met lêers in PHP: lees, skryf, en aanbevelings

PHP verskyn veel later as die programmeertale hul posisies versterk, formuleer 'n algemene idee van die sintaksis, logika, veranderlikes, en ander programme voorwerpe. Lêers en funksies saam met hulle het geen vordering, en selfs die probleem van lêer kodering wat ontstaan het weens natuurlike oorsake, nie lei tot radikaal nuwe oplossings.

algemene opmerkings

Die belangrikste werk met lêers, wat dit ook mag wees, is om oop te maak, lees / skryf en naby. Jy kan die funksie slot gebruik / ontsluit toegang tot die lêer by die tyd van die verwerking, kan gemonteer lees / skryf posisie in 'n lêer - alles, soos in die verlede, in die verre verlede.

'N Belangrike aspek van PHP is 'n oormaat van funksies om te werk met lêers en die opsies vir die gebruik daarvan. In die praktyk genoeg om 'n eenvoudige, maar werk opsies gebruik. Lêer - dit is, in die eerste plek, die program geheue. Dit is moontlik om inligting te stoor. Die doel van 'n program, met die doel om enige webwerf - om voor te stel, te bestuur en te verseker dat die veiligheid van inligting.

belangrike feit

Dit word gebruik om onveranderlike vereiste van verenigbaarheid ten minste van onder na bo te wees. Dit wil sê, sodra die program in een weergawe van die programmeertaal perfek saamgestel / geïnterpreteer op die volgende weergawe geskryf. In vandag se program is nie. verenigbaarheid vereiste sintaksis van die taal het afgegaan in die geskiedenis as 'n stryd tussen style en sagteware en weergawes van verskillende instrumente die norm van die lewe geword het.

Werk met lêers, soos databasisse, so belangrik, hoe belangrik die webwerf koppelvlak. Die eerste gebou moet word in so 'n manier dat wanneer jy platform, hosting verander, weergawe van die taal het nie nodig om die webwerf-kode te verander. lêer bestuur koppelvlak moet in 'n aparte script geplaas word en om volle versoenbaarheid, sowel as website design verseker moet voldoende aan te pas by enige toestel, die leser, en verskaf die res van die funksies van die webwerf dieselfde geleenthede.

Lees en verander jouself

Kan die program self te verander, dit wil sê, of om die script te verbeter? Tot vandag toe, die vraag van belang is vir baie. Maar dit klink baie meer praktiese taak: PHP PHP n lêer lees. Nie altyd die ontwikkelaar kan hierdie of daardie probleem op te los deur die skryf van 'n spesifieke kode. Soms is dit nodig om dit te verander wanneer die site besoeker gekom en by die stadium van ontwikkeling van die probleem nie in die vooruitsig gestel.

Soos in alle ander gevalle, moet jy eers die lêer oop te maak. Dit maak nie saak, daar is die lêer of nie. As jy weet dat die lêer bestaan (file_exists funksie () gee 'n positiewe antwoord), gebruik fopen () funksie om toegang 'r', 'r + "," 'n "," 'n +'. As jy nog nie die lêer, dan toegang 'n "," 'n + "," w "het, 'w +'. Die resultaat sal die lêer descriptor oop te maak. Sluit die funksie lêer fclose ().

Dit is gerieflik om PHP gebruik om die lêer te lees in 'n skikking wanneer dit nie nodig is om te hanteer ten tyde van die lesing.

indien (file_exists ($ fName)) {

$ ALines = lêer ($ fName)

}

In hierdie beliggaming elke ry van die lêer is gemerk in verskeidenheid element agtermekaar. Dit sal opgemerk word dat die funksie lêer () of file_get_contents () hoef nie na 'n lêer oop te maak en toe te maak.

Wanneer die insette lêer is te groot en moet nogal 'n bietjie van inligting te vind, of om ander redes, kan jy PHP gebruik om die lêer reël vir reël gelees. PHP verskaf die vermoë om dit fgets () en fgetc () doen.

$ Clines = ''

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

$ I = 0

terwyl ((vals! == ($ Cline = fgets ($ FVS, 2000)))) {

$ I ++

$ Clines. = '
. $ I. '). '. $ CLINE

}

fclose ($ FVS)

Beide opsies werk perfek. Maar die uitvoering van PHP PHP lees van 'n lêer vir later veranderinge, voorsorgmaatreëls getref moet word. Dit kan nie altyd met dien verstande op die stadium van ontwikkeling van die terrein opsies vir die gebruik daarvan deur die besoeker. Dit is beter as die script verandering binne die terrein funksies gedra, en die bestuur van hierdie verandering is nie sigbaar vir besoekers, insluitende 'n hulpbron bestuurder.

red resultate

Haal en op te dateer inligting gestoor in 'n lêer fputs () funksie lyn of funksie file_put_contents () heeltemal.

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

$ FVS = fopen ($ fName, 'n ")

stroom ($ FVS, LOCK_EX)

$ Cline = '1 lyn. chr (10)

fputs ($ FVS, $ Cline)

$ Cline = '2 lyn. chr (10)

fputs ($ FVS, $ Cline)

fflush ($ FVS)

stroom ($ FVS, LOCK_UN)

fclose ($ FVS)

In die verpersoonliking, die opname reël vir reël, is dit moontlik om die data te manipuleer tydens die opname proses, in die tweede geval, is die opneem of ry skikking geplaas in die hele lêer.

$ File = 'scData.php'

$ CContents = file_get_contents ($ lêer)

// inskrywings te voeg

$ CContents. = "Nuwe inskrywing \ n"

// File item terug

file_put_contents ($ lêer, $ cContents)

Lees en skryf van lêers PHP is eenvoudig en natuurlik. Dit is egter belangrik om in gedagte te hou: Elke lêer het 'n naam, uitbreiding en pad (gids). 'N PHP script het die vermoë om lêers te lees en skryf, moet hierdie script die nodige regte het. Hulle sit outomaties vir hosting, maar in sommige gevalle, hulle wil om uit te brei.

In sommige gevalle, is dit wenslik om die resultate, die toets leestoets. Skryf PHP lêers is nodig tydens die ontwikkelingsfase, maar in sommige gevalle, in die belang van die veiligheid of betroubaarheid van die terreininspeksie data opname is noodsaaklik.

'N kenmerk van PHP, MySQL, JavaScript, en veral implementeer: stil rit 'n paar foute. "Ek weet nie herken nie, dit nie doen nie ..." - nie 'n goeie praktyk van die voorkant van inligtingstegnologie, maar dit leer ontwikkelaars maak nie foute nie en skryf skoon, hoë-gehalte-kode, wat ook goed.

PHP en werk met werklike dokumente

PHP PHP lees van 'n lêer, natuurlik, is van praktiese belang, maar hierdie ontwikkeling gebied. Kliënte en besoekers wat belangstel in die toegepaste aard van die inligting wat hy gebruik om te sien in die vorm van tabelle en dokumente, in die besonder, in formate * .xlsx en * Docx lêers. Dit is lêers in MS Excel en MS Word.

Produk lyste, pryse, beskik oor 'n gemeenskaplike vorm in die vorm van tabelle, so PHP lees Excel lêer is noodsaaklik.

Om te werk met hierdie lêers ontwerp PHPExcel en PHPWord biblioteek. Maar die inhoud van lêers * .xlsx en * .docx verteenwoordig in die OOXML standaard, dan is daar 'n werklike begrip van die beskikbare dokument is om die zip-lêer ingedien word. Zip argief - is 'n versameling van lêers, insluitend foto's, voorwerpe, formules, plak vanaf ander programme. Tekslêers is 'n beskrywing in die vorm van etikette. Lees die dokument is klein, is dit nodig om uit te maak, te kry van die inhoud en struktuur te gebruik en verandering.

Dit beteken dat die lees werking is omskep in die opening van die argief proses. Hierdie biblioteke oop dokument biblioteek jouself en gee ontwikkelaars uitgebreide funksies vir lees, verwerking en opname van sodanige dokumente.

Excel-tabel

Met die oog op die Excel-tabel te lees, is dit genoeg om die naam van die lêer en die pad om dit te ($ xls) weet. As gevolg van die volgende kode verskeidenheid van die oorspronklike Excel spreadsheet waardes sal gegenereer word:

include_once 'PhpOffice / PhpExcel / IOFactory.php'

funksioneer scGetExcelFile ($ xls) {

$ ObjPHPExcel = PHPExcel_IOFactory :: load ($ xls)

$ ObjPHPExcel-> setActiveSheetIndex (0)

// hierdie reeks bevat skikkings van rye

$ ASheet = $ objPHPExcel-> getActiveSheet ()

$ Array = array ()

// verwerking

foreach ($ aSheet-> getRowIterator () as $ ry) {

$ CellIterator = $ row-> getCellIterator ()

$ Item = array ()

foreach ($ cellIterator as $ sel) {

array_push ($ item, iconv ( 'utf-8', 'cp1251', $ sel-> getCalculatedValue ()))

}

array_push ($ skikking, $ item)

}

terugkeer $ array

}

Lees en die verwerking van Excel-lêer is veel meer kompleks verwerking van Word-dokumente. Die beste opsie as jy nodig het om 'n groot projek te implementeer vir die lees en die verwerking van die aansoek inligting - eerste meester biblioteek PHPWord. Dit sal 'n goeie ervaring en 'n vinnige toegang tot die besonderhede van die saak te gee.

Word-dokumente

Slegs twee lyne:

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

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

Nou is die dokument is beskikbaar vir $ cFileName verwerking. Volgende, maak die argief, kies en die inhoud daarvan, wat op die webwerf, verandering kan vertoon en skryf terug te ontleed.

$ ZipClass = nuwe ZipArchive ()

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

// lees die hele inhoud van die dokument

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

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

$ CNameInExt = substr ($ cNameIn, -4)

indien (($ cNameInExt == 'Xml') || ($ cNameInExt == 'rels')) {

// lêers met die uitbreiding 'Xml' en '.xml.rels' gestoor in 'n tafel dokument

// elke xml-string is geskrywe met 'n unieke nommer van die einde

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

$ CBodyInLen = StrLen ($ cBodyIn)

} Else {

// al die ander lêers gestoor in die gids dokument in die vorm soos dit is

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

$ ZipClass-> getFromName ($ cNameIn, $ cWorkPath); // inhoud van 'n lêer

}

Geleenthede wat aangebied word deur die gebruik van PHP Excel en PHP Woord, laat jy die ware dokumente te manipuleer, maak hulle relevante inhoud op enige gegewe tyd. In vandag se dinamiese wêreld, is dit baie belangrik. Die swaartepunt is lank verskuif van die plaaslike gebruik van rekenaartegnologie in die virtuele Internet ruimte. Omdat die skepping van sigblaaie en dokumente in plaaslike produkte van Microsoft is minder doeltreffend as die werk met sodanige dokumente in 'n outomatiese of semi-outomatiese modus, op die terrein, wat beskikbaar is om nie net die skepper van die tafel of 'n dokument, maar ook sy kliënte.

Teks lêers, 'n ander lewe

As 'n eerste benadering teks lêers makliker as PHP lêers of aansoek dokumente. Daar is egter iets om oor te dink. lees / skryf lêers sulke operasies is reeds hierbo geïdentifiseer, maar veel meer belangrik is die betekenis van sulke lêers.

Kohl is so 'n werklikheid, die kliënt en die bediener (in die eerste leisels JavaScript, op die tweede - PHP), selfs meganismes koekie en sessies kan nie tred hou met die behoefte om inligting oor te dra tussen die skrifte, bladsye, dié of ander prosesse.

Dit is moontlik om die nodige veranderinge aan die databasis te besin, maar vir al hul meriete en spoed klein tydelike of permanente teks lêers kan baie meer interessante inligting oordrag opsie wees. As jy nie 'n baie klein lêers te skep en beheer oor hul grootte, kan hulle 'n spesifieke en 'n meer buigsame weergawe van die databasis.

PHP lees tekslêer is vinnig, dit kan dadelik afgetakel in die struktuur, skikking of voorwerp. Laasgenoemde is baie belangrik, want dit laat jou toe om voorwerpe wat buite die tyd om die PHP script, wat bekend is toegeken woon skep om te bestaan net op die bediener, en net vir die bladsy laai, die vorming van AJAX reaksie of om enige ander rede, die roeping van die bekendstelling van die PHP tolk.

Belowende idees, raad

As jy dink oor die feit dat 'n teks lêer - dit is die inhoud en struktuur van die ontwikkelaar, PHP lêer - 'n sintaksis tolk plus Ontwikkelaars logika en "gemerk" beskrywing van HTML, CSS, XML - dis meer semantiese elemente, maar gereguleer statiese standaarde. Jy kan tot die gevolgtrekking gekom dat waarskynlik 'n lêer dit is tyd om nuwe inhoud te koop, en dit moet self bepaal die kwaliteit en aansoek logika. Dit is omdat die ontwikkeling is nog nie gereed vir die volgende fase van sy ontwikkeling, die lêers nou is eenvoudig lêers wat die ontwikkelaar skep en definieer die gebruik daarvan.

Die mees interessante en belowende lees PHP PHP lêer plaasvind outomaties wanneer die behoefte ontstaan. 'N Eenvoudige PHP lees lyne van 'n lêer lei tot die skepping van die voorwerp, ten minste in dieselfde toestand waarin dit was gered. Dit is nie heeltemal die gewone idees, maar omdat alles verander so vinnig in vandag se wêreld.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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