ホームページ php教程 php手册 PHP ループ ステートメント for() と foreach() の使用法の違いの概要

PHP ループ ステートメント for() と foreach() の使用法の違いの概要

Jun 13, 2016 am 11:58 AM
for foreach php そして 導入 違い 複雑な それ サイクル はい 使用法 構造 声明

for ループは、PHP で最も複雑なループ構造です。その動作は C 言語の動作に似ています。 for ループの構文は次のとおりです。

for (expr1; expr2; expr3) ステートメント
最初の式 (expr1) は、ループが開始される前に無条件に 1 回評価されます。
expr2 は各ループの前に評価されます。値が TRUE の場合、ループが続行され、ネストされたループ ステートメントが実行されます。値が FALSE の場合、ループは終了します。

expr3 は各ループの後に評価 (実行) されます。
すべての式は空にすることができます。空の expr2 は、ループが無限に継続することを意味します (C と同様、PHP はその値を TRUE と見なします)。ループを終了するには、for 式の真偽チェックを使用するのではなく、break ステートメントを使用することが多いため、これは思っているよりも役に立ちません。
次の例を考えてみましょう。これらはすべて 1 から 10 までの数字を表示します:

コードをコピー コードは次のとおりです:


for ($ i = 1; $i <= 10; $i ) {
print $i;
}
for ($i = 1; ; $i ) {
if ( $i > 10) {
break;
}
$i = 1; (;;) i > 10 ) {
break;
}
print $i;
}
for ($i = 1; $i <= 10; $i, $ i );
?>


もちろん、最初の例 (または 4 番目) が最も普通に見えますが、for ループで空の式を使用していることがわかります。多くの場面でとても便利になります。

PHP は、コロンを使用した for ループの代替構文もサポートしています。

for (expr1; expr2; expr3): ステートメント; endfor;
他の言語には配列またはハッシュ テーブルを走査するための foreach ステートメントがあり、PHP でもそれを行うことができます (foreach を参照)。 )。 PHP 3 では、list() 関数と each() 関数を while ループと組み合わせて同じ効果を実現できます。例については、これらの関数のドキュメントを参照してください。 foreach
PHP 4 (PHP 3 ではありません) には、Perl や他の言語と同様に、foreach 構造が含まれています。これは、配列を反復処理するための単なる便利な方法です。 foreach は配列でのみ使用でき、他のデータ型または初期化されていない変数で使用しようとするとエラーが発生します。 2 つの構文があり、2 番目の構文は重要度は低いですが、最初の構文を拡張したものです。

foreach (array_expression_r_r as $value) ステートメント foreach (array_expression_r_r as $key => $value) ステートメント
最初の形式は、指定された array_expression_r_r 配列を反復処理します。ループを通過するたびに、現在のセルの値が $value に割り当てられ、配列内のポインターが 1 ステップ前に移動します (そのため、次のループで次のセルが取得されます)。
2 番目の形式は同じことを行いますが、ループを通過するたびに現在のセルのキー値も変数 $key に割り当てられる点が異なります。
注: foreach の実行が開始されると、配列内のポインターは自動的に最初のユニットを指します。これは、foreach ループの前にreset()を呼び出す必要がないことを意味します。
注: foreach は配列自体ではなく、指定された配列のコピーを操作することにも注意してください。したがって、 each() を構築しても、元の配列ポインタは変更されず、配列単位の値は影響を受けません。
注: foreach は、「@」を使用してエラー メッセージを抑制する機能をサポートしていません。
次のコードはまったく同じように機能することに気づいたかもしれません:



コードをコピーします

コードは次のとおりです:

$arr = array("one", "two", "three"); reset ($arr);

while (list(, $value) = each ( $arr)) {

echo "値: $value
n";
}
foreach ($arr as $value) {
echo "値: $value
n" ;
}
?>


次のコードにも同じ機能があります:


コードをコピーします。

