Muitas vezes, as strings têm espaços extras que precisam ser removidos. Por exemplo, convém substituir vários espaços por um único espaço ou livrar-se de todos os espaços em branco em uma sequência. Da mesma forma, você pode planejar remover todo o espaço em branco da extremidade esquerda ou direita de uma sequência.
Se você deseja remover o espaço em branco somente do início de uma string, use a função ltrim () no PHP. Se você deseja remover o espaço em branco somente do final de uma string, use a função rtrim() no PHP. Se você deseja remover o espaço em branco de ambas as extremidades de uma string, use a função trim() em vez de usar ltrim() e rtrim().
Essas funções removerão os seguintes caracteres de espaço em branco:
Algumas vezes, as strings com as quais você está trabalhando terão espaços em branco indesejados no meio e no começo e no final. A função de recorte será ineficaz contra ela.
Se você deseja remover todos os caracteres de espaço em branco, independentemente de onde eles ocorram na cadeia, use str_replace() para substituir todas as ocorrências por uma cadeia em branco.
$stripped = str_replace(' ', '', $str);
O espaço em branco pode consistir em mais do que apenas caracteres de espaço. Nesses casos, o uso da função str_replace() não a cortará. O especial \s personagem em uma expressão regular é usado para representar todos os caracteres de espaço em branco que foram removidos pela trim(), ltrim() e rtrim().
$stripped = preg_replace('/\s/', '', $str);
Na maioria das vezes, quando você decide remover caracteres extras de espaço em branco de uma string, convém substituir dois ou mais deles por um único caractere de espaço. Isso é diferente de remover todos os espaços; portanto, você precisará fazer pequenas alterações na expressão regular e na função preg_replace().
$stripped = preg_replace('/\s+/', ' ', $str);
No exemplo acima, o + after \ s significa que você deseja substituir um ou mais caracteres de espaço em branco por um único espaço. O único problema agora é que a cadeia principal pode conter vários caracteres de espaço em branco nas duas extremidades. Nesses casos, haverá um caractere de espaço presente nos dois lados, mesmo após o uso de preg_replace(). A solução aqui é usar trim() na string resultante.
$stripped = trim(preg_replace('/\s+/', ' ', $str));