/ / PHP: legge un file PHP. Lavorare con i file in PHP: leggere, scrivere e consigliare

PHP: legge un file PHP. Lavorare con i file in PHP: lettura, scrittura e consigli

PHP è apparso molto più tardi rispetto alle linguela programmazione ha rafforzato la loro posizione, ha formulato concetti generali di sintassi, logica, variabili e altri oggetti del programma. I file e le funzioni per lavorare con loro non sono progrediti e anche il problema della codifica dei file, che è sorto per ragioni naturali, non ha portato a soluzioni fondamentalmente nuove.

Note generali

Lavoro di base con i file, qualunque essi siano,consiste in apertura, lettura / scrittura e chiusura. È possibile utilizzare le funzioni di blocco / sblocco dell'accesso al file durante l'elaborazione, è possibile impostare la posizione di lettura / scrittura nel file - tutto, come prima, nel lontano passato.

php legge il file php

Un punto importante in PHP è l'eccesso di funzionilavorare con file e opzioni per il loro utilizzo. In pratica, è sufficiente utilizzare opzioni semplici ma funzionanti. Il file è, prima di tutto, la memoria del programma. Può memorizzare informazioni. Lo scopo di qualsiasi programma, lo scopo di qualsiasi sito è presentare, elaborare e garantire la sicurezza delle informazioni.

Circostanza essenziale

Era un requisito incrollabile di compatibilitàalmeno dal basso verso l'alto. Cioè, un programma una volta scritto in una versione di un linguaggio di programmazione viene idealmente compilato / interpretato nella versione successiva. Questo non è il caso della programmazione moderna. Il requisito della compatibilità delle costruzioni sintattiche del linguaggio è passato alla storia e la lotta tra stili e strumenti di programmazione e versioni di certi strumenti è diventata la norma della loro vita.

Lavorare con i file, proprio come con i database, è importantetanto quanto l'interfaccia del sito è importante. Il primo dovrebbe essere costruito in modo tale che quando si cambia la piattaforma, l'hosting, la versione della lingua, non è necessario modificare il codice del sito. L'interfaccia per lavorare con i file dovrebbe essere collocata in uno script separato e garantire la piena compatibilità, così come il design del sito dovrebbe adattarsi adeguatamente a qualsiasi dispositivo, browser e fornire il resto delle funzionalità del sito con le stesse capacità.

Leggi e cambia te stesso

Può il programma cambiare se stesso, cioè puòLa sceneggiatura migliora? Ancora oggi, questa domanda interessa molti. Ma il compito sembra molto più pratico: PHP legge un file PHP. Non sempre uno sviluppatore può risolvere questo o quel problema scrivendo codice specifico. A volte è necessario modificarlo quando un visitatore arriva sul sito e formula una domanda che non era prevista in fase di sviluppo.

Come in tutti gli altri casi, prima di tuttoil file deve essere aperto. Non importa se questo file esiste o meno. Se si conosce l'esistenza del file (la funzione file_exists () dà una risposta positiva), la funzione fopen () viene utilizzata con l'accesso "r", "r +", "a", "a +". Se il file non esiste ancora, allora con accesso "a", "a +", "w", "w +". L'apertura del file risulterà nel suo descrittore. Il file viene chiuso con la funzione fclose ().

php legge il file riga per riga

È conveniente usare PHP per leggere un file in un array quando non è necessario elaborarlo al momento della lettura.

if (file_exists ($ fName)) {

$ aLines = file ($ fName)

}

In questo caso, ogni riga del file entra nell'elemento della matrice in sequenza. Notare che le funzioni file () o file_get_contents () non hanno bisogno di aprire e chiudere il file.

Quando il file di input è troppo grande e devi trovarecon pochissime informazioni, o per altri motivi, puoi usare PHP per leggere il file riga per riga. PHP fornisce la possibilità di farlo con le funzioni fgets () e fgetc ().

$ cLines = ""

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

$ i = 0

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

$ i ++

$ cLines. = "<br/>". $ i. ").". $ cLine

}

fclose ($ fvs)

php legge il file nell'array

Entrambe le opzioni funzionano perfettamente.Tuttavia, quando si esegue PHP leggendo un file PHP per modifiche successive, è necessario prendere precauzioni. Non è sempre possibile prevedere in fase di sviluppo del sito web le opzioni per il suo utilizzo da parte del visitatore. È meglio se gli script vengono modificati all'interno delle funzioni del sito e la gestione di questa modifica non è disponibile per il visitatore, compreso l'amministratore delle risorse.

