検索
ホームページバックエンド開発PHPチュートリアルPHP コード内のフローの制御: ループ、条件、関数

PHP のフロー制御には、ループ、条件、関数が含まれます。ループを使用すると、データを反復処理できます (for ループ、while ループ、foreach ループ)。条件付き構造 (if-else ステートメント) は、条件に基づいてさまざまなコード ブロックを実行します。関数は再利用可能なコード ブロックをカプセル化して、コードの再利用性と保守性を向上させます。これらの概念は、オンライン ストアの在庫管理など、在庫配列とユーザー入力を比較して注文を履行できるかどうかを判断する複雑なアプリケーションの開発に使用できます。

Controlling Flow in Your PHP Code: Loops, Conditions, and Functions

PHP でのコード フローの制御: ループ、条件文、関数

PHP でのコード フローの制御は、次のとおりです。重要な。これにより、条件に基づいてさまざまなコード ブロックを実行し、コードを整理して保守性と可読性を向上させることができます。この記事では、ループ、条件、関数の使用法を詳しく説明し、理解を深めるための実践的な例を示します。

ループ: データを走査

ループは、コードのブロックを特定の回数、または条件が true の場合に繰り返す構造です。 PHP では、次のタイプのループが提供されます。

  • for ループ: 初期値、条件、および増分を使用して、既知の範囲の時間を反復処理できます。
  • while ループ: 指定された条件が true である限り、コードのブロックが無期限に実行されます。
  • foreach ループ: 配列またはオブジェクトを反復処理し、その要素ごとにコードのブロックを実行します。
// 用 for 循环计算 1 到 10 的总和
$total = 0;
for ($i = 1; $i <= 10; $i++) {
    $total += $i;
}

条件付き: 選択的なコード実行

条件付き構造を使用すると、特定の条件に基づいてさまざまなコード ブロックを実行できます。 PHP で最も一般的な条件構造は if-else ステートメントです。

// 检查用户是否已登录
if (isset($_SESSION['user'])) {
    // 如果已登录,显示欢迎消息
    echo "欢迎回来," . $_SESSION['user'];
} else {
    // 如果未登录,显示登录表单
    echo "请登录";
}

関数: コードの再利用

関数は、関連するコードのセットをカプセル化することです。使用されるモジュール内の反復可能なブロック。そうすることで、再利用性、保守性、コードの明瞭さが向上します。

// 计算两个数字的平均值
function average($num1, $num2) {
    return ($num1 + $num2) / 2;
}

実際のケース

ここで、実際のケースを通してこれらの概念を説明しましょう。オンライン ストアの在庫を管理するための簡単な PHP プログラムを作成するとします。

<?php

// 定义库存数组
$inventory = ['apple' => 10, 'orange' => 5, 'banana' => 15];

// 获取用户输入的水果和数量
$fruit = $_GET['fruit'];
$quantity = $_GET['quantity'];

// 检查库存
if (isset($inventory[$fruit])) {
    // 如果库存中存在该水果
    if ($inventory[$fruit] >= $quantity) {
        // 如果库存足够
        $inventory[$fruit] -= $quantity;
        echo "您成功购买了 $quantity 个 $fruit";
    } else {
        // 如果库存不足
        echo "抱歉,我们只有 {$inventory[$fruit]} 个 $fruit";
    }
} else {
    // 如果库存中不存在该水果
    echo "抱歉,我们没有 $fruit";
}

?>

この場合、if-else 条件を使用して在庫を確認し、在庫が十分であるかどうかに応じて異なるコードを実行します。さらに、foreach ループは、インベントリを反復処理して特定の果物を見つけるために使用されます。

以上がPHP コード内のフローの制御: ループ、条件、関数の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
トラフィックの高いウェブサイトのPHPパフォーマンスチューニングトラフィックの高いウェブサイトのPHPパフォーマンスチューニングMay 14, 2025 am 12:13 AM

thesecrettokeepingaphp-poweredwebsterunningsmootlyunderheavyloadinvolvesseveralkeystrategies:1)emform opcodecoduceSciptionexecutiontime、2)aatabasequerycachingwithiThing withiThistolessendavasoload、

PHPでの依存関係注射:初心者向けのコード例PHPでの依存関係注射:初心者向けのコード例May 14, 2025 am 12:08 AM

コードをより明確かつ維持しやすくするため、依存関係が関心(DI)に注意する必要があります。 1)DIは、クラスを切り離すことにより、よりモジュール化されます。2)テストとコードの柔軟性の利便性を向上させ、3)DIコンテナを使用して複雑な依存関係を管理しますが、パフォーマンスの影響と円形の依存関係に注意してください。

PHPパフォーマンス:アプリケーションを最適化することは可能ですか?PHPパフォーマンス:アプリケーションを最適化することは可能ですか?May 14, 2025 am 12:04 AM

はい、最適化されたAphPossibleandessention.1)CachingingusapCutoredatedAtabaseload.2)最適化、効率的なQueries、およびConnectionPooling.3)EnhcodeCodewithBultinctions、Avoididingglobalbariables、およびUsingopcodeching

PHPパフォーマンスの最適化:究極のガイドPHPパフォーマンスの最適化:究極のガイドMay 14, 2025 am 12:02 AM

keyStrategIestsoSificlyvoostphpappliceperformanceare:1)useopcodecachinglikeToreexecutiontime、2)最適化abaseの相互作用とプロペラインデックス、3)3)構成

PHP依存性噴射コンテナ:クイックスタートPHP依存性噴射コンテナ:クイックスタートMay 13, 2025 am 12:11 AM

aphpDependencyInjectionContaineriSATOULTAINATINAGECLASSDEPTINCIES、強化測定性、テスト可能性、および維持可能性。

PHPの依存噴射対サービスロケーターPHPの依存噴射対サービスロケーターMay 13, 2025 am 12:10 AM

SELECT DEPENTENCINGINOFCENT(DI)大規模なアプリケーションの場合、ServicElocatorは小さなプロジェクトまたはプロトタイプに適しています。 1)DIは、コンストラクターインジェクションを通じてコードのテスト可能性とモジュール性を改善します。 2)ServiceLocatorは、センター登録を通じてサービスを取得します。これは便利ですが、コードカップリングの増加につながる可能性があります。

PHPパフォーマンス最適化戦略。PHPパフォーマンス最適化戦略。May 13, 2025 am 12:06 AM

phpapplicationscanbeoptimizedforspeedandEfficiencyby:1)enabingopcacheinphp.ini、2)PreparedStatementswithpordatabasequeriesを使用して、3)LoopswithArray_filterandarray_mapfordataprocessing、4)の構成ngincasaSearverseproxy、5)

PHPメールの検証:電子メールが正しく送信されるようにしますPHPメールの検証:電子メールが正しく送信されるようにしますMay 13, 2025 am 12:06 AM

PHPemailvalidationinvolvesthreesteps:1)Formatvalidationusingregularexpressionstochecktheemailformat;2)DNSvalidationtoensurethedomainhasavalidMXrecord;3)SMTPvalidation,themostthoroughmethod,whichchecksifthemailboxexistsbyconnectingtotheSMTPserver.Impl

See all articles

ホット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 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

SublimeText3 中国語版

SublimeText3 中国語版

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

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール

SublimeText3 英語版

SublimeText3 英語版

推奨: Win バージョン、コードプロンプトをサポート!