ホームページ >バックエンド開発 >PHPの問題 >PHPで配列内のキー値を削除する方法

PHPで配列内のキー値を削除する方法

PHPz
PHPzオリジナル
2023-04-24 14:49:51621ブラウズ

PHP プログラミングでは、配列内のキー値を削除したい状況によく遭遇します。この記事では、PHP で配列からキー値を削除する方法を検討します。

1. unset() 関数を使用する

unset() 関数は、指定された変数を破棄するために使用される PHP 組み込み関数です。配列内のキー値を削除するために使用できます。

構文:

unset($array[key]);

ここで、$array は操作対象の配列を表し、key は削除するキーの値を表します。 。

サンプルコード:

<?php
// 定义一个数组
$data = array(
    &#39;name&#39; => '张三',
    'age' => 18,
    'gender' => '男'
);

// 删除指定键值
unset($data['gender']);

// 输出数组
print_r($data);
?>

出力結果:

Array
(
    [name] => 张三
    [age] => 18
)

2. array_splice() 関数を使用します

array_splice() 関数は非常に便利ですPHP の関数 配列内の要素を挿入および削除できる関数。この関数を使用して、配列内のキー値を削除できます。

構文:

array_splice($array, $offset, $length);

ここで、$array は操作対象の配列を表し、$offset は値を表します。削除する要素 開始位置が負の数の場合、配列の末尾から計算され、$length は削除する要素の数を表します。

サンプル コード:

<?php
// 定义一个数组
$data = array(
    &#39;name&#39; => '张三',
    'age' => 18,
    'gender' => '男'
);

// 删除指定键值
array_splice($data, array_search('gender', array_keys($data)), 1);

// 输出数组
print_r($data);
?>

出力結果:

Array
(
    [name] => 张三
    [age] => 18
)

3. array_filter() 関数を使用します

array_filter() 関数も便利な関数ですPHP では、配列内の要素をフィルタリングする関数。この関数を使用すると、配列から指定した要素を削除できます。

構文:

array_filter($array, function($v, $k) { return $k != 'key'; } , ARRAY_FILTER_USE_BOTH);

ここでは、 $array は操作対象の配列を表します; function($v, $k) { return $k != 'key'; } は削除の条件を指定するために使用される匿名関数であり、$k != 'key' は削除キー 「key」の要素で、ARRAY_FILTER_USE_BOTHはキー値も同時にフィルタリングすることを意味します。

サンプル コード:

<?php
// 定义一个数组
$data = array(
    &#39;name&#39; => '张三',
    'age' => 18,
    'gender' => '男'
);

// 删除指定键值
$data = array_filter($data, function($k) {
    return $k != 'gender';
}, ARRAY_FILTER_USE_KEY);

// 输出数组
print_r($data);
?>

出力結果:

Array
(
    [name] => 张三
    [age] => 18
)

4. array_diff_key() 関数を使用します

array_diff_key() 関数も便利な関数ですPHP 関数では、キー名に基づいて配列から差分セットを取得できます。この関数を使用すると、配列から指定した要素を削除できます。

構文:

array_diff_key($array, array_flip(array('key')));

ここで、$array は操作対象の配列を表します。array_flip( array( 'key')) は、削除するキー名を後続の差分セット操作の値に変換することを意味します。

サンプル コード:

<?php
// 定义一个数组
$data = array(
    &#39;name&#39; => '张三',
    'age' => 18,
    'gender' => '男'
);

// 删除指定键值
$data = array_diff_key($data, array_flip(array('gender')));

// 输出数组
print_r($data);
?>

出力結果:

Array
(
    [name] => 张三
    [age] => 18
)

概要

PHP では、配列内のキー値を削除することが非常に一般的です。操作する。この記事では、unset() 関数の使用、array_splice() 関数の使用、array_filter() 関数の使用、array_diff_key() 関数の使用の 4 つの方法を紹介します。それぞれの方法にはそれぞれ長所と短所があり、使用シーンに応じて自分に合った方法を選択する必要があります。

以上がPHPで配列内のキー値を削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。