필수 질문은: 평면 배열의 키에 접두사를 효율적으로 추가하는 방법입니다.
<code class="php">$prefix = "prefix"; $array = array_combine( array_map(fn($k) => $prefix . $k, array_keys($array)), $array );</code>
5.3 이전 PHP 버전의 경우 다음 클래스- 기반 접근 방식을 사용할 수 있습니다:
<code class="php">class KeyPrefixer { private $prefix; public function __construct($prefix) { $this->prefix = (string)$prefix; } public static function prefix(array $array, $prefix) { $prefixer = new KeyPrefixer($prefix); return $prefixer->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);<h3>추가 접근 방식</h3> <ul><li><strong>루프 사용(PHP >= 5.3)</strong></li></ul> <pre class="brush:php;toolbar:false"><code class="php">$prefix = "prefix"; foreach ($array as $k => $v) { $array[$prefix . $k] = $v; unset($array[$k]); }</code>
보안상의 이유로 권장하지 않습니다.
<code class="php">$array = array_combine( array_map(create_function('$k', 'return "prefix$k";'), array_keys($array)), $array );</code>
위 내용은 PHP에서 배열 키에 접두사를 효율적으로 추가하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!