InformáticaProgramación

PHP: traballar con cadeas. Funcións de cadea PHP

Os sitios poden ser divididos en estáticos e dinámicos. Despois de dominar HTML e CSS, que permiten facer unha fermosa tarxeta de visita en Internet, moitas persoas están a pensar como crear un sitio dinámico en PHP. Neste caso, o esquema debe ter en conta que agora comeza a estudar a programación web: os principios de traballar co sitio serán diferentes. Un dos primeiros problemas que enfrenta un principiante en PHP é traballar con secuencias, ler e procesalas.

Cómpre lembrar que en PHP, as funcións de traballar con cadeas significan moitos métodos, polo que iniciar o seu estudo é mediante as manipulacións máis sinxelas, como a entrega dunha cadea, a procura, a obtención ou a substitución dunha subcadea, a modificación do rexistro e a devolución da lonxitude da cadea. Moitas funcións non funcionan ben cos símbolos cirílicos. Polo tanto, todos os exemplos están escritos en inglés para obter claridade. Para as cadeas cirílicas úsanse as mesmas funcións, pero co prefixo mb_ (por exemplo, mb_strpos ()). Antes de usar os análogos, en php.ini é necesario desenterrar a liña; extension = php_mbstring.dll, simplemente eliminando o punto e coma.

Creación e exhibición dunha cadea

Analizaremos a saída dunha cadea coa pantalla usando a construción familiar do eco. Un programador pode xerar unha cadea á vez:

Echo "Esta é a nova cadea"

Ou primeiro crear unha variable e, a continuación, amosarla na pantalla:

$ Str = "Esta é a cadea nova";

Echo $ str;

Se precisa mostrar varias liñas nunha soa vez, recorren á súa concatenación:

Echo "It". "Novo". "Cadea";

Ou

$ Str1 = "Este";

$ Str2 = "Novo";

$ Str3 = "Liña";

Echo $ str1. $ Str2. $ Str3;

Neste último caso, mostrarase a liña NewNet . Pode engadir un espazo inmediatamente chamando a eco:

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

Neste caso, a pantalla mostrará: "Esta é a nova liña". A concatenación non é posible só cando se envía, senón tamén cando se crea unha cadea:

$ Str1 = "Este";

$ Str2 = "Novo";

$ Str3 = "Liña";

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

Echo $ string;

O eco mostra dúas letras latinas e letras cirílicas. Se unha das variables contiña un número, entón cando está concatenado, este número converterase á liña correspondente:

$ I = 2;

$ Suma = $ i + $ i; // agora $ sum contén o número 4

Eco $ i. "+". $ I. "=". $ Suma;

A pantalla mostrará: "2 + 2 = 4".

Símbolos de servizo

Digamos que unha cadea está definida con comiñas dobres ($ string = "That's it"). Entón pode usar as secuencias de control con bastante calma:

  • \ N executa un salto de liña;
  • \ R volve o carro;
  • \ "Escapes comiñas dobres:
    • Eco "Unha cadea con" comiñas dobres "; // Cadea con comiñas dobres
  • \ $ Amosa o dólar;
  • \\ escapa a barra invertida.

As secuencias son moito máis, todas elas pódense atopar na documentación oficial de PHP.

Como atopar a posición da primeira aparición dunha subcadena

Digamos que temos unha liña sinxela:

$ String = "O meu nome é Yemelyan e teño 27 anos";

Tamén temos dúas liñas cos nomes:

$ Name = "Yemelyan";

$ AnotherName = "Katherin";

Necesitamos descubrir se a primeira liña contén estes dous nomes. Para facelo, use a función strpos ($ str, $ search). Devolve a posición da busca de subcadea de busca $, se esta liña está contida no orixinal, $ str. Se non, a función devolve un valor booleano de falso. Por exemplo, strpos ($ string, $ otherName) devolverá falso, e strpos ($ string, $ name) é un número enteiro. O código será así (escribiremos unha opción cando apareza a posición na pantalla):

$ String = "O meu nome é Yemelyan e teño 27 anos";

$ Name = "Yemelyan";

$ AnotherName = "Katherin";

Echo strpos ($ string, $ otherName); // imprimir false

Echo strpos ($ string, $ name); // imprimir a posición da primeira aparición da subcadena

Teña en conta que a numeración de liña comeza desde cero, é dicir, no noso caso, a última liña imprimirá o número 11 (tamén se consideran espazos).

Atopar a posición das últimas aparicións de subcadenas e trampas

Se a función strpos () devolve a posición da primeira ocorrencia, entón a función inversa strrpos () busca a última ocorrencia da subcadena.

Existen algunhas trampas asociadas ao inicio da numeración. Deberíase ter en conta: en PHP, traballar con secuencias pode complicarse por limitacións nas comparacións. Polo tanto, é mellor non usar a operación de comparación con negación: strpos ($ str, $ search)! = False. En calquera versión de PHP, exemplos con tal equivalente poden non funcionar correctamente, porque a numeración de liña comeza desde cero e na interpretación lóxica 0 é falso. Isto tamén se aplica á función strrpos ().

