PHP:修剪对象中的每个元素,如果为空,则设置为N/A.

k00*_*00k 5 php arrays trim object

我有一个对象:

stdClass Object
(
    [Color] => Red
    [Shape] => Round
    [Taste] => Sweet
)
Run Code Online (Sandbox Code Playgroud)

我想修剪对象中的每个元素,如果该元素为空,则将其设置为"N/A"

所以这个对象:

stdClass Object
(
    [Color] => Red
    [Shape] => 
    [Taste] => Sweet
)
Run Code Online (Sandbox Code Playgroud)

会变成这样的:

stdClass Object
(
    [Color] => Red
    [Shape] => N/A
    [Taste] => Sweet
)
Run Code Online (Sandbox Code Playgroud)

我该如何实现这一点,也许是array_walk?

Gor*_*don 5

让我们保持简单:

$foo = new StdClass;
$foo->prop1 = '   foo   ';
$foo->prop2 = NULL;
$foo->prop3 = 'bar';

foreach($foo as &$prop) {
    $prop = trim($prop);
    if (empty($prop)) {
        $prop = 'N/A';
    }
}

print_r($foo);
Run Code Online (Sandbox Code Playgroud)

这会给:

stdClass Object
(
    [prop1] => foo
    [prop2] => N/A
    [prop3] => bar
)
Run Code Online (Sandbox Code Playgroud)