<?php
// stringcast.php
if (!isset($argv[1])) {
exit;
}
$num = $argv[1];
if ($num == 100) { ←(1)
echo "num is 100", PHP_EOL;
} else {
echo "num is not 100",PHP_EOL;
}
このプログラムを
%php stringcast.php100
のように実行する、引数の100はPHP文字列型として渡されます。
したがって、(1)の比較では、文字列"100"の入って変数$numと、整数100が比較されるため、
文字列"100"は整列100へとキャストされまた後、比較演算が実行されます。
今回は、動作の結果に違いはありませんが、ここで整数同士を比較しているつもりでも実際には
文字列を整数の比較が行われ、キャストが発生している、という挙動を把握しているか、していない
かではなく大きな違いがあります。引数とし期待している値の型が決まっている場合、明示的にキャ
ストを行い、厳密な比較演算子(===など)を用いるほうが安全です。
--------------------------------------------------------
以上、参考書をまるごと入力しました。
そこで $num = $argv[1];で!$argv[1]とはこのプログラムではどんな働きがあるのでしょうか!?
($argv[1];を$numに代入だと思います。間違っていたなら御免なさい。)
宜しくお願いします。
なお・批判的なご回答はお控えくださいませ。
No.1ベストアンサー
- 回答日時:
if ($argv[1] == 100)
と書くと複雑で勘違いしやすいと思ったから、その前に代入文を入れただけではないでしょうか?
プログラムの先頭で、引数 argv[] からそれぞれのパラメターの変数に代入し値チェックすることは、ごく標準的な作法です。
No.2
- 回答日時:
>$argv[1]とはこのプログラムではどんな働きがあるのでしょうか!?
コマンドラインから渡された最初の引数が格納された変数
RTFM.
http://php.net/manual/ja/reserved.variables.argv …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- UNIX・Linux 次の要件を満たすにはどのように修正したらよろしいでしょうか 1 2022/11/24 20:57
- Excel(エクセル) エクセルで2つの表を比較して、文字列が同じだが、その行のある値が違うものを抽出したい 1 2022/10/06 21:48
- C言語・C++・C# c言語 プログラムのエラー 1 2023/02/11 20:31
- C言語・C++・C# C言語初心者 ポインタについて、お助けください、、 2 2023/03/15 23:50
- PHP PHP MySql ページング 2 2022/09/20 06:38
- C言語・C++・C# C言語プログラム変更 2 2022/12/21 15:03
- その他(プログラミング・Web制作) awkの文字列比較はPOSIXロケールまたはCロケールにおいてバイナリ値の比較に使えるか gawkな 1 2023/04/22 09:21
- C言語・C++・C# c言語の問題の説明、各所ごとに 5 2023/07/26 11:03
- PHP カラーミーショップのSmartyでの文字列抜き出し 2 2022/05/06 11:51
- UNIX・Linux Linuxのbash環境下です。 1 2022/11/27 12:31
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
XML-RPCでsend()できない
-
if($j == $dt["mday"])のmdayと...
-
コメント 中国語 日本語
-
PHPでの再帰を用いたツリー構造...
-
illegal string offset
-
フォントの色を変えるには?
-
PHPのif文でその処理を途中で抜...
-
onedrive にexcelファイルをア...
-
.phpと.incファイルの違いはな...
-
CSV出力にHTMLが入ってしまう
-
バッチを用いたフォルダの自動移動
-
PHPでの複数ファイル出力
-
.htaccessにphp_valueが使用できな
-
文字化けについて
-
VBAでJPGサイズ変更
-
別ファイルの変数を呼び出した...
-
「@$変数」の「@の意味は?」
-
Smarty includeでテンプレート...
-
【file_exists】ファイルが存在...
-
ドラッグアンドドロップで画像...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
PHPのみでの背景色は指定できる...
-
smartyでホームページ上の画像...
-
eclipseのエラーの意味
-
FORMタグを使わずに、POSTする...
-
phpとaspの違いについて
-
ここで言う空文字の意味とは?
-
PHPからPerlにデータを渡して結...
-
VBおすすめ書籍
-
携帯電話のwebページでphpによ...
-
php エラー
-
書籍よりも より良い htmlspeci...
-
語句の意味を教えてください
-
functionCheckAuthについて
-
さくらのレンタルサーバーでメ...
-
PHPで、楽天APIを自動更新さ...
-
コメント投稿
-
PDOのlastInsertIDについて
-
PHPでの感嘆符
-
PHPとOracleの接続ができない
-
CGI(Perl)でできてPHPではで...
おすすめ情報