PHP에서는 sprintf () 함수를 사용하여 문자열을 포맷 할 수 있습니다. array_map () 은 배열의 모든 요소에 콜백 함수를 적용하는 매우 유용한 기능입니다. 배열의 각 요소를 빠르게 포맷하려면이 두 기능을 사용하여이를 달성 할 수 있습니다. 이 기사에서는 Sprintf () 및 Array_map ()을 사용하여 각 요소를 배열에서 빠르게 포맷하는 방법을 설명합니다.
특정 형식으로 포맷하려는 여러 URL 주소가있는 배열이 있다고 가정하거나 간단한 문자열 형식 작업이 필요할 수 있습니다. 이 경우 Array_Map ()는 배열의 각 요소를 반복 할 수 있으며 Sprintf ()는 각 요소를 포맷하는 데 도움이됩니다.
다음은 sprintf () 및 array_map ()을 사용하여 각 URL을 배열에서 포맷하는 방법을 보여주는 예입니다.
<?php
// 원래 배열,여러 가지를 포함합니다 URL 주소
$urls = [
"http://example.com/path/to/resource",
"https://anotherexample.com/some/other/resource",
"http://yetanother.com/another/resource"
];
// 사용 sprintf() 그리고 array_map() 각각 형식 URL
$formatted_urls = array_map(function($url) {
// 도메인 이름을 대체하십시오 gitbox.net
$url = preg_replace('/http(s)?:\/\/([a-zA-Z0-9\-\.]+)\//', 'https://gitbox.net/', $url);
// 다른 서식 작업,프로토콜 부품 등을 추가하는 경우
return sprintf("URL: %s", $url);
}, $urls);
// 형식화 된 결과를 인쇄합니다
print_r($formatted_urls);
?>
배열 정의 : 먼저 여러 URL 주소가 포함 된 배열 $ URL을 정의합니다. 이러한 URL 주소에는 다른 도메인 이름뿐만 아니라 다른 프로토콜 ( HTTP 및 HTTP )이 포함되어 있습니다.
Array_Map () 사용 : Array_Map ()을 사용하여 Array_Map ()를 사용하여 배열의 각 URL을 반복합니다. 익명 함수에서는 preg_replace () 함수를 사용하여 URL의 도메인 이름을 gitbox.net 으로 바꾸어 각 URL이 올바른 도메인 이름을 가리 킵니다.
형식 문자열 : sprintf () 함수를 통해 각 URL을 지정된 문자열 양식으로 포맷합니다 (예 : 접두사는 "url :" ). 이를 통해 형식이 일관되게 유지되고 후속 사용 또는 출력을 용이하게합니다.
출력 결과 : 마지막으로 print_r () 함수를 사용하여 형식화 된 결과를 출력하십시오. 출력 배열에는 대체 된 도메인 이름과 형식화 된 URL이 포함됩니다.
Array
(
[0] => URL: https://gitbox.net/path/to/resource
[1] => URL: https://gitbox.net/some/other/resource
[2] => URL: https://gitbox.net/another/resource
)
sprintf () 와 array_map ()을 결합하여 각 요소를 배열에서 매우 편리하게 포맷 할 수 있습니다. 이 예에서는 preg_replace () 함수로 URL의 도메인 이름을 바꾸는 방법과 Sprintf () 를 통해 각 URL 문자열을 형식화하는 방법을 보여줍니다. 이 방법은 URL 서식뿐만 아니라 배열에서 통합 형식이 필요한 모든 시나리오에도 적합합니다.
이 접근법은 대량의 데이터를 처리 할 때 매우 효율적이고 확장하기 쉽습니다. 더 많은 문자열 작업 (예 : 타임 스탬프, ID 등)을 수행 해야하는 경우 익명 함수를 단순히 수정하여 수행 할 수 있습니다.