Salvataggio dei risultati

Le informazioni ricevute e aggiornate vengono scritte nel file dalla funzione fputs () riga per riga o dalla funzione file_put_contents () nel suo insieme.

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

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

flock ($ fvs, LOCK_EX)

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

fputs ($ fvs, $ cLine)

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

fputs ($ fvs, $ cLine)

fflush ($ fvs)

flock ($ fvs, LOCK_UN)

fclose ($ fvs)

Nella versione riga per riga della registrazione, è possibile manipolare i dati durante il processo di registrazione; nel secondo caso, la riga o la matrice scritta viene inserita nel file nel suo insieme.

$ file = "scData.php"

$ cContents = file_get_contents ($ file)

// aggiungi record

$ cContents. = "new entryn"

// riscrive il file

file_put_contents ($ file, $ cContents)

leggere scrivere file php

Leggere e scrivere file PHP è facile enaturalmente. Tuttavia, è importante tenere presente: ogni file ha un nome, un'estensione e un percorso (cartella). Affinché uno script PHP sia in grado di leggere e scrivere file, questo script deve disporre dei diritti appropriati. Vengono pubblicati automaticamente sull'hosting, ma in alcuni casi devono essere estesi.

In alcuni casi è consigliabile controllarerisultati eseguendo una lettura di prova. La scrittura di file PHP lo richiede durante lo sviluppo, ma in alcuni casi, nell'interesse della sicurezza o dell'affidabilità di un sito, è essenziale convalidare la scrittura dei dati.

Funzionalità PHP, MySQl, JavaScript especialmente i browser: lasciate che alcuni bug facciano il loro corso. "Non riconosciuto, non fatto ..." non è una buona pratica all'avanguardia della tecnologia dell'informazione, ma insegna agli sviluppatori a non commettere errori ea scrivere codice pulito e di alta qualità, il che è anche un bene.

PHP e lavorare con documenti reali

PHP che legge un file PHP rappresenterà sicuramenteinteresse pratico, ma questo è il regno della programmazione. L'utente e il visitatore del sito sono interessati ad informazioni di natura applicata, che è abituato a vedere sotto forma di tabelle e documenti, in particolare, nei formati * .xlsx e * .docx file. Questi sono file in formato MS Excel e MS Word.

È consuetudine formare elenchi di merci, prezzi, caratteristiche sotto forma di tabelle, quindi la lettura PHP del file Excel è essenziale.

Le librerie sono state sviluppate per lavorare con tali filePHPExcel e PHPWord. Tuttavia, i contenuti dei file * .xlsx e * .docx sono presentati nello standard OOXML, ovvero un vero documento comprensibile è rappresentato da un archivio zip. L'archivio zip è un insieme di file, incluse immagini, oggetti, formule, inserti di altri programmi. I file di testo sono rappresentati qui da descrizioni sotto forma di tag. Non è sufficiente leggere un file del genere, è necessario analizzarlo per ottenere il contenuto e la struttura per l'uso e la modifica.

php legge la riga dal file

Ciò significa che l'operazione di lettura diventaprocedura di apertura dell'archivio. Queste librerie aprono l'archivio dei documenti da sole e forniscono allo sviluppatore ampie funzioni per leggere, elaborare e scrivere tali documenti.

Tabelle Excel

Per leggere un foglio di calcolo Excel, è sufficiente conoscere il nome del file e il percorso ($ xls). Come risultato dell'esecuzione del codice seguente, verrà generata una matrice di valori della tabella Excel originale:

include_once "PhpOffice / PhpExcel / IOFactory.php"

function scGetExcelFile ($ xls) {

$ objPHPExcel = PHPExcel_IOFactory :: load ($ xls)

$ objPHPExcel-> setActiveSheetIndex (0)

// questo array contiene array di stringhe

$ aSheet = $ objPHPExcel-> getActiveSheet ()

$ array = array ()

//trattamento

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

$ cellIterator = $ row-> getCellIterator ()

$ elemento = array ()

foreach ($ cellIterator as $ cell) {

array_push ($ item, iconv ("utf-8", "cp1251", $ cell-> getCalculatedValue ()))

}

array_push ($ array, $ elemento)

}

