Help us understand the problem. What is going on with this article?

PHPで使える!便利な関数たち!

More than 1 year has passed since last update.

昨今、コードを書くときに避けられない

ライブラリー(関数)の使用ですが、

どのライブラリーを使えば良いのかなかなか

決められないと思います。

そこで、今回はPHPで役に立つライブラリーをご紹介したいと思います!

memory_get_peak_usage

PHP によって割り当てられたメモリの最大値を返します。

echo memory_get_peak_usage();
echo memory_get_peak_usage(true);
225472
262144

このように、プロセス中のメモリのピーク値と
trueを指定することでそのときに割り当てられたメモリの量を
バイト単位で表示します。

ポインタ関連の関数

key(), next(), prev()

$cities = array('Tokyo' => 'Tokyo', 'Osaka' => 'Osaka', 'Aichi' => 'Nagoya');

echo key($cities).PHP_EOL;

next($cities);

echo key($cities).PHP_EOL;

prev($cities);

echo key($cities).PHP_EOL;
Tokyo
Osaka
Tokyo

key()で現在ポインターが指している配列のキーを取得します。
next()で現在ポインターが指しているキーを一つ進めます。
prev()で現在ポインターが指しているキーを一つ戻します。

array_unique()

$data = [100, 100, 200, 300, 400];

print_r(array_unique($data));
Array
(
    [0] => 100
    [2] => 200
    [3] => 300
    [4] => 400
)

array_unique()で配列から重複した値を削除することができます。

array_filter()

function Filter($var)
{
    return $var > 200;
}

$value_array = [100, 200, 300, 400, 500];
$value = array_filter($value_array, 'Filter');
print_r($value);
Array
(
    [2] => 300
    [3] => 400
    [4] => 500
)

array_filter()で特定の配列をフィルタリングすることができます。
フィルタリングの内容は第二引数に定義した関数の元、行われます。

array_map()

function Add($n)
{
    return $n - 100;
}

$value_array = [100, 200, 300, 400, 500];

$value = array_map('Add', $value_array);

print_r($value);
Array
(
    [0] => 0
    [1] => 100
    [2] => 200
    [3] => 300
    [4] => 400
)

array_mapで全ての配列要素に同一の処理を行うことができます。
第一引数に処理を行う関数を指定し、第二引数に処理をしたい配列を指定します。

array_push()

$value_array = [100, 200, 300, 400, 500];

array_push($value_array, 600, 700);

print_r($value_array);
Array
(
    [0] => 100
    [1] => 200
    [2] => 300
    [3] => 400
    [4] => 500
    [5] => 600
    [6] => 700
)

array_pushで配列の最後の要素に値を追加することができます。
第一引数に配列を指定し、第二引数に追加したい値を指定します。

unset()

$value_array = [100, 200, 300, 400, 500];

unset($value_array[1]);

print_r($value_array);
Array
(
    [0] => 100
    [2] => 300
    [3] => 400
    [4] => 500
)

unsetは指定した配列の要素を削除できます。

まとめ

PHPに限らず昨今のプログラミング言語では、
ライブラリー(関数)を駆使することがどのプログラマーにも
求められます。コードの可読性を高める為にも便利な関数は
どしどし使っていきたいですね!

参考文献

PHPerなら知っておいて損はない10の関数
【初心者必見!】PHPのよく使う配列操作の関数まとめ(array)

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away