833 Shares 1728 views

PHP: lavorare con le stringhe. Funzioni di stringa PHP

I siti possono essere divisi in statica e dinamica. Dopo aver masterizzato HTML e CSS, che ti permettono di creare una biglietta da visita bella su Internet, molte persone stanno pensando a come creare un sito dinamico in PHP. In questo caso, il layout dovrebbe tener conto che ora comincia a studiare la programmazione web: i principi di lavorare con il sito si differenziano. Uno dei primi problemi che un principiante in PHP è di affrontare è lavorare con le stringhe, leggere e elaborarle.

Vale la pena notare che in PHP, le funzioni di lavorare con le stringhe significano molti metodi, per cui cominciare lo studio è con le manipolazioni più semplici, ad esempio la pubblicazione di una stringa, la ricerca, la ricerca o la sostituzione di una sottostringa, la modifica del registro e la restituzione della lunghezza della stringa. Molte funzioni non funzionano bene con i simboli cirillici. Quindi tutti gli esempi sono scritti in inglese per chiarezza. Per le stringhe cirilliche vengono utilizzate le stesse funzioni, ma con il prefisso mb_ (ad esempio, mb_strpos ()). Prima di utilizzare gli analoghi, in php.ini è necessario disattivare la riga: extension = php_mbstring.dll, semplicemente rimuovendo il punto e virgola.

Creazione e visualizzazione di una stringa

Analizzeremo l'output di una stringa sullo schermo utilizzando il costruito linguaggio di echo familiare. Un programmatore può erogare una stringa contemporaneamente:

Echo "Questa è la nuova stringa"

Oppure prima crea una variabile e visualizzi sullo schermo:

$ Str = "Questa è la nuova stringa";

Echo $ str;

Se hai bisogno di visualizzare diverse righe in uno, allora ricorrono alla loro concatenazione:

Echo "It". "Nuovo". "Stringa";

o

$ Str1 = "Questo";

$ Str2 = "Nuovo";

$ Str3 = "Linea";

Echo $ str1. $ Str2. $ Str3;

In quest'ultimo caso verrà visualizzata la riga NewNet . È possibile aggiungere lo spazio immediatamente chiamando l'echo:

Echo $ str1. ''. $ Str2. ''. $ Str3;

In questo caso, sullo schermo verrà visualizzato: "Questa è la nuova linea". La concatenazione è possibile non solo in uscita, ma anche nella creazione di una stringa:

$ Str1 = "Questo";

$ Str2 = "Nuovo";

$ Str3 = "Linea";

$ String = $ str1. ''. $ Str2. ''. $ Str3;

Echo $ string;

Echo visualizza lettere latine e lettere cirilliche. Se una delle variabili conteneva un numero, allora quando concatenato, questo numero verrà convertito nella riga corrispondente:

$ I = 2;

$ Sum = $ i + $ i; // ora $ sum contiene il numero 4

Echo $ i. "+". $ I. "=". $ Sum;

Lo schermo visualizza: "2 + 2 = 4".

Simboli di servizio

Diciamo che una stringa sia definita utilizzando le virgolette doppie ($ string = "That's it"). Quindi è possibile utilizzare le sequenze di controllo in modo abbastanza calmo:

  • N esegue una rottura di linea;
  • R restituisce il carrello;
  • "Escapes quotazioni doppie:
    • Echo "Una stringa con " doppie virgolette "; // Una stringa con doppie virgolette
  • $ Scudi il dollaro;
  • \ sfugge al backslash.

Le sequenze sono molto più, tutte possono essere trovate nella documentazione ufficiale di PHP.

Come trovare la posizione della prima occorrenza di una sottostringa

Diciamo che abbiamo una linea semplice:

$ String = "Il mio nome è Yemelyan e ho 27 anni";

Inoltre abbiamo due righe con i nomi:

$ Nome = "Yemelyan";

$ AnotherName = "Katherin";

Dobbiamo scoprire se la prima riga contiene questi due nomi. A tale scopo, utilizzare la funzione strpos ($ str, $ search). Restituisce la posizione della ricerca di substring $ search, se questa riga è contenuta nell'originale $ str. Altrimenti, la funzione restituisce un valore booleano di false. Ad esempio, strpos ($ string, $ anotherName) restituirà false, e strpos ($ stringa, $ nome) è un intero. Il codice sarà simile (scrivere un'opzione quando la posizione viene visualizzata sullo schermo):

$ String = "Il mio nome è Yemelyan e ho 27 anni";

$ Nome = "Yemelyan";

$ AnotherName = "Katherin";

Echo strpos ($ string, $ anotherName); // stampa falso

Echo strpos ($ string, $ nome); // stampare la posizione della prima occorrenza della sottostringa

Si noti che la numerazione delle righe inizia da zero, cioè nel nostro caso l'ultima riga stampa il numero 11 (anche gli spazi sono considerati).

Trovare la posizione delle ultime occorrenze di substrings e trappole

Se la funzione strpos () restituisce la posizione della prima occorrenza, la funzione inversa strrpos () cerca l'ultima occorrenza della sottostringa.

Ci sono alcune mancanze associate all'inizio della numerazione. Questo dovrebbe essere preso in considerazione: in PHP, lavorare con stringhe può essere complicato da limitazioni nei confronti. Quindi, è meglio non utilizzare l'operazione di confronto con la negazione: strpos ($ str, $ search)! = Falso. In qualsiasi versione di PHP, gli esempi con un equivalente equivalente potrebbero non funzionare correttamente, perché la numerazione delle righe inizia da zero e nell'interpretazione logica 0 è falsa. Questo vale anche per la funzione strrpos ().

