Home > Backend Development > PHP Problem > How to remove decimal point from array in php

How to remove decimal point from array in php

PHPz
Release: 2023-04-26 09:33:33
Original
933 people have browsed it

In PHP programming, when using arrays, it is often necessary to process numeric data, which often involves the operation of retaining and removing decimal points. Removing the decimal point of an array means clearing the decimal part of each element in the array and leaving only the integer part. This can be achieved in a variety of ways. This article will focus on how to remove the decimal point from an array and discuss several different implementation methods to help readers better master this operation technique.

Method 1: Forced type conversion

PHP provides a method of forced type conversion, which can convert a numeric type into an integer type (int), thus removing the decimal places. For each element in the array, you can use a cast to convert it to an integer. The specific implementation steps are as follows:

$nums = [3.14, 2.718, 1.618];  // 定义一个包含小数的数组

foreach ($nums as &$num) {     // 遍历数组,并使用引用传递元素
    $num = (int) $num;         // 强制类型转换,将小数位清除
}

print_r($nums);                // 输出处理后的数组
Copy after login

In this sample code, an array containing decimals $nums is defined, and then a foreach loop is used to traverse each element in the array element. In the loop body, use forced type conversion to remove the decimal part, and then modify the value of the element in the original array through reference passing. Finally, use the print_r function to output the modified array.

It should be noted that forced type conversion can only convert the original numerical type into an integer type. Therefore, if some elements in the original array are not of numerical type, a type conversion error will occur. In addition, forced type conversion will round off the decimal part. If you need to round the original number, you need to use other methods.

Method 2: Use built-in functions

PHP provides a number of commonly used built-in functions that can be used to process numeric data. Among them, the round function and the floor function can be used to remove the decimal part. The specific method is as follows:

$nums = [3.14, 2.718, 1.618]; // 定义一个包含小数的数组

foreach ($nums as &$num) {    // 遍历数组,并使用引用传递元素
    $num = round($num);       // 使用round函数去除小数部分,四舍五入
    // $num = floor($num);    // 使用floor函数去除小数部分,向下取整
}

print_r($nums);               // 输出处理后的数组
Copy after login

In this sample code, similar to method one, # is also used. ##foreachLoop through each element in the array. The difference is that the decimal part of the element is removed using the round function or the floor function, where the round function rounds the value and floor The function rounds the value down.

It should be noted that this method only applies to numeric type elements. If there are elements of other types in the original array, type conversion errors will also occur. In addition, this method also requires selecting the

round function or the floor function to determine how to remove the decimal part, which is not flexible enough to meet all needs.

Method 3: Use regular expressions

Using regular expressions can process elements in the array more flexibly. You can remove the decimal point as needed, or retain as many decimal places as needed. The specific implementation method is as follows:

$nums = [3.14, 2.718, 1.618];          // 定义一个包含小数的数组
$newNums = preg_replace('/\.\d+/', '', $nums); // 使用正则表达式去除小数部分

print_r($newNums);                     // 输出处理后的数组
Copy after login
In this sample code, by calling the PHP built-in function

preg_replace, a regular expression is used to remove the decimal part of each element in the array. Among them, \.\d in the regular expression means matching the decimal point and a string of numbers after it (which may contain multiple numbers). Using an empty string to replace the match can remove the decimal part. the goal of.

It should be noted that although using regular expressions is more flexible than the first two methods, it may appear complicated for novices. Moreover, when processing large amounts of data, the performance may not be as good as the previous two methods.

To sum up, PHP can use many different implementation methods to remove the decimal point of an array, and each method has its advantages and disadvantages. In practical applications, the appropriate method needs to be selected based on specific needs.

The above is the detailed content of How to remove decimal point from array in php. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template