어레이 요소를 PHP의 문자열에 캐스트하는 방법은 무엇입니까?

개체가 있는 배열이 있는 경우:

$a = array($objA, $objB); 

(각 오브젝트에는__toString()-외부)

모든 어레이 요소를 문자열에 캐스팅하여 어레이가$a문자열 표현 이외의 오브젝트는 포함되어 있지 않습니다.1개의 라이너가 있습니까?아니면 어레이를 수동으로 루프해야 합니까?



질문에 대한 답변



원라이너:

$a = array_map('strval', $a); // strval is a callback function 

PHP DOCS:

array_map

흔들리다




Alix Axel이 가장 좋은 답을 가지고 있다.array_map을 사용하여 어레이에 적용할 수도 있습니다.

//All your objects to string. $a = array_map(function($o){return (string)$o;}, $a); //All your objects to string with exclamation marks!!! $a = array_map(function($o){return (string)$o."!!!";}, $a); 

즐거운 시간 되세요.




테스트는 안 했지만, 이런 걸로 충분할까요?

foreach($a as $key => $value) {
$new_arr[$key]=$value->__toString(); } $a=$new_arr; 



폭발물을 찾고 있나요?

$array = array('lastname', 'email', 'phone');
$comma_separated = implode(",", $array);
echo $comma_separated; // lastname,email,phone 



지금은 테스트할 수 없습니다만, 이러한 어레이를 사용하면 어떻게 되는지 확인해 주실 수 있습니까?_toString이 호출되어야 합니다.