Tôi có vấn đề sau đây. Có một số dòng PHP.
Trong var_dump của $testArrayA
, mục "def" với test2
không có ở đó vì nó đã được thêm vào sau khi $testArrayB
được thêm vào $testArrayA
.
Dường như với tôi rằng trong trường hợp của tôi, $testArrayB
không được lưu trữ bởi tham chiếu trong $testArrayA
. Làm thế nào tôi có thể lưu trữ nó cho mỗi tham chiếu, tôi phải thực hiện gì để có mục nhập "def" trong var_dump?
Cảm ơn rất nhiều trước
$testArrayA = [];
$testArrayB = [];
$testArrayB["ghi"] = "test1";
$testArrayA["abc"] = $testArrayB;
$testArrayB["def"] = "test2";
Var_dump:
array[1] {
["abc"]=>
array[1] {
["ghi"]=>
string[5] "test1"
}
}
Roopendra
7.57816 Huy hiệu vàng62 Huy hiệu bạc87 Huy hiệu đồng16 gold badges62 silver badges87 bronze badges
Đã hỏi ngày 23 tháng 1 năm 2013 lúc 4:18Jan 23, 2013 at 4:18
Wolfgang Adamecwolfgang AdamecWolfgang Adamec
8.17412 Huy hiệu vàng48 Huy hiệu bạc74 Huy hiệu đồng12 gold badges48 silver badges74 bronze badges
Đây chỉ đơn giản là vấn đề vượt qua bằng cách tham khảo:
$testArrayA = [];
$testArrayB = [];
$testArrayB["ghi"] = "test1";
$testArrayA["abc"] = &$testArrayB;
$testArrayB["def"] = "test2";
var_dump[$testArrayA];
array [size=1]
'abc' => &
array [size=2]
'ghi' => string 'test1' [length=5]
'def' => string 'test2' [length=5]
Đã trả lời ngày 23 tháng 1 năm 2013 lúc 4:25Jan 23, 2013 at 4:25
Use:
$testArrayA["abc"] = &$testArrayB;
Note:
Khác với con trỏ của C, các tài liệu tham khảo trong PHP là một phương tiện để truy cập cùng một nội dung biến bằng các tên khác nhau.
Đã trả lời ngày 23 tháng 1 năm 2013 lúc 4:25Jan 23, 2013 at 4:25
Khác với con trỏ của C, các tài liệu tham khảo trong PHP là một phương tiện để truy cập cùng một nội dung biến bằng các tên khác nhau.xdazz
xDazzxDazz36 gold badges241 silver badges268 bronze badges
156K36 Huy hiệu vàng241 Huy hiệu bạc268 Huy hiệu Đồng
Trong hướng dẫn sử dụng PHP
Bài tập mảng luôn liên quan đến việc sao chép giá trị. Sử dụng toán tử tham chiếu để sao chép một mảng bằng tham chiếu.Jan 23, 2013 at 4:26
$testArrayA = null;
$testArrayB = null;
$testArrayB["ghi"] = "test1";
$testArrayA["abc"] = $testArrayB;
$testArrayB["def"] = "test2";
print_r[$testArrayA];
echo ["
"];
print_r[$testArrayB];
Array [ [abc] => Array [ [ghi] => test1 ] ]
Array [ [ghi] => test1 [def] => test2 ]
Đã trả lời ngày 23 tháng 1 năm 2013 lúc 4:26
Mục nhập 'def' là một tài liệu tham khảo khác với 'GHI', nhưng tất cả chúng đều thuộc TestArrayb.
$ testArraya ["ABC"] = $ testArrayb;
Mã này chỉ là tham chiếu giá trị, không tham khảo địa chỉ.Jan 23, 2013 at 4:36
Một mảng lưu trữ nhiều giá trị trong một biến duy nhất:
Thí dụ
Thí dụ
$cars = array["Volvo", "BMW", "Toyota"];
echo "I like " . $cars[0] . ", " . $cars[1] . " and " . $cars[2] . ".";
?>
Hãy tự mình thử »
Hoàn thành tham chiếu mảng PHP
Để tham khảo đầy đủ tất cả các chức năng mảng, hãy truy cập tham chiếu mảng PHP hoàn chỉnh của chúng tôi.
Tham chiếu chứa một mô tả ngắn gọn và các ví dụ về việc sử dụng, cho mỗi chức năng!
Bài tập PHP
$cars2 = "BMW";
$cars3 = "Toyota";
Làm thế nào lưu trữ tất cả dữ liệu trong mảng trong PHP?
Giải pháp là tạo ra một mảng!
Một mảng có thể chứa nhiều giá trị dưới một tên duy nhất và bạn có thể truy cập các giá trị bằng cách tham khảo số chỉ mục.
Tạo một mảng trong PHP
Trong PHP, hàm
array[1] {
["abc"]=>
array[1] {
["ghi"]=>
string[5] "test1"
}
}
2 được sử dụng để tạo một mảng:Trong PHP, có ba loại mảng:
- Mảng được lập chỉ mục - Mảng có chỉ mục số - Arrays with a numeric index
- Mảng liên kết - Mảng có các phím có tên - Arrays with named keys
- Mảng đa chiều - Mảng chứa một hoặc nhiều mảng - Arrays containing one or more arrays
Nhận độ dài của một hàm - số lượng [] hàm
Hàm
array[1] {
["abc"]=>
array[1] {
["ghi"]=>
string[5] "test1"
}
}
3 được sử dụng để trả về độ dài [số lượng phần tử] của một mảng:Thí dụ
Thí dụ
$cars = array["Volvo", "BMW", "Toyota"];
echo count[$cars];
?>
Hãy tự mình thử »
Hoàn thành tham chiếu mảng PHP
Để tham khảo đầy đủ tất cả các chức năng mảng, hãy truy cập tham chiếu mảng PHP hoàn chỉnh của chúng tôi.
Tham chiếu chứa một mô tả ngắn gọn và các ví dụ về việc sử dụng, cho mỗi chức năng!