restituisce $ array

}

Lettura ed elaborazione di file Excel in modo significativopiù difficile da gestire i documenti di Word. L'opzione migliore, se è necessario implementare un progetto serio per la lettura e l'elaborazione delle informazioni sull'applicazione, è innanzitutto padroneggiare la libreria PHPWord. Ciò darà una buona esperienza e un rapido accesso alle specificità della domanda.

Documenti di Word

Solo due righe:

$ oWord = nuovo PhpOfficePhpWordPhpWord ()

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

Il documento $ cFileName è ora disponibile per l'elaborazione. Quindi l'archivio viene aperto, i suoi contenuti vengono selezionati e analizzati, che possono essere visualizzati sul sito, modificati e riscritti.

php legge il file excel

$ zipClass = nuovo ZipArchive ()

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

// legge l'intero contenuto del documento

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

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

$ cNameInExt = substr ($ cNameIn, -4)

if (($ cNameInExt == ".xml") || ($ cNameInExt == "rels")) {

// i file con estensioni ".xml" e ".xml.rels" vengono salvati nella tabella dei documenti

// ogni riga xml viene scritta con un numero univoco in ordine

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

$ cBodyInLen = strlen ($ cBodyIn)

} altro {

// tutti gli altri file vengono scritti nella cartella dei documenti così come sono

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

$ zipClass-> getFromName ($ cNameIn, $ cWorkPath); // contenuto come file

}

Opportunità aperte con PHPExcel e PHP Word ti consentono di manipolare documenti reali, rendere il loro contenuto rilevante in ogni momento. Nel mondo dinamico di oggi, questo sta diventando molto importante. Il centro di gravità si è da tempo spostato dall'uso locale della tecnologia informatica allo spazio Internet virtuale. Pertanto, la creazione di tabelle e documenti nei prodotti locali di Microsoft è meno efficace che lavorare con tali documenti in modalità automatica e semiautomatica su un sito che è disponibile non solo per il creatore della tabella o del documento, ma anche per i suoi consumatori.

File di testo, un'altra vita

In prima approssimazione, i file di testo sono più facili diFile PHP o documenti dell'applicazione. Tuttavia, c'è qualcosa a cui pensare qui. Le operazioni di lettura / scrittura di tali file sono già indicate sopra, ma il significato di tali file è molto più importante.

Poiché esiste un dato come client e server (suil primo è dominato da JavaScript, il secondo da PHP), quindi anche i meccanismi dei cookie e delle sessioni non riescono a far fronte alla necessità di trasferire informazioni tra script, pagine o quelli o altri processi.

È possibile riflettere le modifiche desiderate nel database, maper tutti i loro vantaggi e velocità, piccoli file di testo temporanei o permanenti possono essere un modo molto più interessante per trasferire le informazioni. Se non crei molti file di piccole dimensioni e ne controlli le dimensioni, possono rappresentare una versione specifica e più flessibile del database.

php legge il file di testo

PHP leggere un file di testo è veloce,può essere immediatamente analizzato in una struttura, array o oggetto. Quest'ultimo è molto importante, in quanto consente di creare oggetti che vivono al di fuori del tempo assegnato allo script PHP, che, come sai, può esistere solo sul server e solo al momento del caricamento della pagina, generazione della risposta AJAX, o per un altro motivo che causa l'esecuzione dell'interprete PHP.

Idee promettenti, raccomandazioni

Se pensi a cosa sia un file di testocontenuto e struttura dallo sviluppatore, il file PHP è la sintassi dell'interprete più la logica dello sviluppatore, e le descrizioni "taggate" html, css, xml sono elementi più semantici, ma regolati da standard statici. Si può giungere alla conclusione che probabilmente è giunto il momento che i file acquisiscano nuovo contenuto e che dovrebbe determinarne la qualità e la logica di utilizzo. Proprio perché la programmazione non è ancora pronta per la fase successiva del suo sviluppo, i file ora sono solo file che lo sviluppatore crea e ne determina l'utilizzo.

Il più interessante e promettente quando PHPil file PHP viene letto da solo quando se ne presenta la necessità. E un semplice PHP che legge una riga da un file porta alla creazione di un oggetto, almeno nello stato in cui è stato salvato. Queste non sono idee del tutto familiari, ma nel mondo moderno tutto sta cambiando così rapidamente.