muzruno.com

PHP: четене на PHP файл. Работа с файлове в PHP: четене, писане и препоръки

PHP се появи много по-късно, отколкото езиците за програмиране засилиха позициите си, формулираха общи понятия за синтаксис, логика, променливи и други обекти на програмите. Файловете и функциите за работа с тях нямат никакъв напредък и дори проблемът с кодирането на файлове, който възникна по естествени причини, не доведе до кардинални нови решения.

Общи бележки

Основната работа с файлове, каквито и да са те, е да се отвори, чете и пише и да се затвори. Можете да използвате функцията за заключване / отключване, за да получите достъп до файла, докато го обработвате. Можете да зададете позицията за четене / запис във файла - всичко, както и преди, в далечното минало.

php четене php файл

Важна точка в PHP е излишъкът от функциите на работа с файловете и възможностите за тяхното използване. На практика е достатъчно да се използват прости, но работещи варианти. Файлът е, преди всичко, програмната памет. Тя може да съхранява информация. Целта на всяка програма, целта на всеки сайт - да представлява, обработва и гарантира безопасността на информацията.

Съществено обстоятелство

Преди това изискването за съвместимост поне отдолу нагоре беше непоклатимо. Това означава, че веднъж написана програма за една версия на програмния език е идеално съставена / тълкувана в следващата версия. В съвременното програмиране това не е така. Изискването за съвместимост на синтактичните конструкции на езика е потъвало в историята и борбата между стиловете и средствата за програмиране и версиите на тези или други инструменти се е превърнала в норма на техния живот.

Работата с файлове, както и с бази данни е също толкова важна, колкото интерфейса на сайта е важен. Първата трябва да бъде построена по такъв начин, че при смяна на платформи, хостинг, езикови версии, не е необходимо да променяте кода на сайта. интерфейс за управление на файлове трябва да бъде поставен в отделен сценарий и за да се гарантира пълна съвместимост, както и уеб дизайн трябва адекватно да се адаптира към всяко устройство, браузър, и да предостави на останалата част от функционалността на сайта същите възможности.

Прочетете и променете себе си

Може ли програмата да се промени, т.е. може ли да се подобри сценарият? До този момент този въпрос е от интерес за мнозина. Но задачата е много по-практична: PHP чете PHP файл. Не винаги разработчикът може да реши тази или тези задачи, като напише конкретен код. Понякога е необходимо да се промени, когато посетител дойде на обекта и формулира въпрос, който не е предвиден на етапа на разработка.

Както във всички останали случаи, първо трябва да отворите файла. Няма значение дали този файл съществува или не. Ако знаете, че файлът съществува (функцията file_exists () дава положителен отговор), използвате функцията fopen () с достъп lsquo-rrsquo-, lsquo-r + rsquo-, lsquo-arsquo-, lsquo-a + rsquo. Ако файлът вече не е там, тогава с достъп lsquo-arsquo-, lsquo-a + rsquo-, lsquo-wrsquo-, lsquo-w + rsquo. Резултатът от отварянето на файла ще бъде неговата дръжка. Файлът е затворен с fclose ().

php четене на файл по ред

Удобно е да използвате PHP, за да четете файл в масив, когато няма нужда да го обработвате по време на четене.

ако (file_exists ($ fName)) {

$ aLines = файл ($ fName)

}

В този случай всеки ред от файла влиза последователно в елемента от масива. Трябва да се отбележи, че функциите на файла () или file_get_contents () не трябва да отварят файл и да го затварят.

Когато входният файл е твърде голям и трябва да намерите доста информация или по други причини, можете да използвате реда за четене на линкове по PHP. PHP предоставя възможността да направи това с функциите fgets () и fgetc ().

$ cLines = ``

$ fvs = fopen ($ fName, `r`)

$ i = 0

