ホームページ  >  記事  >  バックエンド開発  >  PHP のさまざまなプロセス制御に関する基本チュートリアル

PHP のさまざまなプロセス制御に関する基本チュートリアル

伊谢尔伦
伊谢尔伦オリジナル
2017-06-22 09:43:44924ブラウズ

条件制御ステートメント主にif、if...else、elseif、switchの4種類があります。whileループはループから抜け出すために使用するbreak/ continueステートメントです。

1. if

if () {
    statement;
} else if {
    statement;
} elseif {
    statement;
} else {
    statement;
}

else if と elseif の構文解析の意味には若干の違いがありますが、結局のところ、どちらもまったく同じ動作を生成します

2. ループ

while () {
    statement;
}
do {
    statement;
} while();
for (;;) {
    statement;
}
foreach (as) {
    statement;
}
break、continue

はオプションを受け入れることができます。ループの数を決定する数値パラメータ

3. switch

switch () {
    case :
        statement;
    default:
        statement;
}

は、caseステートメントの後にコロンの代わりにセミコロンを使用できます

switch ($beer) {
    case 'tuborg';
    case 'carlsberg';
    case 'heineken';
        echo 'Good choice';
    break;
    default;
        echo 'Please make a new selection...';
    break;
}

4.declare

declare構造体は、の実行命令を設定するために使用されます。コードの一部。

現在、ティックとエンコーディングの 2 つの命令のみが知られています

5. ティック

ティック (クロック サイクル) は、インタプリタが宣言コード セグメント内の N 個の時間指定可能な低レベル ステートメントを実行するたびに発生するイベントです。 Nの値はdeclareのディレクティブ部分のticks=Nで指定します

すべてのステートメントの時間を計測できるわけではありません。一般に、条件式

もパラメータ式も時間指定可能ではありません。

tick はイベントを表します。イベントの定義は register_tick_function にあり、イベントの実行頻度は (ticks=n) です。

目的は、イベントの記録など、実行されるいくつかのステートメントごとにイベントをトリガーすることです。これにより、宣言内で PHP コードの実行速度を確認できます。遅い部分が発生するコードセグメントの位置を見つけることができます。

<?php
    function doTicks ()
    {
        echo &#39;Ticks&#39;;
    }
    register_tick_function(&#39;doTicks&#39;);
    declare(ticks = 1) {
        for ($x = 1; $x < 10; ++ $x) {
            echo $x * $x . &#39;<br />&#39;;
        }
    }
?>

操作結果:

1
TicksTicks4
TicksTicks9
TicksTicks16
TicksTicks25
TicksTicks36
TicksTicks49
TicksTicks64
TicksTicks81
TicksTicksTicksTicks

まず、完全な

for ループ はステートメントとしてカウントされますが、ループが終了するまで待機する必要があるため、for ループ内のエコーはコンパイル時の最初のステートメントとしてカウントされます。

つまり、最初の doTicks は最初のエコーの後に実行されます。つまり、最初の Tick イベントは 1 が出力された後に発生します。

x=9 の for ループも終了し、2 番目のティックを出力します。$x=10 のループが開始されますが、この時点でループ条件が満たされなくなり、for ループの実行が終了します。このループは別のステートメントであり、3 番目のティックが出力されます。

最後に、declare自体もステートメントなので、4番目のティックが出力されます。

6. エンコーディング

各スクリプトのエンコーディング方法を指定するには、encoding コマンドを使用できます

<?php
declare(encoding=&#39;ISO-8859-1&#39;);
// code here
?>

7. reutrn

require、include、

require_onceinclude_oncerequire と include はほぼ同じです。 、処理を除いて、失敗はさまざまな方法で発生します。 require は、エラーが発生したときに E_COMPILE_ERROR レベルのエラーを生成します。つまり、スクリプトが中止されますが、include は警告 (E_WARNING) のみを生成し、スクリプトは実行を継続します。

8. goto

goto 演算子を使用して、プログラム内の別の場所にジャンプできます。ターゲット位置は、ターゲット名に続いてコロンを付けることでマークできます。ジャンプ命令は、goto の後にターゲット位置のマークが続くものです。

PHP の Goto には特定の制限があります。ターゲットの場所は同じファイルとスコープ内にのみ存在できます。つまり、関数やクラス メソッドからジャンプしたり、別の関数にジャンプしたりすることはできません。また、ループやスイッチ構造にジャンプすることもできません。ループから抜け出すか切り替えることができます。通常の使用法は、複数レベルのブレークの代わりに goto を使用することです。

りー

以上がPHP のさまざまなプロセス制御に関する基本チュートリアルの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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