¥È¥Ã¥× «Á°¤ÎÆüµ­(2005-08-27) ºÇ¿· ¼¡¤ÎÆüµ­(2005-08-31)» ÊÔ½¸

2005-08-29 [ĹǯÆüµ­]

_ Ruby ¤È PHP ¤ÎÇÛÎóÁàºîÈæ³Ó

ÇÛÎóÁàºî¤ÎÈæ³Óɽ: Ruby, Python, JavaScript, Perl, C++ ¡Ê¤¤¤ä¤Ê¥Ö¥í¥°¡Ë

ÇÛÎóÁàºî¤ÎÈæ³Óɽ¤Ï¼«Ê¬¤Î¤¿¤á¤Ë¤âºî¤Ã¤¿¤³¤È¤Ï¤Ê¤«¤Ã¤¿¤Î¤Ç¡¢Ê̤˺®Íð¤Ï¤·¤Ê¤¤¤±¤É¡¢Ruby ¤Îʬ¤ò»Ä¤·¤Æ PHP ¤È¤ÎÈæ³Óɽ¤òµ¯¤³¤·¤Æ¤ß¤¿¡£µ¤¤Å¤¤¤Æ¤Ê¤¤¤À¤±¤Ç¤â¤Ã¤È¸­¤¯½ñ¤¯ÊýË¡¤¬¤¢¤ê¤½¤¦¤Êµ¤¤â¤¹¤ë¤±¤É¡¢¤È¤ê¤¢¤¨¤º½Ð¤·¤Á¤ã¤¨¡£¤¢¡¢¥Ð¡¼¥¸¥ç¥ó½ñ¤¤¤Æ¤Ê¤«¤Ã¤¿¡£PHP4 ¤Ç¤¹¡£5 ¤ÏÃΤé¤Ê¤¤¡£¡Ê¥Þ¥Ë¥å¥¢¥ë¤â¸«¤Æ¤Ê¤¤¡£¡Ë

Ruby PHP
a = [1, 2, 3]$a = array(1, 2, 3)
a.lengthsizeof( $a ) or count( $a )
a.empty?empty( $a )
a.push(x)array_push( $a, $x ) or $a[] = $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.include?(x)in_array( $x, $a )
a.insert(i, x)array_splice( $a, $i, 0, $x )
a.delete(x)
a.delete_at(i)unset($a[$i])*1
a.nitems{}$b = array_count_values( $a ); $b[$x]*2
a.index(x)array_search( $a, $x )
a.first$a[0]
a.lastend( $a )*3
a[i..j] or a.slice(i..j)array_slice( $a, offset[, length] )*4
a[i...j] or a.slice(i...j)
a.sort
a.sort!sort( $a )
a.reversearray_reverse( $a )
a.reverse!$a = array_reverse( $a )
a.uniq!$a = array_unique( $a )
a.join(d)join( d, $a ) or implode( d, $a )
a.eachforeach( $a as $key => $val )

insert ¤Ï ÇÛÎó¤Îinsert ¤Î¾ðÊó¤ò¤¤¤¿¤À¤­¤Þ¤·¤¿¡£

delete ¤Ï¤Ê¤ó¤«´Ø¿ô½ñ¤«¤Ê¤¤¤È̵Íý¤Ã¤Ý¤¤¡£

[2005-08-30 Äɵ­]array_push() ¤È [] ¤Ë¤Ä¤¤¤Æ¥Ä¥Ã¥³¥ß¤ò¤¤¤¿¤À¤¤¤¿¤Î¤ÇÄ´¤Ù¤Æ¤ß¤¿¡£

<?php
define( 'ACCURACY', 5 );
define( 'TIMES', 5 );
define( 'WAIT', 10000 );

function main() {
  print "[]<br>\n";
  for ( $i = 1; $i <= TIMES; $i++ ) {
    $arr = array();
    $start = get_microtime();
    for ( $j = 1; $j <= WAIT; $j++ ) {
    $arr[] = $j;
    }
    $end = get_microtime();
    putime( bcsub($end, $start, ACCURACY) );
  }

  print "array_push()<br>\n";
  for ( $i = 1; $i <= TIMES; $i++ ) {
    $arr = array();
    $start = get_microtime();
    for ( $j = 1; $j <= WAIT; $j++ ) {
      array_push( $arr, $j );
  }
    $end = get_microtime();
    putime( bcsub($end, $start, ACCURACY) );
  }
}

