Ako vytvoriť pole z reťazca prostredníctvom bielych miest (PHP)
Prednedávnom som narazil na problém, kedy metóda explode() nebola schopná transformovať reťazec na pole. Prvky reťazca som chcel vytvoriť prostredníctvom regulárneho výrazu pre detekciu bielych miest. Keďže som nechcel riskovať problém s diakritikou, musel som hľadať multibyte riešenie. Nakoniec som našiel spôsob, ktorý bez problémov funguje.Príklad: Príklad obsahu súboru test.txt - písmená od seba oddeľte tabulátorom.
1
a b c d
Príklad: Vytvorenie poľa z reťazca prostredníctvom detekcie white space.
1
2
3
4
5
6
$text = file_get_contents("./test.txt");
$parse = explode("\s", $text);
var_dump($parse);
$parse = mb_split("\s", $text);
var_dump($parse);
Záver
Ako na príklade vidieť, metóda explode() nie je schopná dosiahnuť požadovaný výsledok a preto je potrebné zvoliť metódu mb_split(). Ak poznáte iné funkčné riešenie s podporou multibyte znakov, podeľte sa oň prostredníctvom komentára.23.9.2017, Matej LednárKategória: PHPPHP,var_dump(),explode(),file_get_contents(),mb_split()Žiadna časť tohto článku nesmie byť reprodukovaná bez uvedenia autora a URL na túto stránku.Viac informácií nájdete v sekcii O projekte.