タグ

phpと配列に関するtmsanrinshaのブックマーク (8)

  • PHPのlist表現を使おう - id:anatooのブログ

    PHPにはlist表現というものがあるが、積極的に使われているのをあんまり見ない。 これはおそらくlistの以外な便利さが詳細まで知られていないからかと思う。 そこでこの記事ではPHPのlistの使い方を細かく説明していくことにする。 基的な使い方 list表現は代入式の左辺で使われ、右辺の配列の要素を一連の変数に代入する事が出来る。 そのlistのごく基的な使い方の例が以下。 <?php list($first, $second) = array(1, 2); 変数$firstに右辺の配列の0番目の要素が代入され、変数$secondに右辺の配列の1番目の要素が代入される。 listの外見は関数の呼び出しとほとんど変わらないので奇妙に見えるかもしれない。 上のコードは、以下とほぼ同じ意味を持つ。 <?php $arr = array(1,2); $first = $arr[0]; $s

    PHPのlist表現を使おう - id:anatooのブログ
  • PHPで二次元配列の転置行列を得る方法 - かなりすごいブログ

    表のデザイン的に行列を転置したい時ってあるよね。 昔にいさんが恐ろしく短いコードで書いてた気がするので聞いてみたら教えてくれた。メモ。 [php]<?php function transverse_matrix($array){ return call_user_func_array(‘array_map’,array_merge(array(null),$array)); } print_r(transverse_matrix(array( array(‘Id’,'Name’,'Age’), array(’1′,’Taro’,’15′), array(’2′,’Hanako’,’16′), array(’3′,’Tom’,’5400′) ))); /* Array ( [0] => Array ( [0] => Id [1] => 1 [2] => 2 [3] => 3 ) [1] =>

  • 配列の要素確認と実行速度

    こんにちは、アシアルの井川です。 Webサイトやバッチ処理のパフォーマンスを考える際、気を付けることは多々あります。全体の構造、アルゴリズムの効率化、…。その中の一つに、個々の関数の仕組みと実行速度の問題があります。関数の仕様は言語レベルで決定されており、それらを把握していないと、時としてパフォーマンスの大きな低下を招きます。今回焦点を当てるのは、配列要素を確認する際によく使われる関数です。 さて、皆さんは配列内に要素が存在するか否かを判定する場合、どうされていますか?この確認には、isset、array_key_exists、in_arrayなどいくつかの方法があります。isset、 array_key_existsは配列のキー値が存在するか確認し、in_arrayは要素の値を確認します。例えば、 <?php $list = array('a' => 1, 'b' => 1, 'c' =

    配列の要素確認と実行速度
  • PHP-users - [PHP-users 35690] 関数の戻り値を変数に格納せずに配列アクセスしたい

    小林と申します。 配列を返す関数からは以下のように値を取得することができますが、 $a = foo(); $n = $a[1]; // 20 を取得できる function foo() { return array(10, 20); } これを配列変数 $a を介さず、 以下のように1行で書く方法はありますでしょうか? $n = foo()[1]; // 構文エラーでした $n = (foo())[1]; // 構文エラーでした $n = $(foo())[1]; // 構文エラーでした C++Perl 等では (構文は違えど) 上記のようなことができますが、 php でもそれができれば少しコーディングで楽ができるかな、 という程度の興味です。 -- kobayashi <[hidden email]> ________________________________________

  • PHP: array_rand - Manual

    Getting Started Introduction A simple tutorial Language Reference Basic syntax Types Variables Constants Expressions Operators Control Structures Functions Classes and Objects Namespaces Enumerations Errors Exceptions Fibers Generators Attributes References Explained Predefined Variables Predefined Exceptions Predefined Interfaces and Classes Predefined Attributes Context options and parameters Su

    PHP: array_rand - Manual
  • 配列の空要素を削除して切り詰める。 - Code is beautiful

    PHPで配列の空要素を削除して切り詰めたい時。 $in = array("", "", "a", "", "b", "c", ""); $out = array_merge(array_diff($in, array(""))); 要はarray_diff()で空要素との差分を取り、そのままだと添字が維持されたままなのでarray_merge()で添字を振り直すと。 Perlでarray_diff()は無さげだけど、普通にこれで行けるは行ける。 my @out = (); my @in = ("", "", "a", "", "b", "c", ""); for($i = 0; $i < @in; $i++) { if($in[$i] ne "") { push(@out, $in[$i]); } }

    配列の空要素を削除して切り詰める。 - Code is beautiful
  • [PHP] array_splice で配列の要素を削除する | 女プログラマってどうよ?

    わかってしまえば、なぁんだってことなのだけど、すごく悩んだので。 php の配列は(見た目は) 2 種類。 hash ぽいものと、array ぽいもの。 // array ぽい $input_a = array("red", "green", "blue", "yellow"); // hash ぽい $input_h = array("r"=>"red", "g"=>"green", "b"=>"blue", "y"=>"yellow"); 配列から要素を削除する場合、 unset を使いなさいと書かれている。 「php 配列 要素 削除」で検索しても、大体 unset しか出てこない。 マニュアルにはこんな風に。 // 配列の要素の一つを破棄する unset ($bar['quux']); これは hash のときに有効なので、以下は有効。 // $input_h['r'] から "r

    [PHP] array_splice で配列の要素を削除する | 女プログラマってどうよ?
    tmsanrinsha
    tmsanrinsha 2012/04/04
    配列のインデックスを詰める
  • PHPまとめ - 配列操作

    HOME | TOP ■ 配列の作成 ▼ array()を使って配列作成 $array = array(1, 2, 3); 作成した配列は、$array[0]のようにして値を参照できる。 配列の要素は0番目から始まるので$array[0], $array[1], $array[2]と続くことになる。 ▼ 要素ごとに代入して配列作成 $array[0] = 'これは0番目要素'; $array[1] = 'これは1番目要素'; $array[2] = 'これは2番目要素'; ▼ 要素ごとに代入して配列作成(その2) $array[] = 'これは0番目要素'; $array[] = 'これは1番目要素'; $array[] = 'これは2番目要素'; 0番目要素から始まる一般の配列の他に、連想配列がある。 一般の配列は0番目要素から順番につづいていくが、連想配列はキー(文字列)とその値のペア

  • 1