• ベストアンサー

=> と >=の違いは!?

$name = array('りんご'=>'赤','メロン'=>'緑'); $name = array('りんご'>='赤','メロン'=>'緑');  以上試すと、リンゴの値が異なるのですが!? => と >=の違いは!?  PHP5.3以上を使用しています。   以下参考  http://www.phpbook.jp/func/var/index4.htmlから    自動キャストの影響か!?    よろしくお願いします。

  • PHP
  • 回答数2
  • ありがとう数1

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

  • ベストアンサー
回答No.2

=> : 連想配列を生成する時のキーと値の関連付けで利用する構文 (foreachでも使う) >= : 「以上」を意味する演算子 まったく意味合いが異なります。 $name = array('りんご'=>'赤','メロン'=>'緑'); は, $name = array(); $name['りんご'] = '赤'; $name['メロン'] = '緑'; と同じことになるコードですが, $name = array('りんご'>='赤','メロン'=>'緑'); は, $name = array(); $name[] = ('りんご' >= '赤'); // おそらく falseの代入 $name['メロン'] = '緑'; と同じことになるコードです。

Campus2
質問者

お礼

ご回答誠にありがとうございました。  

Campus2
質問者

補足

ご回答誠にありがとうございました。   >= と <= ・・・は同じ結果になりました。  <>が逆なのに結果が同じとは理解しがたい結果でした!?   ならば、$name = array('りんご'=<'赤','メロン'=>'緑'); の=<が存在してもいいのでは!?  の思い 実際やってみたところ。  Parse error: syntax error, unexpected '=', expecting ')' in C:\xampp\htdocs\study.localhost\php.php on line 34    謎は深まるばかりです。  

その他の回答 (1)

  • hitomura
  • ベストアンサー率48% (325/664)
回答No.1

