@@ -263,7 +263,7 @@ public function setData($key, $value = null)
263
263
{
264
264
if (is_array ($ key )) {
265
265
$ key = $ this ->_implodeArrayField ($ key );
266
- } elseif (is_array ($ value ) && ! empty ( $ value ) && $ this ->isAddressMultilineAttribute ($ key )) {
266
+ } elseif (is_array ($ value ) && $ this ->isAddressMultilineAttribute ($ key )) {
267
267
$ value = $ this ->_implodeArrayValues ($ value );
268
268
}
269
269
return parent ::setData ($ key , $ value );
@@ -291,7 +291,7 @@ protected function isAddressMultilineAttribute($code)
291
291
protected function _implodeArrayField (array $ data )
292
292
{
293
293
foreach ($ data as $ key => $ value ) {
294
- if (is_array ($ value ) && ! empty ( $ value ) && $ this ->isAddressMultilineAttribute ($ key )) {
294
+ if (is_array ($ value ) && $ this ->isAddressMultilineAttribute ($ key )) {
295
295
$ data [$ key ] = $ this ->_implodeArrayValues ($ data [$ key ]);
296
296
}
297
297
}
@@ -301,22 +301,22 @@ protected function _implodeArrayField(array $data)
301
301
/**
302
302
* Combine values of field lines into a single string
303
303
*
304
- * @param string[]|string $value
304
+ * @param array $value
305
305
* @return string
306
306
*/
307
- protected function _implodeArrayValues ($ value )
307
+ protected function _implodeArrayValues (array $ value )
308
308
{
309
- if (is_array ($ value ) && count ($ value )) {
310
- $ isScalar = false ;
311
- foreach ($ value as $ val ) {
312
- if (is_scalar ($ val )) {
313
- $ isScalar = true ;
314
- }
315
- }
316
- if ($ isScalar ) {
317
- $ value = trim (implode ("\n" , $ value ));
309
+ $ isScalar = true ;
310
+ foreach ($ value as $ val ) {
311
+ if (!is_scalar ($ val )) {
312
+ $ isScalar = false ;
318
313
}
319
314
}
315
+
316
+ if ($ isScalar ) {
317
+ $ value = trim (implode ("\n" , $ value ));
318
+ }
319
+
320
320
return $ value ;
321
321
}
322
322
0 commit comments