Có lẽ tôi chỉ đơn giản là gặp khó khăn khi hiểu cách các mảng xử lý PHP.
Tôi đang cố gắng in ra một mảng bằng cách sử dụng vòng lặp foreach. Tất cả những gì tôi có thể thoát ra khỏi nó là từ "mảng".
Điều này in ra điều này:
Array
Tôi đang gặp khó khăn khi hiểu tại sao điều này sẽ là trường hợp. Nếu tôi xác định một mảng lên phía trước như trên, nó sẽ in "mảng". Có vẻ như tôi phải định nghĩa thủ công mọi thứ ... điều đó có nghĩa là tôi phải làm điều gì đó sai.
Những công việc này:
Tại sao foreach không hoạt động?
Đây là một liên kết để xem nó trong hành động >> //phpclass.hylianux.com/test.php
Đã hỏi ngày 21 tháng 11 năm 2012 lúc 1:45Nov 21, 2012 at 1:45
Bạn đã không tuyên bố mảng đúng cách. Bạn phải loại bỏ các dấu ngoặc vuông:
Array
0.You have to remove the square brackets:
Array
0.
Đã trả lời ngày 21 tháng 11 năm 2012 lúc 1:47Nov 21, 2012 at 1:47
LiorliorLior
5.6939 Huy hiệu vàng32 Huy hiệu bạc44 Huy hiệu đồng9 gold badges32 silver badges44 bronze badges
2
Try:
Or:
Đã trả lời ngày 21 tháng 11 năm 2012 lúc 1:53Nov 21, 2012 at 1:53
TwistytwistyTwisty
29.2k2 Huy hiệu vàng26 Huy hiệu bạc44 Huy hiệu đồng2 gold badges26 silver badges44 bronze badges
Trên thực tế, bạn đang thêm một mảng vào một mảng khác.
$someArray[]=array['1','2','3','4','5','6','7'];
Cách đúng sẽ là
$someArray=array['1','2','3','4','5','6','7'];
Đã trả lời ngày 21 tháng 11 năm 2012 lúc 2:20Nov 21, 2012 at 2:20
FrankfrankFrank
Phù hiệu bằng đồng 9622 bronze badges
Php foreach vòng lặpforeach Loop
Vòng lặp
Array
1 - Vòng lặp qua một khối mã cho mỗi phần tử trong một mảng.Vòng lặp foreach php
Vòng lặp
Array
1 chỉ hoạt động trên các mảng và được sử dụng để lặp qua từng cặp khóa/giá trị trong một mảng.Cú pháp
foreach [$ mảng là $ value] {& nbsp; & nbsp; mã sẽ được thực thi; }
code to be executed;
}
Đối với mỗi lần lặp vòng lặp, giá trị của phần tử mảng hiện tại được gán cho $ giá trị và con trỏ mảng được di chuyển bởi một, cho đến khi nó đạt đến phần tử mảng cuối cùng.
Ví dụ
Ví dụ sau đây sẽ xuất ra các giá trị của mảng đã cho [$ colors]:
Thí dụ
echo "$value
";
}
?>
Hãy tự mình thử »
Ví dụ sau đây sẽ xuất ra cả các khóa và giá trị của mảng đã cho [$ Age]:
Thí dụ
echo "$x = $val
";
}
?>
Hãy tự mình thử »
Ví dụ sau đây sẽ xuất ra cả các khóa và giá trị của mảng đã cho [$ Age]:
[Php 4, Php 5, Php 7, Php 8]
Cấu trúc
Array
1 cung cấp một cách dễ dàng để lặp lại các mảng. Array
1 chỉ hoạt động trên các mảng và đối tượng và sẽ đưa ra lỗi khi bạn cố gắng sử dụng nó trên một biến với một loại dữ liệu khác hoặc một biến không chính xác. Có hai cú pháp:foreach [iterable_expression as $value] statement foreach [iterable_expression as $key => $value] statement
Hình thức đầu tiên đi qua các điều đó được đưa ra bởi
Array
5. Trên mỗi lần lặp, giá trị của phần tử hiện tại được gán cho Array
6.Biểu mẫu thứ hai sẽ chỉ định khóa của phần tử hiện tại cho biến
Array
7 trên mỗi lần lặp.Lưu ý rằng
Array
1 không sửa đổi con trỏ mảng bên trong, được sử dụng bởi các hàm như dòng [] và key [].current[] and key[]. Có thể tùy chỉnh lặp đối tượng.
Để có thể sửa đổi trực tiếp các phần tử mảng trong vòng lặp đi trước
Array
6 với &. Trong trường hợp đó, giá trị sẽ được gán bằng tham chiếu.
0Cảnh báo
Tham chiếu của
Array
6 và phần tử mảng cuối cùng vẫn còn ngay cả sau vòng lặp Array
1. Nó được khuyến nghị phá hủy nó bằng cách unset []. Nếu không, bạn sẽ trải nghiệm hành vi sau:unset[]. Otherwise you will experience the following behavior:
3
4
5Có thể lặp lại giá trị của mảng không đổi bằng cách tham khảo:
6Ghi chú::
1 không hỗ trợ khả năng triệt tiêu các thông báo lỗi bằng cách sử dụngArray
8.
Một số ví dụ khác để chứng minh việc sử dụng:
9
0
1Giải nén các mảng lồng nhau có danh sách []
[Php 5> = 5.5.0, Php 7, Php 8]
Có thể lặp lại một mảng mảng và giải nén mảng lồng vào các biến vòng lặp bằng cách cung cấp một danh sách [] làm giá trị.list[] as the value.
Ví dụ:
2
0
4Ví dụ trên sẽ xuất ra:
Bạn có thể cung cấp ít phần tử hơn trong danh sách [] so với trong mảng lồng nhau, trong trường hợp đó, các giá trị mảng còn sót lại sẽ bị bỏ qua:list[] than there are in the nested array, in which case the leftover array values will be ignored:
2
0
7Ví dụ trên sẽ xuất ra:
Bạn có thể cung cấp ít phần tử hơn trong danh sách [] so với trong mảng lồng nhau, trong trường hợp đó, các giá trị mảng còn sót lại sẽ bị bỏ qua:list[]:
2
0
0Ví dụ trên sẽ xuất ra:
Notice: Undefined offset: 2 in example.php on line 7 A: 1; B: 2; C: Notice: Undefined offset: 2 in example.php on line 7 A: 3; B: 4; C:
Bạn có thể cung cấp ít phần tử hơn trong danh sách [] so với trong mảng lồng nhau, trong trường hợp đó, các giá trị mảng còn sót lại sẽ bị bỏ qua: ¶
Một thông báo sẽ được tạo nếu không có đủ các phần tử mảng để điền vào danh sách []:
1
2
3
4
5Sanusi Hassan ¶ ¶
2 tháng trước đây
6
7
8
9Okafor Chiagozie ¶ ¶
2 tháng trước đây
0
1
9