named - vetor php w3




Como aparar espaços em branco de valores de matriz em php (8)

Eu tenho uma matriz da seguinte forma

$fruit = array('  apple ','banana   ', ' , ',     '            cranberry ');

Eu quero uma matriz que contém os valores sem os espaços em branco em ambos os lados, mas pode conter valores vazios como fazer isso em php.the matriz de saída deve ser assim

$fruit = array('apple','banana', ',', 'cranberry');

Apare no tipo de mudança array_map se você tiver NULL em valor.

Melhor maneira de fazer isso:

$result = array_map(function($v){ 
  return is_string($v)?trim($v):$v; 
}, $array);

Eu tive problemas com as respostas existentes ao usar matrizes multidimensionais. Essa solução funciona para mim.

if (is_array($array)) {
    foreach ($array as $key => $val) {
        $array[$key] = trim($val);
    }
}

Se você deseja aparar e imprimir uma matriz dimensional ou a dimensão mais profunda da matriz multidimensional, use:

foreach($array as $key => $value)
{
    $array[$key] = trim($value);
    print("-");
    print($array[$key]);
    print("-");
    print("<br>");
}

Se você deseja cortar, mas não deseja imprimir uma matriz dimensional ou a dimensão mais profunda da matriz multidimensional, use:

$array = array_map('trim', $array);

Solução multidimensional:

array_walk_recursive($array, function(&$arrValue, $arrKey){ $arrValue = trim($arrValue);});

array_map('trim', $data) converteria todas as sub-matrizes em null . Se for necessário aparar espaços apenas para strings e deixar outros tipos como estão, você pode usar:

$data = array_map(
    function ($item) {
        return is_string($item) ? trim($item) : $item;
    },
    $data
);

array_walk() pode ser usado com trim() para aparar array

<?php
function trim_value(&$value) 
{ 
    $value = trim($value); 
}

$fruit = array('apple','banana ', ' cranberry ');
var_dump($fruit);

array_walk($fruit, 'trim_value');
var_dump($fruit);

?>

Veja o segundo exemplo em http://www.php.net/manual/en/function.trim.php


function trimArray(&$value) 
{ 
    $value = trim($value); 
}
$pmcArray = array('php ','mysql ', ' code ');
array_walk($pmcArray, 'trimArray');

Test


$fruit= array_map('trim', $fruit);




arrays