• ベストアンサー

演算子について

phpで、ピリオド(.)は結合演算子に使いますが , は(読み方がわかりません)何に使いますか? if($num1,$num2) のような書き方だとどのような意味になりますか?

質問者が選んだベストアンサー

  • ベストアンサー
  • notnot
  • ベストアンサー率47% (4856/10272)
回答No.1

, は、comma で片仮名では カンマ が普通ですが、ローマ字読みして コンマ と書く人もいるようです。 C言語などだと、「カンマ演算子」というのもありますが、PHPではカンマは演算子では無いので、if($num1, $num2)のような記述はエラーです。 foo($num1, $num2) とかだと「fooという名前の関数を引き数$num1と引き数$num2で呼び出す」という意味になります。 他の構文でも使われます。

dhtfyjh
質問者

お礼

ありがとうございます

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 「404判定のstrpos」の演算子が分からないの

    「404判定のstrpos」の演算子の意味が分からないので、教えてください。 ▽404 Not Found時の対処 | PHPのQ&A【OKWave】   http://okwave.jp/qa/q4783971.html に掲載されていた下記を試したら、期待した動作になったのですが、 if (strpos($hdr[0],'404')!==false){  echo 'Not Found'; } else { しかし、 ▽PHP: strpos - Manual   http://php.net/manual/ja/function.strpos.php を参考に、「===演算子」へ変更したら、 if (strpos($hdr[0],'404')===false){  echo 'Not Found'; } else { 正常なURL(200)も、全てNot Foundになってしまいます。 ちなみに、 if (strpos($hdr[0],'404')==true){ だったら、期待通りの動作になりますが、 if (strpos($hdr[0],'404')===true){ だと、何が来ても同じ結果になります。 なんででしょうか? strpos関数の返り値を調べる際 ===演算子 を 利用しなくても良いのでしょうか?

    • ベストアンサー
    • PHP
  • 論理演算について質問

    今度こそ最後にします、、 質問:&&や||等の論理演算子は、「その両側にある2つの型booleanのオペランドに対して論理演算する」こういうことでしょうか? YESかNOでお答えいただいた上で、補足があればお願いします^^ 質問2:私は、括弧内の式が優先的に計算されると思って、その旨の質問をしたところ以下のような回答が返ってきました。 「優先されるのは結合順であって、評価順序ではないです。例えば、a==1 && b==3 || a==1 && b==0の式ににかっこを追加して、a==1 && (b==3 || a==1) && b==0とすると||の第1オペランドは b==3、第2オペランドは a==1 に変わります。」 ここでいう「結合順」の「結合」とはどういう意味ですか? 私の仮説では、「ある演算子がオペランドを結合している」、こういうことでしょうか? そして、括弧を用いることにより、ある演算子のオペランドの結合を変化させ、演算子は その括弧内の両側のオペランドをつなぐ、こういうことでしょうか? YESかNOかでお答えください。その上で何か補足があればお願いします^^

    • ベストアンサー
    • Java
  • phpでif文内で&の記述に疑問が・・・

    とあるphpを見ていると、 $num = 90; $hom = 4; $list = '<rock>sale</rock>'; if(intval($num) & $hom && preg_match("/^<\/rock>$/", $list)){ ・・・ } というif文がありました。 これはどういった意味でしょうか? intval、preg_matchは理解できます。 また論理演算子の&&も理解できます。 $homeの直前にある&の働きがよくわかりません。 if文を日本語で直訳するとどういった意味になるのでしょうか? よろしくお願い致します。

    • ベストアンサー
    • PHP
  • += 加算代入演算子 結合代入演算子

    JavaScriptを勉強していまして、+=という演算子が使われています。 調べると、あるサイトでは加算代入演算子と呼ばれているのを見たのですが、別のサイトでは結合代入演算子と表現されているようでした。 Googleで "加算代入演算子"は2250件ヒット "結合代入演算子"は495件のヒットでした どちらも思ったよりヒットしませんでしたが… これはどちらの呼び方が正しいでしょうか?どちらともでしょうか? ご回答いただけると幸いです。

  • ビット演算子が使えない。

    こんにちは現在Javaをやっているいのですが、 //計算を行うプログラムです。 public class keisan{ public static void main(String args[]){ int num1=10; int num2=15; System.out.println("num1とnum2にいろんな演算を行っています。"); System.out.println("num1+num2は"+(num1 | num2)+"です。"); } } コンパイルはできましたが、 Exception in thread "main" java.lang.NoClassDefFoundError: keisan[ とエラーがでてきます。どうしたら良いのでしょうか? お願いします。

    • ベストアンサー
    • Java
  • 演算子

    演算子 PHPでなくても、演算子は出てくると思いますが、 $a <> $b $a != $b 両方とも 「$a $bが等しくないときにtrue」ととあるwebページに書いてありますが、 <>と!=はどう違うのでしょうか。

    • ベストアンサー
    • PHP
  • 文字列比較の演算子

    Perl の世界から PHP にやってまいりました。 Perl では、文字列の比較には専用の演算子がありまして、 str1 eq str2 とすると、二つの文字列が同値かどうか調べられますが、PHP にはこのような演算子はないのでしょうか? www.php.net のマニュアルを見ても、そのような演算子がありません。 == 演算子が使えるものかと <?php $str1 = "this is string" ; $str2 = "this is string" if( $str1 == $str2 ) { echo "two string is same" ; } ?> などを試してみるとうまくいくようですが、www.php.net のマニュアルには「文字列を数値化して比較する」と書いてあり、本当に文字列比較が出来るか確信がもてず…。 結局、文字列を比較したいときには strcmp を呼び出していますが、これは PHP 的には正しいのでしょうか?

    • ベストアンサー
    • PHP
  • ショートカット演算(短絡演算)について

    ショートカット演算(短絡演算) 以下の❶❷は意味的に等価です。 ◉リスト2-31 logical2.js if (x === 1) { console.log('こんにちは'); } ← ❶ x ===1 && console.log('こんにちは'); ← ❷ 上記は おそらく左がx=1ではないという仮定なので、左側がfalseになりこの時点で右側は実行されないので下記の二つは同じということだと思いますか?

  • phpのswitch文について switchはif

    phpのswitch文について switchはifと違って、条件式の中がブール型の論理演算とかではないんですか? 完全に1つの値とかなんですかね? $num1>5とかそういうのは入らないんですか?

    • ベストアンサー
    • PHP
  • 複数の数字を計算

    下記のプログラムだと、 1 tasu 1 tasu 1 tasu 1 tasu 1 をしても答えは2となります。 入力された数字を一気に計算できる方法を教えて下さい。 また、必ず5の値を入力しなくては、いけないのでは無くて、5つ以下ならOKにしたいです。 コマンドプロンプト上で自ら入力し動くプログラムを作成中です。 例: 1 tasu 1 tasu 1 tasu 1 tasu 1  答え5      1 tasu 1 tasu 1 答え3 /*演算子チェックと演算実行*/ if (args[1].equals("tasu")){ /*演算子チェック*/ ans1 = num1 + num2; }else if (args[1].equals("hiku")){ /*演算子チェック*/ ans1 = num1 - num2; /* hiku 演算実行*/ }else if (args[1].equals("kake")){ /*演算子チェック*/ ans1 = num1 * num2; /* kake 演算実行*/ }else if (args[1].equals("waru")){ /*演算子チェック*/ if(num2 == 0){ /*0算チェック*/ System.out.println("0で割ろうとしました"); }else{ BigDecimal bd1 = new BigDecimal(num1); /* waru 演算実行*/ BigDecimal bd2 = new BigDecimal(num2); BigDecimal bd3 = bd1.divide(bd2, 2, BigDecimal.ROUND_HALF_UP);/*小数点第3位四捨五入、小数点第2位まで表示の割り算*/ } }else{ System.out.println("演算子1: kake waru tasu hiku の中から入力して下さい"); } /*演算子チェックと演算実行*/ if (args[3].equals("tasu")){ /*演算子チェック*/ ans1 = num2 + num3; }else if (args[3].equals("hiku")){ /*演算子チェック*/ ans1 = num2 - num3; /* hiku 演算実行*/ }else if (args[3].equals("kake")){ /*演算子チェック*/ ans1 = num2 * num3; /* kake 演算実行*/ }else if (args[3].equals("waru")){ /*演算子チェック*/ if(num3 == 0){ /*0算チェック*/ System.out.println("0で割ろうとしました"); }else{ BigDecimal bd1 = new BigDecimal(num2); /* waru 演算実行*/ BigDecimal bd2 = new BigDecimal(num3); BigDecimal bd3 = bd1.divide(bd2, 2, BigDecimal.ROUND_HALF_UP);/*小数点第3位四捨五入、小数点第2位まで表示の割り算*/ } }else{ System.out.println("演算子2: kake waru tasu hiku の中から入力して下さい"); } /*演算子チェックと演算実行*/ if (args[5].equals("tasu")){ /*演算子チェック*/ ans1 = num3 + num4; }else if (args[5].equals("hiku")){ /*演算子チェック*/ ans1 = num3 - num4; /* hiku 演算実行*/ }else if (args[5].equals("kake")){ /*演算子チェック*/ ans1 = num3 * num4; /* kake 演算実行*/ }else if (args[5].equals("waru")){ /*演算子チェック*/ if(num4 == 0){ /*0算チェック*/ System.out.println("0で割ろうとしました"); }else{ BigDecimal bd1 = new BigDecimal(num3); /* waru 演算実行*/ BigDecimal bd2 = new BigDecimal(num4); BigDecimal bd3 = bd1.divide(bd2, 2, BigDecimal.ROUND_HALF_UP);/*小数点第3位四捨五入、小数点第2位まで表示の割り算*/ } }else{ System.out.println("演算子3: kake waru tasu hiku の中から入力して下さい"); } /*演算子チェックと演算実行*/ if (args[7].equals("tasu")){ /*演算子チェック*/ ans1 = num4 + num5; }else if (args[7].equals("hiku")){ /*演算子チェック*/ ans1 = num4 - num5; /* hiku 演算実行*/ }else if (args[7].equals("kake")){ /*演算子チェック*/ ans1 = num4 * num5; /* kake 演算実行*/ }else if (args[7].equals("waru")){ /*演算子チェック*/ if(num5 == 0){ /*0算チェック*/ System.out.println("0で割ろうとしました"); }else{ BigDecimal bd1 = new BigDecimal(num4); /* waru 演算実行*/ BigDecimal bd2 = new BigDecimal(num5); BigDecimal bd3 = bd1.divide(bd2, 2, BigDecimal.ROUND_HALF_UP);/*小数点第3位四捨五入、小数点第2位まで表示の割り算*/ } }else{ System.out.println("演算子4: kake waru tasu hiku の中から入力して下さい"); }

    • ベストアンサー
    • Java
このQ&Aのポイント
  • スキャンの際、ネットワーク上にブラザー製品【MFC-J737DN】が見つからないというエラーが発生しています。
  • 印刷はできていて、同じWiFiにも繋がっていますが、急にスキャンができなくなりました。
  • 環境はWindows10 64bit、接続は無線LAN、電話回線は光回線です。
回答を見る