докато {(фалшив! == ($ cLine = fgets ($ fvs, 2000))))) {

$ i ++

$ cLines. = `
". $ i. "). ". $ cLine

}

fclose ($ fvs)

php четене на файл в масив

И двата варианта работят безупречно. Въпреки това, при извършване на PHP четене на PHP файл за по-късна промяна, трябва да следвате предпазните мерки. Не винаги е възможно да се предоставят варианти на използването му от посетителя на етапа на разработването на уебсайта. По-добре е промяната на скриптовете да се извършва в рамките на функциите на сайта, а управлението на тази промяна не е на разположение на посетителя, включително администратора на ресурсите.

Запазване на резултатите

Получената и актуализирана информация се записва във файла чрез fputs () функция по ред или по file_put_contents () функция изцяло.

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

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

стадо ($ fvs, LOCK_EX)

$ cLine = `1 линия`. chr (10)

fputs ($ fvs, $ cLine)

$ cLine = `2 линия`. chr (10)

fputs ($ fvs, $ cLine)

fflush ($ fvs)

стадо ($ fvs, LOCK_UN)

fclose ($ fvs)

В реда по ред на записа можете да манипулирате данните по време на процеса на запис, а във втория случай, низовете за запис или масивът се поставят във файла като цяло.

$ file = `scData.php`

$ cContents = file_get_contents ($ file)

// добавяне на запис

$ cContents. = "нов запис n"

// напишете файла обратно

file_put_contents ($ file, $ cContents)

четене на PHP файлове

Четенето и писането на PHP файлове е проста и естествена. Важно е обаче да имате предвид: всеки файл има име, разширение и път (папка). За да може PHP скриптът да чете и пише файлове, този скрипт трябва да има съответните права. Те са автоматично пуснати на хостинг, но в някои случаи те трябва да бъдат разширени.

В някои случаи е препоръчително да проверите резултатите, като извършите тестова четене. Писането на PHP файлове изисква това по време на фазата на разработка, но в някои случаи, в интерес на сигурността или надеждността на сайта, проверката на данните е от съществено значение.

Характерна особеност на PHP, MySQL, jаvascript и особено на браузърите: тихо отдаване под наем на някои грешки. "Това не беше признато, това не се случи hellip- "не е добра практика на водещия ръб на информационните технологии, но учи разработчиците да не правят грешки и да пишат чист, качествен код, който също не е лош.

PHP и работа с реални документи

PHP четенето на PHP файл определено е от практически интерес, но това е област за програмиране. Клиенти и посетители, интересуващи се от прилаганата естеството на информацията, която той използва, за да види под формата на таблици и документи, по-специално във формати * .xlsx и * .docx файлове. Тези файлове са в MS Excel и MS Word формат.

Списъците на стоките, цените, характеристиките обикновено се формират под формата на таблици, така че PHP четенето на Excel файл е от съществено значение.

За да работите с такива файлове, са разработени PHPExcel и PHPWord библиотеки. Съдържанието на файловете * .xlsx и * .docx обаче е представено в стандарта OOXML, т.е. действителният достъпен за разбиране документ е представен от zip архива. Zip архив е много файлове, включително снимки, предмети, формули, вложки от други програми. Текстовите файлове тук са представени с описания под формата на етикети. Не е достатъчно да прочетете такъв файл, трябва да го анализирате, за да получите съдържанието и структурата за използване и модификация.

php четене на линия от файл



Това означава, че операцията за четене става процедура за отваряне на архива. Тези библиотеки сами отворят архива на документа и предоставят на разработчика подробни функции за четене, обработка и записване на такива документи.

Таблици в Excel

За да прочетете електронна таблица в Excel, достатъчно е да знаете името на неговия файл и пътя към него ($ xls). В резултат на изпълнението на следния код ще бъде генериран масив от стойности на оригиналната таблица в Excel:

include_once lsquo-PhpOffice / PhpExcel / IOFactory.php "

функция scGetExcelFile ($ xls) {

$ objPHPExcel = PHPExcel_IOFactory :: натоварване ($ xls)

$ objPHPExcel-> setActiveSheetIndex (0)

// този масив съдържа масиви от низове

$ aSheet = $ objPHPExcel-> getActiveSheet ()

$ array = масив ()

// обработка

foreach ($ aSheet-> getRowIterator () като $ ред) {

$ cellIterator = $ ред-> getCellIterator ()

$ item = масив ()

foreach ($ cellIterator като $ клетка) {

array_push ($ елемент, изброяване ( "UTF-8", "cp1251", $ клетъчно> getCalculatedValue ()))

}

array_push ($ array, $ item)

}

връщане $ масив

}

Четенето и обработването на Excel файлове е много по-трудно от обработката на Word документи. Най-добрият вариант, ако трябва да реализирате сериозен проект за четене и обработка на информация за приложенията, първо е да овладеете библиотеката на PHPWord. Това ще даде добър опит и бърз достъп до спецификата на проблема.

Word документи

Само два реда:

$ oWord = нов PhpOffice PhpWord PhpWord ()

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

Сега документът $ cFileName е достъпен за обработка. След това отваря архива, избира и анализира съдържанието му, което може да се покаже на сайта, да се промени и отпише.

PHP чете Excel файл

$ zipClass = нов ZipArchive ()

$ zipClass-> отворен ($ this-> tempFileName)

// прочетете цялото съдържание на документа

за ($ i = 0- $ i<$ zipClass-> numFiles- $ i ++) {

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

$ cNameInExt = substr ($ cNameIn, -4)

ако ($ cNameInExt == `.xml`) || ($ cNameInExt == `rels`)) {

// файловете с разширенията ".xml" и ".xml.rels" се съхраняват в таблицата с документи

// всеки ред xml е написан с уникален номер по ред

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

$ cBodyInLen = strlen ($ cBodyIn)

} else {

// всички други файлове се записват в папката на документа така, както е

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

$ zipClass-> getFromName ($ cNameIn, $ cWorkPath) - // съдържание като файл

}

Възможности, предлагани чрез използване на PHP Excel и Word PHP, ви позволяват да манипулират реалните документи, което ги прави подходящо съдържание по всяко време. В днешния динамичен свят това става много важно. Центърът на тежестта отдавна се е преместил от локалното използване на компютърни технологии до виртуално интернет пространство. Тъй като създаването на електронни таблици и документи в местни продукти от Microsoft е по-малко ефективен от работата с такива документи в автоматичен или полуавтоматичен режим, на сайта, който е на разположение не само за създател на масата или на документ, но и своите клиенти.

Текстови файлове, различен живот

При първото приближение, текстовите файлове са по-лесни от PHP файлове или документи на приложения. Има обаче нещо, за което да мислим. Дейностите по четене / писане на такива файлове вече са посочени по-горе, но значението на такива файлове е много по-важно.

Кол е такава реалност, в клиента и сървъра (в първите цари jаvascript, на втория - PHP), дори и механизми бисквитка и сесии не могат да се справят с необходимостта от прехвърляне на информация между скриптовете, страниците на тези или други процеси.

Възможно е да се отразят необходимите промени в базата данни, но с всички предимства и бързина, малките временни или постоянни текстови файлове могат да бъдат много по-интересен вариант на трансфера на информация. Ако не създавате много малки файлове и не контролирате размерите им, те могат да бъдат специфична и по-гъвкава версия на базата данни.

php четене на текстов файл

Четенето на текстов файл в PHP е бързо, може да бъде незабавно анализирано в структура, масив или обект. Последното е много важно, тъй като ви позволява да създавате обекти, които живеят извън времето, определено на PHP скрипт, който е известно, че съществува само на сървъра, и само тогава, когато страницата е заредена, формирането на отговор AJAX или по някаква друга причина, наричайки стартирането на PHP интерпретатора.

Обещаващи идеи, препоръки

Ако мислите, че за това, че на текстов файл - това е съдържанието и структурата на предприемача, PHP файла - синтаксис преводач плюс логиката за разработчици и "маркирани" описанието на HTML, CSS, XML - това е повече семантични елементи, но регулирани статични стандарти. Можете да стигне до заключението, че най-вероятно да подаде, че е време да си купите ново съдържание, и това трябва да се определи тяхното качество и логиката на приложението. Това е така, защото програмирането все още не е готова за следващия етап от развитието си, файловете вече са просто файлове, че възложителят създава и определя тяхното използване.

Най-интересното и обещаващо, когато PHP четене на PHP файл се случва сам, когато това стане необходимо. Простото прочитане на низ от файл от PHP води до създаването на обект, поне в състоянието, в което е запазен. Това не са точно обичайните идеи, но всъщност в съвременния свят всичко се променя толкова бързо.

Споделяне в социалните мрежи:

сроден