Como atopar o número de aparicións dunha subcadena

Moitas veces non é necesario atopar a posición da primeira ou a última ocorrencia dunha subcadena nunha cadea, senón o número total de subcadenas. Para iso, use a función substr_count (), que procesa polo menos dúas variables: substr_count ($ str, $ search). Devolve un número enteiro. Se quere reducir o alcance da busca por unha cadea, pasan dúas máis variables á función: o comezo e o final da liña, respectivamente. É dicir, a función neste caso chámase así: substr_count ($ str, $ search, $ start, $ end). A función buscará unha busca de $ substring no intervalo de $ start a $ end da cadea orixinal $ str. Se a cadea non se atopa, a función devolve cero.

Como cambiar o caso dunha cadea en PHP: exemplos

Cambiar o rexistro úsase a miúdo para comparar cadeas e declaracións condicionais. Supoña que un usuario debe inserir o nome do deus supremo na mitoloxía escandinava. O programa ten a opción "Un", co que se comparará a resposta do usuario. Se o texto ingresado non coincide co que ten (por exemplo, o usuario escribirá "un" ou "ONE"), o programa devolve falso en lugar de verdadeiro. Para evitar isto, úsase a función de cambio de rexistro. Isto úsase a miúdo se o sitio en PHP ten etiquetas: en lugar de centos de variantes da palabra "persoal" ("persoal", "persoal", "persoal", etc.), só hai unha etiqueta en minúsculas.

A función strtolower () cambia o caso ao inferior. Supoña que hai unha liña $ catName = "Fluffy". A función strtolower ($ catName) devolve a cadea "fluffy". Cambia o rexistro á parte superior usando a función strtoupper ().

Como atopar a lonxitude dunha cadea en PHP: traballar con funcións

A miúdo é necesario atopar a lonxitude dunha cadea. Por exemplo, en PHP, pode ter que traballar con liñas deste tipo na creación dun ciclo. Para atopar unha cadea, use a función strlen (), que retorna un número: o número de caracteres. Non debemos esquecer que o último personaxe terá o número strlen ($ str) -1, xa que a numeración comeza desde cero.

Obtención e substitución de subcadenas en PHP: traballar con cadeas

A subcadena obtense por substr (), que pode levar dous ou tres argumentos: substr ($ str, $ start, $ end). Digamos que temos a cadea $ string = "Fluffy cat", e queremos obter unha subcadena do segundo ao cuarto carácter. Xa que a numeración comeza desde cero, a variable con esta subcadena verase así: $ newString = substr ($ string, 1, 4). Se ingresamos $ newString = substr ($ string, 1), obtemos unha subcadena do segundo carácter para o último carácter (isto é, "luffy"). Este código é idéntico ao código de liña completa usando strlen (): substr ($ string, 1, strlen ($ string)).

Para substituír unha subcadena, use a función str_replace (), que leva tres variables: str_replace ($ subStr, $ newSub, $ str). A diferenza de moitas funcións, str_replace () funciona correctamente con símbolos cirílicos e non ten un prefixo analóxico. Exemplo:

$ Str = "¡Hoxe é terrible!";

$ NewStr = str_replace ("horrible", "marabilloso", $ str); // ¡Hoxe é un clima marabilloso!

Tradución dunha liña a un número

Todo o mundo que estuda a programación web tarde ou cedo ten que traducir unha cadea nun número. Para iso, úsanse dúas funcións similares: intval () e floatval (), cada unha das cales leva unha variable $ string. Doutra banda, difiren só no tipo de datos que se devolve: intval () devolve un enteiro e floatval () é un número de punto flotante.

Para usar tanto intval () como floatval (), é necesario que a cadea comece con díxitos, e convertéranse nun número. Se, despois dos números, calquera conxunto de letras vai, simplemente ignóranse. Se a cadea comeza con letras, o uso da función devolverá cero. O ideal sería que a liña conteña só números.

Conversión dun número a unha cadea

Moitas veces ten que traducir números nunha cadea. Por exemplo, se queres levar unha metade dun número e cuadrala (por exemplo, comproba se se cumpre a igualdade: 88 x 88 + 33 x 33 = 8833). Neste caso, úsase a función strval (), que retorna unha cadea cun número. Despois diso, coa nova liña, pode realizar todas as outras accións: modificar, buscar a aparición de subcadenas e outras funcións. Se é necesario, a liña pode traducirse nun número como se describe arriba.

No artigo, só se considerou unha pequena parte de todas as funcións relacionadas coas cadeas. Algunhas das funcións non descritas funcionan con símbolos, pero un gran non foi incluído no material debido á especificidade. Para familiarizarse con estas funcións, necesitas ir á documentación oficial de PHP, que mostra a información actual.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 gl.unansea.com. Theme powered by WordPress.