関連するQ&A

  • C++ほぼ初心者です。配列で値の取得について

    C++ほぼ初心者です。 ちょっと自分で勉強しようとして配列を試しているところです。 そこで、どうしても配列にしたデータの値の取り方に悩んでしまったので教えていただきたいと思い質問させていただきました。 配列を   0     1  0 赤    リンゴ 1 黄    バナナ 2 緑    メロン としたときに、 「緑」という値を入れたら「メロン」と返ってくるようにしたいです。 いろいろ調べてみると、 「2」「1」と入れると「メロン」と返ってくるような説明を見ます。 これを「緑」という値で「メロン」って返ってくるようにするにはできないでしょうか? 私なりに考えた案としては まず、「緑」は2番だよと返ってくる関数でも作って、 それから「2」「1」の値をくださいってするのかな?と思うのですが、 どうもしっくりこないです。 この方法しかないでしょうか? よろしくお願いいたします。

  • 多次元配列

    初歩的な質問ですみません。 PHPプログラミングでの質問です。 仮に、多次元配列Aに、 Array( [0] => Array ( [0] => 6 ) [1] => Array ( [0] => 2 [1] => 1 ) [2] => Array ( [0] => 0 [1] => 5 [2] => 4 ) ) 多次元配列Bに、 Array( [0] => Array ( [0] => りんご ) [1] => Array ( [0] => ぶどう [1] => パイナップル ) [2] => Array ( [0] => みかん [1] => すいか [2] => メロン ) ) のように値が入っている場合、配列Aの値を参照して 値の大きいものから順に、それに対応する配列Bの値を取り出し、 あたらしい配列Cに代入する処理の書き方を教えて下さい。 上記の例ですと、配列Cが、 Array ( [0] => りんご [1] => すいか [2] => メロン [3] => ぶどう [4] => パイナップル [5] => みかん ) となるようにしたいです。 よろしくお願いします。 長文失礼しました。

    • ベストアンサー
    • PHP
  • コードを入力して、文字を表示させたい(javascript)

    凄く悩んでいるのですが、良かったら教えてください。 入力フォームに コード 101 と入力したら、そのすぐ横に 配列から検索して、『オレンジ』と表示させたい のですが、どうもうまくいきません。 教えてください。 var koumoku = new Array('100','101','102'); var name = new Array('りんご','オレンジ','メロン'); 入力したものと、配列koumokuの中のコードと比べて 同じコードがあった場合、配列nameから「オレンジ」 を表示させたいのです。 for文等を使い、表示させたいです。 実は、かなりこの配列が長いので・・・ ご伝授お願いします。

  • ES6を学んでいるのですが難しいです。

    ES6を学んでいるのですが難しくて初心者にもわかるように解説していただけるとありたいです。 http://qiita.com/takeharu/items/cbbe017bbdd120015ca0 >>> 関数で複数の値を一度に返す一度に関数で複数の値を返すことができます。今まではオブジェクトや配列に代入して返していました。 function getFruit() { return ['りんご', 'バナナ'];} ES6 var [fruit1, fruit2] = getFruit(); ES5 console.log(fruit1); // りんごconsole.log(fruit2); // バナナ >>> 上記は function getFruit() { return ['りんご', 'バナナ'];} ES6 var [fruit1, fruit2] = getFruit(); ES5 ということだと思いますか? そのような説明がないのでわかりにくいですが、 ・ >>> 「...」演算子により、複数の値を一つの配列にまとめる「...」演算子を使用することにより、それ以降の値を一つの配列としてまとめることができます。 var [name, age, ...fruit] = ['ハル', 21, 'りんご', 'みかん']; console.log(name, age, fruit); // ハル 21 ['りんご', 'みかん'] また、「...」演算子を使用することにより、配列の展開もできます。 var array = [1, 2, 3]; console.log(array); // [1, 2, 3]console.log(...array); // 1 2 3 これにより今まで配列で最大値を求める場合は、applyメソッドを使用する必要がありました。しかし、展開することにより、簡潔に記述可能となります。 * Before var array = [1, 5, 3]; var max = Math.max.apply(null, array) console.log(max); // 5 * After var array = [1, 5, 3]; var max = Math.max(...array); console.log(max); // 5 >>> var max = Math.max(...array);の部分がおそらく新しいのだと思いますが、nullが...になっているというのは、 どういう意味で、どんなメリットがあるのでしょうか?

  • 行頭に記述する+の使い方

    今までPerlを使っていましたが、PHP勉強中です。 ETHNAというフレームワークの使い方を読んでいたのですが、 http://ethna.jp/ethna-document-tutorial-practice2.html -------------------------------  var $action = array(    /*    * TODO: ここにaction定義を記述してください    *    * 記述例:    *    * 'index'  => array(),    */ +   'login'     => array( +     'class_name' => 'Sample_Action_Login', +   ),  ); ------------------------------- ここにある + はどういう意味なのでしょうか。 VBでは命令文の途中に改行を入れる場合行末に _ を入れたりしますが、 PHPではそういうのは関係ないようですし、 PHPのマニュアルにはそういう記述はなさそうでしたので。 http://www.php.net/manual/ja/language.types.array.php

    • ベストアンサー
    • PHP
  • ある文字を含む文字列のみ配列にする方法

    var_dump($text); を行うと array(1) { [0]=> string(XX) "あいさつ" } array(1) { [0]=> string(XX) "いい日旅立ち" } array(1) { [0]=> string(XX) "りんご、うまい" } array(1) { [0]=> string(XX) "メロン好き" } …… となるような変数 $text があり、そこから $key = array("ばなな","りんご","メロン"); の配列内にある文字列を含むものだけを新たに格納したいです。 自分では foreach($text as $value){ if(in_array($value, $key)){ $key_text[] = $value; } } と書いて試したのですが、NULLと返ってきてしまいます。 どうやって書けばいいか教えて下さい。 よろしくお願いします。

    • ベストアンサー
    • PHP
  • 配列からインデックス番号を得たい。

    非常に初歩的な質問だと思います。。 配列で困っています。 $data = array("りんご","バナナ","メロン"); という配列があったとして、「メロン」という語句で$c_nに「2」というインデックス番号を得たい場合は具体的にどうしたら良いのでしょうか? $c_n = array_keys($data,"メロン"); echo $c_n; として実行すると、ただ「2」とだけ表示してほしいのに、「Array」とだけ表示されてしまいます。(初心者なので、大変な勘違いをしている場合があります。。) 具体的にどうしたらよいでしょうか?

    • ベストアンサー
    • PHP
  • PHPの質問:フォームから受け取った値がNULL

    あまりに基本的過ぎるのか、検索しても、参考書を読んでも分かりませんでした。 ■やりたいこと index.htmlのフォームで入力した値を、output.phpで変数$nameとして受け取りたい。 (この後$nameをstrstr関数の引数として使いたい) ■作ったソース 【index.html】 <form action="output.php" method="post"> <input type="text" name="name"> <input type="submit" value="入力"> </form> 【output.php】 <?php $name = $_POST['name']; var_dump($name); ?> ■困っていること output.phpをブラウザで開くと、以下の通りに表示されます。 string(4) "abcf" しかし、ブラウザで「ソースを表示」すると、[NULL]となってしまいます この変数$nameは、strstr関数の引数として使いたいのですが、 そこで値がNULLのため、上手くいきません。 ■お聞きしたいこと (1)フォームから受け取った値をvar_dump()を使い、ブラウザのソース表示をすると NULLになるのは、そういった仕様なのなのでしょうか? (2)フォームからの値を変数に格納する際、何か注意する点があるのでしょうか? 何か根本的なことから理解していないようでお恥ずかしいのですが、 教えて頂けると大変助かります。 よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • PHP初心者です。

    PHP初心者です。 index.php から外部関数に飛び、文字列を返してきてindex.phpで それらの文字列を表示するプログラムはどのように書けばいいんでしょうか? /* ---func1.php--- */ function func1($aa,$bb){ $moji=""; $moji.= "ああ".$aa."ああ"; $moji.= "いい".$bb."いい"; //$mojiの内容を返す } /* ---func2.php--- */ function func2($cc,$dd){ // DBからデータを取得して $sql = "SELECT name, add, mail, tel FROM tbl_a WHERE cc = ".$cc; $moji_db = ""; $result = mysql_query($sql); while ($row = mysql_fetch_assoc($result)){ $moji_db .= $row['name']; $moji_db .= $row['add']; $moji_db .= $row['mail']; $moji_db .= $row['tel']; } //$moji_dbを返す } index.php で $mojiと$moji_dbを出力する 以上のようなプログラムなんですけど、 func1,2の戻り値の書き方、index.phpでの受け取り方がわからないので教えてください。

    • ベストアンサー
    • PHP
  • checkboxの初期値設定(postの時)

    php初心者です。 以下はどのようにやればいいのでしょうか。 色々調べたのですが、考え方がわからず困っています。 (やりたい事) (1)入力画面(index.php)にチェックボックス (赤、青、黄、緑)つくる (2)確認画面(confirm.php)にpostで飛ばす (3)修正があれば、index.phpに戻るが、 チェックしたものが保持された状態で 戻る。 このような事をしたいのですが、以下で手が止まって しまいました。 ◆index.php <?php <form method="post" action="confirm.php"> <input type="checkbox" name="colors[]" value="赤">赤 <input type="checkbox" name="colors[]" value="青">青 <input type="checkbox" name="colors[]" value="黄">黄 <input type="checkbox" name="colors[]" value="緑">緑 <input type="submit" value="送る"> </form> ?> ◆confirm.php <?php  <form method="post" action="index.php">  foreach ($_POST['colors'] as $color){  echo $color ." /"; } <input type="submit" value="戻る"> </form> ?> これをどう加工していけばよいか、よろしくお願いします。

    • ベストアンサー
    • PHP