勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

PHPで配列を値で検索、破棄

   2014/05/22  PHP

PHPの配列で特定の値が入っていれば
それを破棄したいということがあった。

・unset()
http://php.net/manual/ja/function.unset.php
※指定した変数の割当を解除する

・array_search()
http://php.net/manual/ja/function.array-search.php
※指定した値を配列で検索し、見つかった場合に対応するキーを返す

■サンプル
$array = array(0=>'aaa', 1=>'bbb', 2=>'ccc');
unset($array[array_search('bbb', $array)]); //array(2) { [0]=> string(3) "aaa" [2]=> string(3) "ccc" }

これをループでまわしたりすると、配列のキーが
歯抜けになってしまう。

foreachでまわせばいいけど、今回は歯抜けを埋めて
尚且つ0から順番に並べたかった。

・array_values();
http://php.net/manual/ja/function.array-values.php

■サンプル
$array = array(0=>'aaa', 1=>'bbb', 2=>'ccc');
unset($array[array_search('bbb', $array)]); //array(2) { [0]=> string(3) "aaa" [2]=> string(3) "ccc" }
$array = array_values($array); //array(2) { [0]=> string(3) "bbb" [1]=> string(3) "ccc" }

 - PHP

  関連記事

UTF-16にエンコードされている文字列をUTF-8へデコード
UTF-16にエンコードされている文字列をUTF-8へデコード

エンコードされている文字列であまり見かけない感じのものがあった。UTF-8やSh ...

PHP Simple HTML DOM Parserを使用したスクレイピング方法
PHP Simple HTML DOM Parserを使用したスクレイピング方法

PHPでスクレイピングする際、preg_match_all等を用いて必要なデータ ...

PHPでJavaScriptを圧縮するライブラリ「JShrink」の利用方法
PHPでJavaScriptを圧縮するライブラリ「JShrink」の利用方法

サイト内でJavaScriptを用いる場合、外部のライブラリやプラグインだと圧縮 ...

PHPでファイルのダウンロード時に速度制限をかける方法(分割ダウンロード)
PHPでファイルのダウンロード時に速度制限をかける方法(分割ダウンロード)

オンラインストレージサービス等で有料会員じゃない場合、ファイルのダウンロード時に ...

PHPにてHTML / 画像ファイルをPDFファイル化する方法(mPDF)
PHPにてHTML / 画像ファイルをPDFファイル化する方法(mPDF)

PHPにてHTML / 画像ファイルをPDFファイル化したい。検索してみるもサー ...