勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

PHPでdo-while(0)構文を利用する際のメリット

   2024/01/12  PHP

あるソースコード上にdo-whileという構文が使われていた。見たことのない構文なのでどういった際に使用するのか調べた内容を以下にメモ。

 

リファレンス

https://www.php.net/manual/ja/control-structures.do.while.php

 

ソースコード

do {
    //処理内容

    //エラーの場合は処理を抜ける
    if( $test ){
        break;
    }

    //処理内容

    if( $hoge ){
        break;
    }
} while (0);

以下のようなメリットがある模様。

  • エラー時はbreakで処理を終了できる
  • 無限ループに陥らない
  • ネストが深くなりにくい

途中で一個でも引っかかればbreakで抜けてエラー側の処理、最後まで生き残ればサクセス処理みたいな形で使うとよさげ。

 

参考サイト

http://sla0.jp/2012/02/do-while%E3%81%AE%E6%84%8F%E5%A4%96%E3%81%AA%E4%BD%BF%E3%81%84%E6%96%B9/
http://hateda.hatenadiary.jp/entry/2012/11/05/do_while
http://www.phppro.jp/phpmanual/php/control-structures.do.while.html

 - PHP

  関連記事

SortableJSを使ってデータの並べ替え&保存

あるシステムを拝見した際にtableタグ内に並んでいる項目をドラッグ&ド ...

PHPでテンプレートPDFに動的に文字や数値を追記し出力する方法(TCPDF&FPDI)

請求書や領収書のテンプレートがあり、そちらに対して動的に文字・数値を追記し出力さ ...

SendGridを使ってメールサーバを構築せずにPHPからメールを送信する方法

メールサーバを構築せずに独自ドメインのメールアドレスにてメール送信を行いたい。過 ...

PHP8系で「Uncaught TypeError: count(): Argument」エラーの対応方法

PHP8系で「PHP Fatal error: Uncaught TypeErr ...

PHP8系で関数の引数が設定しやすくなる名前付き引数について

PHP8系で名前付き引数が導入されたということを最近知った。今までは「第〇引数」 ...