質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.47%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

配列

配列は、各データの要素(値または変数)が連続的に並べられたデータ構造です。各配列は添え字(INDEX)で識別されています。

Q&A

解決済

2回答

993閲覧

連想配列においてキーと値を指定し、TRUEもしくはFALSEを返す関数

aae_11

総合スコア178

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

配列

配列は、各データの要素(値または変数)が連続的に並べられたデータ構造です。各配列は添え字(INDEX)で識別されています。

0グッド

0クリップ

投稿2019/07/28 05:16

編集2019/07/28 06:15

連想配列のキーと、値を指定し、見つかったら、trueを返してくれるような関数はありますでしょうか?
検索し探してみたのですが、見当たらなかったもので...
追記です。
具体的には、例えば以下の配列$arrに対して、キーがオレンジの値が200であったらTRUEを返すような感じを想定しています。

$arr = array( array('apple' => 100;,'orange' => 200), array('apple' => 200;,'lemon' => 200) )

検索ワードは、連想配列、キー,値,指定 検索
などで調べました

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2019/07/28 05:49

何をどう探したのか具体的に記載してください 探し方が間違っていれば探し方のアドバイスで解決できますし、見つけた記事が正しく理解できているかどうかでもアドバイスの方向性が変わります。 間違っていていいので自身が書いたコードも記載してください。そこから要件を汲み取れることもあります
m.ts10806

2019/07/28 06:13

(2回目)何をどう探したのか具体的に記載してください 探し方が間違っていれば探し方のアドバイスで解決できますし、見つけた記事が正しく理解できているかどうかでもアドバイスの方向性が変わります。
m.ts10806

2019/07/28 06:38

調べただけで試してませんか? 動かして得られることも多々あるはずですが
aae_11

2019/07/28 06:41 編集

あーif文とforeachで試しに回してみたりはしたんですけど、関数でできないかなと思ったんですよね
guest

回答2

0

ベストアンサー

if (isset($arr[$key]) && $arr[$key] == $val) { // true }

勝手に要件を
「連想配列に指定のキーと指定の値が存在する時にtrueを返す」と解釈しましたが
タイトル、本文のような内容だと伝わりにくいのでもう少し具体的に書いたほうがいいと思います

投稿2019/07/28 05:29

編集2019/07/28 05:38
mikkame

総合スコア5036

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

aae_11

2019/07/28 06:29

ご回答ありがとうございます。 追記しました!
m.ts10806

2019/07/28 06:40

要件が複数なら使う機能も複数ですね(コールバック使う方法もありそうだけどより複雑に見えるし複数使うのはかわりないし
mikkame

2019/07/28 06:46

追記内容を確認しました。 これだと、連想配列じゃなくて多次元の連想配列ですね・・・
mikkame

2019/07/28 06:47

2次元までなら本回答をforeachで回せば解決できるのでは、と思います。
guest

0

何がやりたいんかよく分かってないけど。。。

true なものをなんか処理したいのであれば

php

1<?php 2$arr = array( 3 array('apple' => 100,'orange' => 200), 4 array('apple' => 200,'lemon' => 200) 5); 6 7var_dump(array_filter($arr, function($v) { 8 return isset($v['orange']) && $v['orange'] === 200; 9}));

投稿2019/07/28 06:54

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

aae_11

2019/07/28 07:03

ご回答ありがとうございます。 array_filter調べてみたいと思います
aae_11

2019/07/28 09:41 編集

こちらのコードを実行しましたら、以下の配列が返ってきました。 「array(1) { [0]=> array(2) { ["apple"]=> int(100) ["orange"]=> int(200) } }」 functionの引数の$vは配列を指定することになるのですね。勉強になりました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問