• ベストアンサー

配列の一部削除

array(1) { [0]=> array(3) { ["xxx"]=> string(5) "xxxxx" ["xxxxx"]=> string(3) "xxx" ["xxx"]=> string(4) "xxxx" } } 上記の配列の [0]=>の部分を消去したいのですが、どのようにすればよろしいでしょうか? 宜しくお願いします。

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

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

  • ベストアンサー
noname#244856
noname#244856
回答No.1

PHP Manual - 配列 http://www.php.net/manual/ja/language.types.array.php unset($array[0]); で消せます。var_dumpの出力を見る限り要素はキー「0」に対応する1個しかないのでこれやっちゃうと空になりますが。 …それとも、こういうことでしょうか? array(1) { array(3) { ["xxx"]=> string(5) "xxxxx" ["xxxxx"]=> string(3) "xxx" ["xxx"]=> string(4) "xxxx" } } もしこうしたいというのであれば、そもそもPHPの配列のことを理解できていません。先ほど提示したマニュアルを最初からじっくり読んでください。

nikogoo
質問者

お礼

To_aru_Userさん、ご回答ありがとうございます。 取り出すのに0をつけないようにしたかっただけです。 fetchallをfetchにして1つだけ取り出して対応しました。

関連するQ&A

  • 多次元配列の重複削除

    PHPの多次元配列の重複削除で悩んでいます・・・。 例) array(4) { [0]=> array(2) { ["name"]=>string(10) "春" ["cool"]=>int(0) } [1]=> array(2) { ["name"]=>string(14) "冬" ["cool"]=>int(200) } [2]=> array(2) { ["name"]=>string(14) "冬" ["cool"]=>int(0) } [3]=> array(2) { ["name"]=>string(14) "冬" ["cool"]=>int(200) } } 上記のような配列があった場合 下記のように重複してるものを削除させたいのです・・・。 array(4) { [0]=> array(2) { ["name"]=>string(10) "春" ["cool"]=>int(0) } [1]=> array(2) { ["name"]=>string(14) "冬" ["cool"]=>int(200) } [2]=> array(2) { ["name"]=>string(14) "冬" ["cool"]=>int(0) } } array_unique($array)を使用してもうまく行かず 悩んでおります。。。。 よい方法等あればご教授お願いいたします。

    • ベストアンサー
    • PHP
  • 配列の並びについて

    配列要素が思うように並んでくれません。 (1)のような配列を(2)のように配列要素を記述した順番で出力したいのですが、可能かどうか教えてください。 (1) $ary=array( "001"=>array("en"=>"TOYOTA","jp"=>"トヨタ"), "003"=>array("en"=>"HONDA","jp"=>"ホンダ"), "002"=>array("en"=>"NISSAN","jp"=>"日産") ); (2) Array([001]=>XXX [003]=>XXX [002]=>XXX) ↑このように出力したいのですが、自動的にソートされて Array([001]=>XXX [002]=>XXX [003]=>XXX)となります。 よろしくご教授下さい。お願いします。

    • ベストアンサー
    • PHP
  • 配列について

    string[] array = new string[200]; というように、arrayという配列を宣言して、そこに CheckBox.Textを入れていきたいんですが、 stringを暗黙的にstring[]に変えれません。というようなエラーがでます。 やっぱり、こんなふうにテキストを配列に入れることは無理なんでしょうか?? 初心者であんまり分からなくて、文章が分かりづらいと思いますが、アドバイスお願いします(><)

  • 配列のソートと削除

    String型のstrToRemoveで与えられた文字列を配列から探し、あればそれ以降の配列の数字をすべて左にシフトします。 なので配列の大きさは1小さくなります。その結果の配列をreturnで返します。 例) ({"A","B","C","D","B"}, "B")配列1にBがあるのでそれ以降の文字列をすべて左にシフト→ {"A","C","D","B"} ({"A","B","C","D","B"}, "A") 配列0にAがあるのでそれ以降の文字列を左にシフト→ {"B","C","D","B"} プログラムは以下のように組みました。 public class ArrayFun { public String[] oneRemoved(String[] array, String strToRemove) { int count = 0; for (int i = 0; i < array.length; i++) {      if (strToRemove.equals(array[i]) && count == 0) {        for (int j = i; j < array.length - 1; j++) {          array[j] = array[j + 1];        }          count++;      } }      array = new String[array.length - 1];      array[array.length - 1] = null;      return array; } } ちなみにcountは、一度シフトすればもう同じ文字列がそれ以降の配列にあってもシフトはしないので、countでシフトしたかどうかを判断しようと思い付けました。 これでテストメソッドも作るのですが、 import static org.junit.Assert.*; import org.junit.Test; public class ArrayFunTest { @Test public void testoneRemoved() { ArrayFun af = new ArrayFun(); String[] a1 = {"A","B","C","D","B" };//元の配列 String[] a2 = {"A","BB","CCC","DDD","B"};//元の配列 String[] a3 = {"B","C","D","B"};//シフト後の配列 String[] a4 = {"A","BB","CCC","DDD","B"};//シフト後の配列 assertEquals(a3, af.oneRemoved(a1, "A")); assertEquals(a4, af.oneRemoved(a2, "NotHere")); } } 以上のように組むと、assertEqualsの真ん中に黒線が入って自動的に@SuppressWarnings("deprecation")が加えられてしまいます。 実行結果は、({"A","B","C","D","B"}, "A") の例だと、配列0にB が入るはずがnullになっている、とエラーがでます。 どのようにしたら正常に動かせるでしょうか?宜しくお願いします。

    • ベストアンサー
    • Java
  • 連想配列で値が空だったら、要素を削除したいのですが

    連想配列で値が空だったら、要素を削除したいのですが、どうすればよいでしょうか? ▼元の配列 array { [1]=>"東京" [2]=>"京都" [3]=> ""←string [7]=>"横浜" [24]=>"奈良" [5]=> ""←string }    ↓ ▼こういう配列にしたい array { [1]=>"東京" [2]=>"京都" [7]=>"横浜" [24]=>"奈良" }

    • ベストアンサー
    • PHP
  • 配列

    以下のコードの用に配列内に入っている要素をif文の「(array[i] == AA)」みたいに直接判定するのは不可能なのでしょうか?よろしくお願いいたします。 String[] array = {"AA","BB","CC"}; for(int i = 0;i < array.length;i++) {  if(array[i] == AA) //ここの部分

    • ベストアンサー
    • Java
  • 2次元配列を1次元配列にするには

    array(2){ ["北海道"]=> array(2) { [0]=> string(9) "札幌市" [1]=> string(9) "函館市" } ["青森県"]=> array(2) { [0]=> string(9) "青森市" [1]=> string(9) "弘前市" } } 以上のような配列から北海道と青森県を取り出して array('北海道', '青森県') といったような処理をしたいのですが、どなたかご教示お願いいたします。

    • ベストアンサー
    • PHP
  • PHPの配列の扱い方

    配列を勉強中なのですが、 よく判らなくなってしまったので教えてください。 print var_dump($aa); を実行すると array(5) { [0]=> string(2) "AE" [2]=> string(1) "C" [4]=> string(1) "F" [5]=> string(1) "N" [6]=> string(1) "Y" } とか array(2) { [27]=> string(2) "BA" [41]=> string(2) "BP" } とかかえってくる配列$aaがあるのですが、 この"AE"や"C"や"BP"など文字情報だけを見たい場合はどのように表記すればいいのでしょうか?

    • ベストアンサー
    • PHP
  • 定数配列の書き方

    VB6で定数を定義する場合は次の通りです。   Const strTest As String = "TEST" では、定数配列を定義する場合はどのように書けばいいのでしょう?   Const astrTest() As String = Array("A", "B", "C")      '→NG   Const astrTest(0 To 2) As String = Array("A", "B", "C")  '→NG いろいろな書き方を試して見たのですが、上記のような書き方でも文法的にエラーになるようです。 どのように書けばいいのでしょうか? それとも定数を配列で定義するのは無理なんでしょうか?

  • PHP 配列

    多重の質問申し訳ございません。現在配列をvar_dumpすると array(3) { [0]=> string(32) "hogehoge" [1]=> string(32) "pipyup4646" [2]=> string(9) "1000%" } array(3) { [0]=> string(32) "testtest" [1]=> string(32) "kodsaf45454” [2]=> string(9) "500%" } prinfをしましたら出力結果が array(英語,英数字,値); という形になっているみたいです。 これを[英語][英数字] = 値というのは可能でしょうか? 宜しくお願い致します。

    • ベストアンサー
    • PHP

専門家に質問してみよう