issetのお勉強
くれっちろぐ

issetのお勉強



他の人が書いたPHPを見ているとよく目にする『isset』。
なんだろう?と思いつつも見ないフリをしてきましたが、今回どうしても必要となってお勉強する事となりました。

『isset』を使うと、例えば入力欄に何か値が入っていないか調べて、入っていれば『true』入っていなければ『false』を判断してくれます。
空欄になってるかどうかチェックしたいと思いまして。
具体的に言えば
https://kiterira.com/blog_img/202109251730332021092504.jpg
こんなのを作ってみたんです。
毎日何ページか漫画を描いてたので、それをリスト化できるものを。
大体1日2ページ描いていますが、たまに1ページしか描かない時があります。
そんな時、右側のページ数入れる欄は必要なくて、空欄にしてるならデータベースにも書きこまないようにしたいと思いました。

そこでこの『isset』を使ってみようかと。

とりあえずテスト用の入力フォームを作り

https://kiterira.com/blog_img/202109251735302021092501.jpg

ココに何か入力した時は『true』空欄の時は『false』と表示される仕組みを作りました。
https://kiterira.com/blog_img/202109251742492021092503.jpg

ところがこの書き方ですと、空欄でも文字を入れても

https://kiterira.com/blog_img/202109251744402021092505.jpg

の文字が返ってきます。
想像なんですけど、例え空欄でも送信ボタンを押したら『ゼロ』という目に見えない何かが入った事になるのかもしれないですね?わからないけど、想像だけど・・・。
昨日買ってきたPHPの本には、『is_nameric』というナメック星人を彷彿とさせる文字を使っていました。
これは、入力された文字が数字かどうかを判定するものらしいです。
使い方はこんな感じ。
https://kiterira.com/blog_img/202109251750492021092502.jpg

$_POST['id'](フォームに入力した数字)がisset(何か入力)されていて、更にそれがis_numeric(数字)かどうかチェックして、OKだったらtrueを表示させて、そうでなかったらfalseを表示させられました。


これを最初の描いたページ数を入力するのに適用させたらうまく動いてくれました。



これで意味がわからなくて不気味な感じがしていたissetは覚えられました。
ついでにis_numericも。
どうしても使いたいと思うと本気出して勉強できるもんですね。

ところで、ページ数を8年分も入力していくのはとてもしんどいので、作ったけど使わないと思います^^;







2021.9.25 Saturday 18:02:31