配列操作の比較表

配列操作の比較表: Ruby, Python, JavaScript, Perl, C++(いやなブログ)
面白そうでしたので、PHP で書いてみました。
既に PHP で同じように作成した方がおられましたが、あまり大きな違いはないと思います。せっかくなので載せておきます。

RubyPHP
a = [1, 2, 3]
$a = array( 1, 2, 3 );
a.length
count( $a );
a.empty?
empty( $a );
a.push(x)
$a[] = $x / array_push( $x );
a.unshift(x)
array_unshift( $a, $x );
a.pop
array_pop( $a );
a.shift
array_shift( $a );
a.concat(b)
$a = array_merge( $a, $b );
a.clear
$a = array();
a.insert(i, x)
array_splice( $a, $i, 0, $x );
a.delete(x)
array_filter( $a, create_function( '$b', 'return $b !== ' . $x . ';' ) );
a.delete_at(i)
unset( $a[$i] ); $a = array_value( $a ); ((array_value()で配列の添え字をリセット))
a.nitems {|e| e == x }
$a0 = array_count_values( $a ); $a0[$x];
a.include?(x)
in_array( $x, $a );
a.index(x)
array_search( $x, $a );
a.first
reset( $a );
a.last / a[-1]
end( $a );
a[i,l] / a.slice(i, l)
array_slice( $a, $i, $l );
a[i..j]  / a.slice(i..j)
array_slice( $a, $i, $j - $i + 1 );
a[i...j] / a.slice(i...j)
array_slice( $a, $i, $j - $i );
a.sort
sort( $a0 = $a );
a.sort!
sort( $a );
a.reverse
array_reverse( $a );
a.reverse!
$a = array_reverse( $a );
a.uniq!
$a = array_unique( $a );
a.join(d)
implode( $d, $a );
a.each {|x| ... }
foreach ( $a as $x ) { ... }
2005.09.02

  • a.insert の方法では array_splice() を一回使用するだけでできる方法があったので変更。
  • a.index では array_search() の使い方を間違っていたので修正。