function get_microtime() {
  list( $msec, $sec ) = split( " ", microtime() );
  return bcadd( $sec, $msec, ACCURACY );
}

function putime( $sec ) {
  $accuracy = (int)ACCURACY - 1;
  $str = "%.".$accuracy."f sec<br>\n";
  printf( $str, $sec );
}

main();
?>

·ë²Ì¤Ï¤³¤ó¤Ê´¶¤¸¡£¥Þ¥·¥ó¥¹¥Ú¥Ã¥¯¤Ï Pen!!! 800 MHz + 256MB¡£

[]
0.0421 sec
0.0415 sec
0.0419 sec
0.0415 sec
0.0416 sec
array_push()
0.0559 sec
0.0563 sec
0.0561 sec
0.0560 sec
0.0557 sec

[] ¤ÎÊý¤¬Â®¤¤¤Ç¤¹¤·¥¿¥¤¥×Î̤⾯¤Ê¤¤¤±¤É¡¢¸Ä¿ÍŪ¤Ë¤Ï PHP °Ê³°¤Ë¤â¿¨¤Ã¤Æ¤¤¤ë¤È¡Ö¤Ê¤ó¤«µ¤»ý¤Á°­¤¤¡×´¶¤¸¡£¤¢¤È¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹½ÅÍפȤ¤¤¦Êý¤Ï

¥¤¥Æ¥ì¡¼¥·¥ç¥ó¤Î¥Ù¥ó¥Á¥Þ¡¼¥¯ ¡ÊHaruki¤«¤é¤ÎÊ¿ÌÌÇÈ¡Ë

¤Ê¤É¤â»²¹Í¤Ë¤µ¤ì¤ë¤È¤è¤¤¤«¤È¡£

[2005-11-10 Äɵ­]

ËÜÅö¤Ëº£¤µ¤é¤ó¤À¤±¤É¡¢¥Þ¥Ë¥å¥¢¥ë¤òÆÉ¤ó¤À¤é PHP ¤ÎÇÛÎó¤Ï¼ÂºÝ¤Ë¤Ï½çÈ֤Ť±¤é¤ì¤¿¥Þ¥Ã¥×¤Ç¡¢ÇÛÎó¤Ë¤â¥Ï¥Ã¥·¥å¤Ë¤â¥­¥å¡¼¤Ë¤â±þÍѤ¬²Äǽ¤Ã¤Æ½ñ¤¤¤Æ¤¢¤Ã¤¿¡£

¤½¤¦¤«¡¢PHP ¤ÎÇÛÎ󡢥ϥå·¥å¼þ¤ê¤Îư¤­¤¬¤É¤¦¤Ë¤âǼÆÀ¤¤¤«¤Ê¤«¤Ã¤¿¤Î¤Ï¡¢¤½¤â¤½¤â¤¬¤¤¤ï¤æ¤ë¤Á¤ã¤ó¤È¤·¤¿ÇÛÎó¤ä¥Ï¥Ã¥·¥å¤È¤·¤ÆÀ߷פµ¤ì¤¿¤â¤ó¤¸¤ã¤Ê¤¤¤«¤é¤«¡£¥ë¡¼¥×¤¬ÃÙ¤«¤Ã¤¿¤Î¤â¥Ï¥Ã¥·¥å¤Î¤¯¤»¤Ë¤Ê¤¼¤«½çÈÖ¤¬°Ý»ý¤Ç¤­¤Á¤ã¤Ã¤¿¤ê¤¹¤ë¤Î¤â¡¢¤½¤¦¤¤¤¦¤ï¤±¤«

*1 $i ¤Î¥­¡¼¤ÈÂбþ¤¹¤ëÃͤ¬¤Ê¤¯¤Ê¤ë¤À¤±¤Ç¡¢µÍ¤Þ¤é¤Ê¤¤¡£

