BLOG

2014年4月23日/ array_slice, array_splice, php

[PHP]array_sliceとarray_spliceの違い(その2)

 

前回、両者の違いをイメージだけでお伝えしましたが、今回は具体的な挙動の違いについて説明していきます。

 

例として、下記のように同じ配列に対して同じ引数で両者を実行した結果を見てみます。 

 

結果は以下となります。

 

このようにarray_slice()では取得元の配列に影響を与えないのに対し(コピー)、array_splice()では取得した分だけ元の配列からは要素が無くなります(切り取り)。

 

「チェック対象の配列から要素を一つずつ抜き取って対象のデータが無くなれば終了」という場合、両者を取り違えると重大なエラーとなります。

 

 

いかがでしたでしょうか?

「p」の有る無しで挙動がまるで変わってしまいますので、使用する際には十分に単体試験を行いましょう。 

 

Resent Posts

Category