>  기사  >  백엔드 개발  >  PHP에서 배열 키 앞에 효율적으로 접두사를 붙이는 방법은 무엇입니까?

PHP에서 배열 키 앞에 효율적으로 접두사를 붙이는 방법은 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-10-26 15:33:30151검색

How to Efficiently Prefix Array Keys in PHP?

배열 키를 효율적으로 접두사 지정

배열에 있는 모든 키의 시작 부분에 문자열을 추가하려면 여러 가지 접근 방식을 사용할 수 있습니다.

한 줄 솔루션

가장 간결한 솔루션은 array_map과 array_combine의 조합을 포함합니다:

<code class="php">$prefix = "prefix";
$array = array_combine(
    array_map(
        fn($k) => $prefix . $k,
        array_keys($array)
    ),
    $array
);</code>

기능적 접근 방식

PHP 7.4 이상의 버전에서는 화살표 함수 구문을 사용할 수 있습니다.

<code class="php">$prefix = "prefix";
$array = array_combine(
    array_map(
        fn($k) => $prefix . $k, 
        array_keys($array)
    ),
    $array
);</code>

반복 접근 방식

기존 루프 기반 솔루션 또한 사용 가능합니다:

<code class="php">foreach ($array as $k => $v) {
    $array[$prefix . $k] = $v;
    unset($array[$k]);
}</code>

PHP 5.3 이전 사용자 정의 클래스

이전 PHP 버전의 경우 mapArray 메소드가 있는 사용자 정의 클래스를 사용할 수 있습니다.

<code class="php">class KeyPrefixer {
    public function prefix(array $array, $prefix) {
        return $this->mapArray($array);
    }

    public function mapArray(array $array) {
        return array_combine(
            array_map(array($this, 'mapKey', array_keys($array)),
            $array
        );
    }

    public function mapKey($key) {
        return $this->prefix . (string)$key;
    }
}

$prefix = "prefix";
$array = KeyPrefixer::prefix($array, $prefix);</code>

위 내용은 PHP에서 배열 키 앞에 효율적으로 접두사를 붙이는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.