Come trovare il numero di occorrenze di una sottostringa

Spesso è necessario trovare la posizione della prima o ultima occorrenza di una sottostringa in una stringa, ma il numero totale di sottostringhe. A tale scopo, utilizzare la funzione substr_count (), che elabora almeno due variabili: substr_count ($ str, $ search). Restituisce un numero intero. Se si desidera ridurre l'ambito di ricerca da una stringa, due funzioni sono passate alla funzione: l'inizio e la fine della riga rispettivamente. Cioè, la funzione in questo caso viene chiamata così: substr_count ($ str, $ search, $ start, $ end). La funzione cercherà una ricerca di sottostringa $ nell'intervallo da $ start to $ end della stringa originale $ str. Se la stringa non viene trovata, la funzione restituirà zero.

Come modificare il caso di una stringa in PHP: esempi

La modifica del registro viene spesso utilizzata per confrontare le stringhe e le dichiarazioni condizionale. Supponiamo che un utente deve inserire il nome del dio supremo nella mitologia scandinava. Il programma ha l'opzione "One", con la quale verrà confrontata la risposta dell'utente. Se il testo inserito non corrisponde a quello che hai (per esempio, l'utente scriverà "uno" o "ONE"), il programma restituirà false anziché true. Per evitare questo, viene utilizzata la funzione di modifica del registro. Questo è spesso usato se il sito in PHP ha tag: invece di centinaia di varianti della parola "personale" ("personale", "personale", "personale", ecc.), C'è solo un tag in minuscolo.

La funzione strtolower () modifica il caso a quello inferiore. Supponiamo che ci sia una linea $ catName = "Fluffy". La funzione strtolower ($ catName) restituisce la stringa "fluffy". Modificare il registro in alto utilizzando la funzione strtoupper ().

Come trovare la lunghezza di una stringa in PHP: lavorare con funzioni

Spesso è necessario trovare la lunghezza di una stringa. Ad esempio, in PHP, potrebbe essere necessario lavorare con linee di questo tipo nella creazione di un ciclo. Per trovare una stringa, utilizzare la funzione strlen () che restituisce un numero: il numero di caratteri. Non dobbiamo dimenticare che l'ultimo carattere avrà lo strlen ($ str) -1, dato che la numerazione inizia da zero.

Ottenere e sostituire le sottostringhe in PHP: lavorare con le stringhe

La sottostringa è ottenuta da substr (), che può richiedere due o tre argomenti: substr ($ str, $ start, $ end). Diciamo che abbiamo la stringa $ string = "Fluffy cat" e vogliamo ottenere una sottostringa dal secondo al quarto carattere. Poiché la numerazione inizia da zero, la variabile con questa sottostringa sarà simile a questo: $ newString = substr ($ string, 1, 4). Se immettiamo $ newString = substr ($ string, 1), otterremo una sottostringa dal secondo carattere all'ultimo carattere (cioè "luffy"). Questo codice è identico al codice della linea completa usando strlen (): substr ($ string, 1, strlen ($ string)).

Per sostituire una sottostringa, utilizzare la funzione str_replace (), che richiede tre variabili: str_replace ($ subStr, $ newSub, $ str). A differenza di molte funzioni, str_replace () funziona correttamente con i simboli cirillici e non ha analoghi con un prefisso. esempio:

$ Str = "Oggi è un tempo terribile!";

$ NewStr = str_replace ("terribile", "meraviglioso", $ str); // Oggi è il clima meraviglioso!

Traduzione di una riga a un numero

Tutti coloro che studiano la programmazione web prima o poi devono tradurre una stringa in un numero. Per questo, vengono utilizzate due funzioni simili: intval () e floatval (), ognuna delle quali prende una variabile stringa $. Dall'altro, differiscono solo nel tipo di dati restituiti: intval () restituisce un intero e floatval () è un numero in virgola mobile.

Per utilizzare sia intval () che floatval (), è necessario che la stringa inizia con le cifre e verranno convertite in un numero. Se dopo i numeri va in qualsiasi serie di lettere, vengono semplicemente ignorate. Se la stringa inizia con le lettere, l'uso della funzione restituirà zero. Idealmente, la linea dovrebbe contenere solo numeri.

Conversione di un numero in una stringa

Spesso devi tradurre i numeri in una stringa. Ad esempio, se vuoi prendere una metà di un numero e piazzala (per esempio, controllare se l'uguaglianza è soddisfatta: 88 x 88 + 33 x 33 = 8833). In questo caso viene utilizzata la funzione strval () che restituisce una stringa con un numero. Dopo di che, con la nuova riga, è possibile eseguire tutte le altre azioni: modificare, cercare la presenza di sottostring e di altre funzioni. Se necessario, la linea può essere tradotta in un numero come sopra descritto.

Nell'articolo, sono stati considerati solo una piccola parte di tutte le funzioni legate a stringhe. Alcune delle funzioni non descritte funzionano con simboli, ma una grande non è stata inclusa nel materiale a causa della specificità. Per familiarizzare con queste funzioni, è necessario andare alla documentazione ufficiale di PHP che visualizza le informazioni correnti.