>>974 関数抜けた時に消えるよ、Cやら他言語やってる奴が陥る典型例
グローバル変数は変らない

ユーザの書き換えミスを心配するなら値チェックするフォームが妥当だと思う
is_null使う所なのか? とか全体的に違和感の有る書き方だけど