How to remove element from php array?
Jul 02, 2025 pm 04:41 PMThere are three ways to delete array elements in PHP: use unset() to delete elements of the specified key, use array_diff() to delete specific values, and use array_filter() to filter by condition. 1. unset($array[key]) directly deletes elements of the specified key, but does not reset the index; 2. array_diff($array, [values]) deletes one or more specified values, and returns a new array and needs to be reassigned; 3. array_filter($array, callback) filters retained elements according to callback function conditions, which is suitable for complex logic. Note: If continuous indexes are required after unset(), it should be used with array_values(). Unset() is usually the fastest when processing large arrays.
In PHP, if you want to delete an element from an array, there are actually several ways to do this, depending on whether you want to delete a value or a key, and whether you need to keep the index. Let’s talk about some common and practical methods below.

Use unset()
to delete elements of the specified key
This is the most straightforward way to do that you know the key name or index of the element you want to delete.

$array = [10, 20, 30, 40]; unset($array[2]);
After execution, the element (that is, 30) of index 2 will be deleted. Note: unset()
will not re-index the array. If you want the array to remain continuously indexed, you need to use array_values()
to process it later.
Applicable scenarios:

- Delete elements in a specific location
- Delete a key-value pair in the associative array
Use array_diff()
to delete elements of a specific value
If you only know the value you want to delete, not the key, you can use array_diff()
. This function compares the array and returns the difference set.
$array = [10, 20, 30, 40]; $array = array_diff($array, [30]);
This way, the element with a value of 30 is deleted. However, be aware that array_diff()
returns a new array, and the original array will not be modified, so we usually reassign the result to the original array.
Features:
- Multiple specified values ??can be deleted at once
- No other element's key names will be affected
Use array_filter()
to filter elements by condition
If your deletion logic is more complicated, such as determining which elements should be deleted based on certain rules, array_filter()
will come in handy.
$array = [10, 15, 20, 25]; $array = array_filter($array, function($value) { return $value <= 18; });
This code will retain all elements less than or equal to 18, and the rest will be filtered out. You can customize the judgment logic in the callback function.
Advantages:
- Flexible, suitable for complex filtering conditions
- No specific keys or values ??are logically controllable
Small details reminder
- If you want the array index to be continuous after using
unset()
, remember to add$array = array_values($array);
- When deleting elements, if the array is a reference pass or a nested structure, you need to pay attention to the impact of scope and structure changes.
- Performance differences may appear when processing large arrays, and generally
unset()
is the fastest
Basically these are the methods. Choosing the appropriate method in different scenarios is not complicated but it is easy to ignore some small details, such as index rearrangement or value type matching issues.
The above is the detailed content of How to remove element from php array?. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undress AI Tool
Undress images for free

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

How to convert a php array from two dimensions to a one-dimensional array: 1. Use loop traversal to traverse the two-dimensional array and add each element to the one-dimensional array; 2. Use the "array_merge" function to merge multiple arrays into An array. Pass the two-dimensional array as a parameter to the "array_merge" function to convert it into a one-dimensional array; 3. Using the "array_reduce" function, you can process all the values ??in the array through a callback function and finally return a result.

There are several ways to determine an array in PHP: 1. Use the count() function, which is suitable for all types of arrays. However, it should be noted that if the parameter passed in is not an array, the count() function will return 0; 2. Use the sizeof() function, which is more used to maintain compatibility with other programming languages; 3. Custom functions, By using a loop to traverse the array, each time it is traversed, the counter is incremented by 1, and finally the length of the array is obtained. Custom functions can be modified and expanded according to actual needs, making them more flexible.

PHP array is a very common data structure that is often used during the development process. However, as the amount of data increases, array performance can become an issue. This article will explore some performance optimization techniques for PHP arrays and provide specific code examples. 1. Use appropriate data structures In PHP, in addition to ordinary arrays, there are some other data structures, such as SplFixedArray, SplDoublyLinkedList, etc., which may perform better than ordinary arrays in certain situations.

PHP array key-value pair is a data structure consisting of a key and a corresponding value. The key is the identifier of the array element, and the value is the data associated with the key. It allows us to store and access data using keys as identifiers. By using key-value pairs, we can more easily operate and manage elements in the array, making program development more flexible and efficient.

PHP array averaging functions include: 1. array_sum(), which is used to calculate the sum of all values ??in the array. In order to calculate the average, you can add all the values ??in the array and then divide by the number of array elements; 2 , array_reduce(), used to iterate the array and calculate each value with an initial value; 3. array_mean(), used to return the average of the array, first calculate the sum of the array, and calculate the number of array elements, then The sum is divided by the number of array elements to get the average.

There is no fixed maximum length limit for arrays in PHP. The maximum length of the array is actually limited by the available memory, which is determined by the available memory of the server. If the array needs to store a very large number of elements, it may exceed the limit of the available memory of the server and Causes a runtime error.

PHP's array_merge() function merges two or more arrays into a new array. Create a new array. Iterate over the arrays to be merged. Add each element to a new array, overwriting existing elements if the keys are the same. Returns a new array containing all merged elements.

No, shuffling a PHP array order will not affect element references or addresses, since the elements and their keys remain unchanged. After shuffling, the contents of the array (elements and keys) remain unchanged, only the order of the keys changes.
