배열 foreach로 인해 발생하는 작은 문제
코드
<code><span>$arr1</span> = [ <span>1</span>, <span>2</span>, <span>3</span>, <span>4</span>, <span>5</span> ]; <span>$arr2</span> = [ <span>'a'</span>, <span>'b'</span>, <span>'c'</span>, <span>'d'</span>, <span>'e'</span> ]; <span>$arr3</span> = []; <span>foreach</span> (<span>$arr1</span><span>as</span> & <span>$v</span>){ <span>$v</span> += <span>10</span>; } <span>foreach</span> (<span>$arr2</span><span>as</span><span>$k</span> => <span>$v</span>){ <span>//举例</span><span>$v</span> = <span>$v</span> . <span>$arr1</span>[ <span>$k</span> ]; <span>$arr3</span>[ <span>$k</span> ] = <span>$v</span>; } <span>echo</span> implode(<span>', '</span>, <span>$arr1</span>) . <span>"\n"</span> . implode(<span>', '</span>, <span>$arr2</span>) . <span>"\n"</span> . implode(<span>', '</span>, <span>$arr3</span>);</code>
실행
<code><span>11</span>, <span>12</span>, <span>13</span>, <span>14</span>, ee <span>a</span>, b, c, d, e a11, b12, c13, d14, ee</code>
결과
문제의 원인은 첫 번째 루프가 끝난 후 해당 $v
No release
해결
루프하기 전에 unset()
을 사용하여 변수를 해제하면 이 문제가 발생하지 않습니다.
두 Between 루프 모두에서 , 추가 unset($v);
<code><span>11</span>, <span>12</span>, <span>13</span>, <span>14</span>, <span>15</span><span>a</span>, b, c, d, e a11, b12, c13, d14, e15</code>
위의 내용을 포함하여 배열 foreach로 인해 발생하는 사소한 문제를 소개합니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











1. Iterator와 foreach의 차이점은 다형성 차이입니다(foreach의 맨 아래 레이어는 Iterator입니다). Iterator는 인터페이스 유형이므로 컬렉션 유형이나 배열에 관심이 없습니다. for와 foreach 모두 컬렉션 유형을 알아야 합니다. 1. foreach의 최하위 레이어가 Iterator에 의해 작성된 코드라고 말하는 이유: 디컴파일된 코드: 2. foreach와 iterator에서 제거의 차이점을 살펴보세요. Alibaba Java Development Manual, 그러나 1번의 경우에는 오류가 보고되지 않으며, 2번의 경우(java.util.ConcurrentModificationException) 먼저 오류가 보고됩니다.

PHP가 foreach 루프 수를 결정하는 단계: 1. "$fruits" 배열을 만듭니다. 2. 초기 값이 0인 카운터 변수 "$counter"를 만듭니다. 3. "foreach"를 사용하여 루프를 만듭니다. 배열을 통해 루프 본문의 카운터 변수 값을 늘린 다음 각 요소와 해당 인덱스를 출력합니다. 4. "foreach" 루프 외부에 카운터 변수 값을 출력하여 루프가 도달하는 요소를 확인합니다.

PHP에서는 배열의 요소를 문자열로 결합해야 하는 경우가 많습니다. 이때 implode() 함수가 유용합니다. implode() 함수는 배열의 요소를 문자열로 변환하고 이를 연결하여 완전한 문자열을 생성합니다. 이 기사에서는 PHP에서 implode() 함수를 사용하여 배열을 문자열로 변환하는 방법을 소개합니다. 1. implode() 함수의 기본 사용법 implode() 함수에는 두 개의 매개변수가 있습니다. 첫 번째 매개변수

이 기사에서는 키 값을 뒤집은 후 PHP가 배열을 반환하는 방법을 자세히 설명합니다. 편집자는 이것이 매우 실용적이라고 생각하므로 이 기사를 읽고 뭔가를 얻을 수 있기를 바랍니다. PHP 키 값 뒤집기 배열 키 값 뒤집기는 배열의 키와 값을 교환하여 원래 키를 값으로, 원래 값을 키로 사용하여 새 배열을 생성하는 배열 작업입니다. 구현 방법 PHP에서는 다음 방법을 통해 배열의 키-값 뒤집기를 수행할 수 있습니다. array_flip() 함수: array_flip() 함수는 키-값 뒤집기 작업에 특별히 사용됩니다. 배열을 인수로 받고 키와 값이 교환된 새 배열을 반환합니다. $original_array=[

PHP 프로그래밍에서는 경고 메시지가 자주 나타납니다. 가장 일반적인 프롬프트 중 하나는 "PHPWarning:implode():Invalidargumentspassed"입니다. 이 기사에서는 이 경고에 대한 해결책을 소개합니다. 먼저 implode() 함수를 사용하는 방법을 이해해야 합니다. 이 함수의 기능은 다음 구문을 사용하여 배열을 문자열로 연결하는 것입니다.

目录1:basename()2:copy()3:dirname()4:disk_free_space()5:disk_total_space()6:file_exists()7:file_get_contents()8:file_put_contents()9:filesize()10:filetype( )11:glob()12:is_dir()13:is_writable()14:mkdir()15:move_uploaded_file()16:parse_ini_file()17:

PHP 프로그래밍에서 문자열 처리는 자주 필요한 작업입니다. 그중 문자열 분할 및 병합은 두 가지 일반적인 요구 사항입니다. 이러한 작업을 보다 편리하게 수행하기 위해 PHP는 두 가지 매우 실용적인 기능, 즉 분해 및 내파 기능을 제공합니다. 이 기사에서는 이 두 가지 기능의 사용법과 몇 가지 실용적인 기술을 소개합니다. 1. 분해 함수 분해 함수는 지정된 구분 기호에 따라 문자열을 분할하고 배열을 반환하는 데 사용됩니다. 함수 프로토타입은 다음과 같습니다: arra

이 기사에서는 PHP가 반환하는 배열의 현재 요소에 대해 자세히 설명할 것입니다. 편집자는 이것이 매우 실용적이라고 생각하므로 이 기사를 읽고 뭔가를 얻을 수 있기를 바랍니다. PHP 배열의 현재 요소 가져오기 PHP는 배열의 현재 요소 가져오기를 포함하여 배열에 액세스하고 조작하기 위한 다양한 방법을 제공합니다. 다음은 일반적으로 사용되는 몇 가지 기술을 소개합니다. 1. current() 함수 current() 함수는 배열의 내부 포인터가 현재 가리키는 요소를 반환합니다. 포인터는 처음에 배열의 첫 번째 요소를 가리킵니다. 다음 구문을 사용하십시오. $currentElement=current($array);2.key() 함수 key() 함수는 현재 요소를 가리키는 배열 내부 포인터를 반환합니다.
