------
Phần 59.
Thao tác trên mảng – phần 1
Đây là clip số 24:
Sử dụng hàm array_keys để lấy toàn bộ giá trị key của một
mảng, và lưu vào một mảng mới.
Sử dụng hàm array_values để lấy toàn bộ giá trị value của
một mảng, và lưu vào một mảng mới.
Ví dụ về hàm array_values,
<?php
$things
= array(
'mon'
=> 'Monday',
'tue'
=> 'Tuesday',
'wed'
=> 'Wednesday',
0 =>' table',
1 => 'book');
$newArray
= array_values($things);
echo
'<pre>';
print_r($newArray);
echo '</pre>';
?>
Kết quả xuất ra màn hình là,
Array
(
[0] => Monday
[1] => Tuesday
[2] => Wednesday
[3] => ‘table’
[4] => ‘book’
)
Để bỏ phần tử cuối ra khỏi mảng, sử dụng hàm
array_pop($array); hàm này trả về phần tử vừa bị loại bỏ, nếu chỉ số mảng thuộc
kiểu số nguyên, nó sẽ tự động được cập nhật lại. Ví dụ về hàm array_pop(),
<?php
$things
= array(
'mon'
=> 'Monday',
'tue'
=> 'Tuesday',
'wed'
=> 'Wednesday',
0 => ‘table’,
1 => ‘book’);
$lastItem
= array_pop($things);
echo
$lastItem.'<br>';
echo
'<pre>';
print_r($things);
echo
'</pre>';
?>
Để bỏ phần tử đầu ra khỏi mảng, sử dụng hàm
array_shift($array); hàm này trả về phần tử vừa bị loại bỏ, nếu chỉ số mảng
thuộc kiểu số nguyên, nó sẽ tự động được cập nhật lại.
Đây là clip số 25:
Để tạo mảng mới bao gồm các phần tử không trùng nhau của một
mảng cho trước, sử dụng hàm array_unique(), ví dụ $newArray =
array_unique($array);
Để xóa bỏ một phần tử ở vị trí bất kì trong mảng, sử dụng
hàm unset, hàm này không cập nhật lại chỉ số mảng. Ví dụ, unset($things[0]);
Hàm unset() sẽ xóa một biến khỏi bộ nhớ.
Để xóa bỏ nhiều phần tử ở các vị trí bất kì trong mảng, cú
pháp là unset($things[0], $things[‘mon’]);
Để xóa toàn bộ mảng, cú pháp là unset($things);
Để thêm một hoặc nhiều phần tử vào cuối mảng, sử dụng hàm
array_push($array, $val1, $val2, $valn), hàm này trả về tổng số phần tử của
mảng mới.
Để thêm một hoặc nhiều phần tử vào đầu mảng, sử dụng hàm
array_unshift($array, $val1, $val2, $valn), hàm này trả về tổng số phần tử của
mảng mới.
Để đảo ngược mảng, sử dụng hàm array_reverse($array), hàm
này trả về mảng đã được đảo ngược.
Để hoán đổi chỉ số và giá trị của mỗi phần tử trong mảng
(hoán đổi $key với $value), sử dụng hàm array_flip($array);
Để tính tổng các phần tử của mảng, sử dụng hàm
array_sum($array);
Để xác định phần tử nhỏ nhất của mảng, sử dụng hàm
min($array);
Để xác định phần tử lớn nhất của mảng, sử dụng hàm
max($array);
Để đếm số lần xuất hiện của các phần tử trong mảng, sử dụng
hàm array_count_values($array); hàm này trả về một mảng mới, với key của mảng
mới là giá trị của các phần tử trong mảng $array và value của mảng mới là số
lần xuất hiện của key trong $array.
Đây là clip số 26:
Để kết hợp nhiều mảng lại với nhau thành một mảng duy nhất,
sử dụng hàm array_merge(), ví dụ: $newArray = array_merge($array1, $array2,
$arrayn);
Để lấy ngẫu nhiên chỉ số (key) của một mảng, sử dụng hàm array_rand();
Ví dụ, để lấy ngẫu nhiên một chỉ số, array_rand($array); để lấy ngẫu nhiên
nhiều chỉ số (ví dụ $number chỉ số): $newArray = array_rand($array, $number);
Để tìm kiếm phần tử trong mảng, sử dụng hàm
array_search($value, $array); nếu tìm thấy, sẽ trả về key của phần tử tìm được.
Để kiểm tra một $key có trong mảng hay không sử dụng hàm
array_key_exist($key, $array); nếu có, trả về giá trị true.
Để kiểm tra một $value có trong mảng hay không sử dụng hàm
in_array($value, $array); nếu có, trả về giá trị true.
Để chuyển các $key trong mảng thành chữ hoa hoặc chữ thường,
sử dụng hàm array_change_key_case($array, case); ví dụ: $newArray =
array_change_key_case($things, CASE_UPPER); hoặc $newArray = array_change_key_case($things,
CASE_LOWER);
Để chuyển mảng thành chuỗi, sử dụng hàm implode($str,
$array); hàm này sẽ chuyển các giá trị của mảng $array thành một chuỗi, mỗi
phần tử sẽ cách nhau bằng dấu $str. Ví dụ, $string = implode(' ', $things);
hiểu nôm na “implode” ép mảng thành chuỗi.
Để chuyển chuỗi thành mảng, sử dụng hàm explode($delimiter,
$array); hàm này sẽ tách chuỗi theo kí tự $delimiter, mỗi chuỗi con sẽ trở
thành một phần tử của mảng. Ví dụ: $array = explode(' ', "Nguyen Van
Teo"); hiểu nôm na “explode” dãn chuỗi thành mảng.
-----------
Cập nhật [9/9/2020]
-----------