*2 $x ¤Ïʸ»úÎó¤ÇÍ¿¤¨¤ë¡£

*3 ÆâÉô¥Ý¥¤¥ó¥¿¤¬ËöÈø¤Ë¥»¥Ã¥È¤µ¤ì¤ë

*4 Èϰϼ°¤È¤¤¤¦¤â¤Î¤Ï¤Ê¤¤¤ó¤À¤±¤É range() ¤ò»È¤¨¤Ð¤¦¤Þ¤¯¤ä¤ì¤½¤¦¡£

ËÜÆü¤Î¥Ä¥Ã¥³¥ß(Á´1·ï) [¥Ä¥Ã¥³¥ß¤òÆþ¤ì¤ë]
_ ¦Ó (2005-08-29 23:45)

¤Ï¤¸¤á¤Þ¤·¤Æ¡£<br>PHP¤ÏÁǿͤǤ¹¤¬(PukiWiki¤Î¥×¥é¥°¥¤¥ó¤òľ¤·¤¿¤³¤È¤¬¤¢¤ëÄøÅÙ)¡¢<br>¤°¤°¤Ã¤Æ¸«ÉÕ¤±¤¿PHP¤Î¥Þ¥Ë¥å¥¢¥ë¤Ë¤è¤ë¤È¡¢<br>http://php.s3.to/man/function.array-push.html<br>> Ãí°Õ: ¤â¤·ÇÛÎó¤Ë 1 ¤Ä¤ÎÍ×ÁǤò²Ã¤¨¤ë¤¿¤á¤Ë array_push()<br>> ¤ò»ÈÍѤ¹¤ë¤Ê¤é¡¢ ´Ø¿ô¤ò¸Æ¤Ö¥ª¡¼¥Ð¡¼¥Ø¥Ã¥É¤¬¤Ê¤¤¤Î¤Ç¡¢<br>> $array[] = ¤ò»ÈÍѤ¹¤ë¤Û¤¦¤¬¤¤¤¤¤Ç¤¹¡£<br>¤È¤¢¤ê¤Þ¤¹¡¢¤¬¡¢¤É¤¦¤Ê¤ó¤Ç¤·¤ç¤¦¤«¡©<br>Ï®¤Ã¤¿PukiWiki¤Î¥×¥é¥°¥¤¥ó¤Ç¤Ï³ä¤È»È¤ï¤ì¤Æ¤¿µ­²±¤¬¤¢¤ê¤Þ¤¹¡£

ËÜÆü¤ÎTrackBacks(Á´2·ï) []
_ HotPHPPER News:PHP¤È¾¸À¸ì¤ÎÇÛÎóÁàºîÊýË¡¤ÎÈæ³Ó (2005-08-31 13:24)

åà¸å¡âåã¼ã¡âåâ´å¡ìåá¡ãåá¨ã¡äåá¬å¥öåã­ã¤²åá¨ãåá¨å£äåáªã¥öåã­ã¤²åàºå¢ªåá¨å¡æåãÌ妯åâ°ã¢­åá¦ã¡äåá¾å¢¦åá¶å¢°ðª êåá®é©íéèÎèÅíè¿Øå¢°ì±Èê表ã¡ìëî²èåáÊå£ìåá¦ã¡äåá¾ã¡ùåà
åá¾ã¢¡þ¾¸å¥öåã­ã¤²åá®æÌ»åá§ã¢±åàfoo[]åàºå¢ªåá¨å¡æð£¨èåá¨árray_shift®ã¥ùåã³ã

_ bobchin¤ÎÆüµ­:[PHP]ÇÛÎó¤Îinsert (2005-08-31 22:08)

¥Ï¥Ã¥·¥å¤Ï¤Ç¤­¤Þ¤»¤ó¤¬ÇÛÎó¤Ç¤¢¤ì¤Ð array_splice($a, $i, 0, $x) ¤Ç¤¤¤±¤Ê¤¤¤Ç¤¹¤«¤Í¡© delete¤â¤¤¤±¤ë¤«¤Ê¡© array_splice($a, array_search($a, $x), 1)