substr în PHP

Extrage o bucată dintr-un text, pornind de la o anumită poziție.

Sintaxă
substr(string $text, int $start, ?int $lungime = null): string

Ce face substr

substr taie o parte din text. Pozițiile încep de la 0. O poziție negativă se numără de la sfârșitul textului.

Pentru texte cu diacritice folosește mb_substr, care lucrează pe caractere, nu pe octeți.

Parametri

Parametru Descriere
$text Textul original.
$start Poziția de început. 0 este primul caracter, -1 este ultimul.
$lungime Opțional. Câte caractere să extragă. Fără el, extrage până la final.

Ce returnează

Bucata de text extrasă.

Exemple

Exemplul 1: Începutul, mijlocul și finalul

<?php
$text = "programare";

echo substr($text, 0, 7) . "\n";
echo substr($text, 3, 4) . "\n";
echo substr($text, -4);

Rezultat

program
gram
mare

Exemplul 2: Rezumat scurt pentru un articol

<?php
$articol = "Ghid complet pentru instalarea PHP pe Windows, pas cu pas.";

echo substr($articol, 0, 20) . "...";

Rezultat

Ghid complet pentru ...

Exemplul 3: Cu diacritice folosește mb_substr

<?php
echo mb_substr("ștrudel", 0, 3);

Rezultat

ștr

Greșeli frecvente

  • Tai cu substr un text cu diacritice și obții un caracter stricat (�) la final. Folosește mb_substr.

Comenzi înrudite

  • strlen: Returnează lungimea unui text, în octeți.
  • strpos: Găsește poziția primei apariții a unui text în alt text.
  • str_replace: Înlocuiește toate aparițiile unui text cu alt text.