reset ($arr); while (list($key, $value) = each ($arr)) { echo "キー: $key; 値: $ value
n"; }

foreach ($arr as $key => $value) {

echo "キー: $key; 値: $value
n";
}
?>


デモの使用例:



コードをコピー

コードは次のとおりです。

$a = array (1, 2, 3, 17); foreach ($a as $v); { print "$a の現在の値: $v.n"; $a = 配列 (1, 2, 3, 17);

$i = 0; $a as $v) {

print " $a[$i] => $v.n" ;
}
$a = array (
"one" = > 1,
"two" => 2,
"seventeen" => 17
); k => $v) {
print "$a[$k] => $v.n";
$a[0] [0] = "a"; a[0][1] = "b";
$a[1][0] = "y";
$a[1][1] = "z"; a as $v1) {
foreach ($ v1 as $v2) {
print "$v2n";
}
foreach (array(1, 2, 3, 4, 5) $v) {
print " $vn" >}
?>;

コードをコピー コードは次のとおりです。


//foreach
$tar = array (
1 => '東'、
2 => '西'、
4 => '南東' 、
6 => '南西'、
7 => '北東'、
9 => '北南'、
10 => ' スタッフ',
);
$TM = 'west'
foreach( $tar as $v=>$vv )
{
if( $vv = = $TM )
{
echo $vv.'-'.$v.'
';
break
}
//echo $vv; 🎜>}


//West-2
//for



コードをコピー

コードは次のとおりです: echo '
' for( $i=1;$i<=count( $tar ) ;$i )

{

if( $tar[$i] = = $TM )
{
echo $tar[$i].'-'.$i.'
';
break
}
}


//西-2
要約: foreach と for の結果はまったく同じですが、ホーム ページの効率の点では foreach の方が優れています。配列の長さを知り、$i を使用して操作する場合、page foreach は配列の長さを知る必要がなく、キーと値を自動的に検出して入力できます。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PHPとPython:2つの一般的なプログラミング言語を比較します PHPとPython:2つの一般的なプログラミング言語を比較します Apr 14, 2025 am 12:13 AM

PHPとPythonにはそれぞれ独自の利点があり、プロジェクトの要件に従って選択します。 1.PHPは、特にWebサイトの迅速な開発とメンテナンスに適しています。 2。Pythonは、データサイエンス、機械学習、人工知能に適しており、簡潔な構文を備えており、初心者に適しています。

PHPの未来:適応と革新 PHPの未来:適応と革新 Apr 11, 2025 am 12:01 AM

PHPの将来は、新しいテクノロジーの傾向に適応し、革新的な機能を導入することで達成されます。1)クラウドコンピューティング、コンテナ化、マイクロサービスアーキテクチャに適応し、DockerとKubernetesをサポートします。 2)パフォーマンスとデータ処理の効率を改善するために、JITコンパイラと列挙タイプを導入します。 3)パフォーマンスを継続的に最適化し、ベストプラクティスを促進します。

PHP対Python:違いを理解します PHP対Python:違いを理解します Apr 11, 2025 am 12:15 AM

PHP and Python each have their own advantages, and the choice should be based on project requirements. 1.PHPは、シンプルな構文と高い実行効率を備えたWeb開発に適しています。 2。Pythonは、簡潔な構文とリッチライブラリを備えたデータサイエンスと機械学習に適しています。

PHP:Web開発の重要な言語 PHP:Web開発の重要な言語 Apr 13, 2025 am 12:08 AM

PHPは、サーバー側で広く使用されているスクリプト言語で、特にWeb開発に適しています。 1.PHPは、HTMLを埋め込み、HTTP要求と応答を処理し、さまざまなデータベースをサポートできます。 2.PHPは、ダイナミックWebコンテンツ、プロセスフォームデータ、アクセスデータベースなどを生成するために使用され、強力なコミュニティサポートとオープンソースリソースを備えています。 3。PHPは解釈された言語であり、実行プロセスには語彙分析、文法分析、編集、実行が含まれます。 4.PHPは、ユーザー登録システムなどの高度なアプリケーションについてMySQLと組み合わせることができます。 5。PHPをデバッグするときは、error_reporting()やvar_dump()などの関数を使用できます。 6. PHPコードを最適化して、キャッシュメカニズムを使用し、データベースクエリを最適化し、組み込み関数を使用します。 7

PHPの現在のステータス:Web開発動向を見てください PHPの現在のステータス:Web開発動向を見てください Apr 13, 2025 am 12:20 AM

PHPは、現代のWeb開発、特にコンテンツ管理とeコマースプラットフォームで依然として重要です。 1)PHPには、LaravelやSymfonyなどの豊富なエコシステムと強力なフレームワークサポートがあります。 2)パフォーマンスの最適化は、Opcacheとnginxを通じて達成できます。 3)PHP8.0は、パフォーマンスを改善するためにJITコンパイラを導入します。 4)クラウドネイティブアプリケーションは、DockerおよびKubernetesを介して展開され、柔軟性とスケーラビリティを向上させます。

PHP対その他の言語:比較 PHP対その他の言語:比較 Apr 13, 2025 am 12:19 AM

PHPは、特に迅速な開発や動的なコンテンツの処理に適していますが、データサイエンスとエンタープライズレベルのアプリケーションには良くありません。 Pythonと比較して、PHPはWeb開発においてより多くの利点がありますが、データサイエンスの分野ではPythonほど良くありません。 Javaと比較して、PHPはエンタープライズレベルのアプリケーションでより悪化しますが、Web開発により柔軟性があります。 JavaScriptと比較して、PHPはバックエンド開発により簡潔ですが、フロントエンド開発のJavaScriptほど良くありません。

PHPの永続的な関連性:それはまだ生きていますか? PHPの永続的な関連性:それはまだ生きていますか? Apr 14, 2025 am 12:12 AM

PHPは依然として動的であり、現代のプログラミングの分野で重要な位置を占めています。 1)PHPのシンプルさと強力なコミュニティサポートにより、Web開発で広く使用されています。 2)その柔軟性と安定性により、Webフォーム、データベース操作、ファイル処理の処理において顕著になります。 3)PHPは、初心者や経験豊富な開発者に適した、常に進化し、最適化しています。

PHP対Python:コア機能と機能 PHP対Python:コア機能と機能 Apr 13, 2025 am 12:16 AM

PHPとPythonにはそれぞれ独自の利点があり、さまざまなシナリオに適しています。 1.PHPはWeb開発に適しており、組み込みのWebサーバーとRich Functionライブラリを提供します。 2。Pythonは、簡潔な構文と強力な標準ライブラリを備えたデータサイエンスと機械学習に適しています。選択するときは、プロジェクトの要件に基づいて決定する必要があります。

See all articles