久しぶりの PHPネタ

今開発中の Web Applicationではデータ構造が複雑なため、SQLで読み込んだり書き込んだりする時にたくさんのバグが混入しています

特に画面遷移においてデータをどのように受け渡しするか? それが自分の中でも混乱してしまうのです どうすれば良いか? それで考えたのが 以下のような utilityを作ることでした

<?php


function DEBUG_CONT() {
  echo "-----------------------------------------------------------------------<br>";
  if ( !isset( $_POST ) ||empty( $_POST ) ) {
    echo "<strong>POSTは空っぽです</strong><br>";
  } else {
    foreach ( $_POST as $key => $value ) {
      echo '&nbsp;&nbsp;&nbsp;$_POST[' . $key . '] = ';
      if (mb_strlen($value) > 50) {
        echo mb_substr($value, 0, 50).'・・<br>';
      } else {
        echo $value.'<br>';
      }
    }
  }
  echo "-----------------------------------------------------------------------<br>";
  if ( !isset( $_SESSION ) ||empty( $_SESSION ) ) {
    echo "<strong>SESSIONは空っぽです</strong><br>";
  } else {
    foreach ( $_SESSION as $key => $value ) {
      echo '&nbsp;&nbsp;&nbsp;$_SESSION[' . $key . '] = ';
      if (mb_strlen($value) > 50) {
        echo mb_substr($value, 0, 50).'・・<br>';
      } else {
        echo $value.'<br>';
      }
    }
  }
  echo "-----------------------------------------------------------------------<br>";
  return;
}

function DEBUG_STOP() {
  echo "-----------------------------------------------------------------------<br>";
  if ( !isset( $_POST ) ||empty( $_POST ) ) {
    echo "<strong>POSTは空っぽです</strong><br>";
  } else {
    foreach ( $_POST as $key => $value ) {
      echo '&nbsp;&nbsp;&nbsp;$_POST[' . $key . '] = ';
      if (mb_strlen($value) > 50) {
        echo mb_substr($value, 0, 50).'・・<br>';
      } else {
        echo $value.'<br>';
      }
    }
  }
  echo "-----------------------------------------------------------------------<br>";
  if ( !isset( $_SESSION ) ||empty( $_SESSION ) ) {
    echo "<strong>SESSIONは空っぽです</strong><br>";
  } else {
    foreach ( $_SESSION as $key => $value ) {
      echo '&nbsp;&nbsp;&nbsp;$_SESSION[' . $key . '] = ';
      if (mb_strlen($value) > 50) {
        echo mb_substr($value, 0, 50).'・・<br>';
      } else {
        echo $value.'<br>';
      }
    }
  }
  echo "-----------------------------------------------------------------------<br>";
  exit();
}

?>

これで該当するベージに DEBUG_CONT();などとすれば、何の$_SESSIONあるいは $_POSTを保持しているかが分かり データの流れが把握しやすくなりました

投稿者: (KAMAKURA & SAPPORO)Dr_Radialist

Expert Interventional Cardiologist and Amateur Computer Programmer

「久しぶりの PHPネタ」への2件のフィードバック

  1. お久しぶりです。
    一時期、このサイト落ちてませんでした? 私のコメントも一部ふっとんだようです。
    ひさびさのプログラミングネタ、「いいね」押したい気分です。

    HorliX ですが、ようやくコードに署名して Ver 1.0.2 としてリリースしました。
    https://phazor.info/HorliX/?page_id=105
    ゲートキーパーを気にしなくて良いので若干使いやすくなっているかと。
    内部的にはサンドボックス化しました。
    なんですが、これが曲者で、例えば、データは今まで「書類」直下に **** Data のような形で保存されていましたが、サンドボックス化すると「アプリ固有の領域」とやらに置かれてしまうようです。(いったい、どこなんでしょうか????)
    私はマカーでもなんでもないんで、こういう仕様がすごく気持ち悪いと感じます。
    自分のホーム領域にファイル置けないものなんでしょうか???

    調べれば抜け道ありそうなんですが、調べること自体がアップルの手の内に遊ばされているようでいらっとします。

  2. あと、以前いっていた HorliX とシミュレーション云々ですが、実は、既に(間接的にはですが)臨床で使われてます。

    昔(今もか)、私と組んでいた先生が researchgate.net というところで軽く宣伝してくれました。
    https://www.researchgate.net/post/Converting_CT_scan_images_into_volume_mesh2
    日本で今いっても理解されないと思うので、ここだけの話にしておきます。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です