Hướng dẫn php loop through array of arrays - php lặp qua mảng của mảng

Tôi hy vọng ai đó có thể giúp đỡ.

Tôi chắc rằng nó chỉ là một điều đơn giản mà tôi không thể làm việc vì một số lý do.

Về cơ bản, tôi có một lớp xử lý tất cả các chức năng cơ sở dữ liệu của mình [kết nối, chọn, chèn, cập nhật].

Trong chức năng chọn, tôi đang trả về một mảng.

public function getAll[$table, $cols, $where, $limit, $order] {
    // Set the query variables
    if[$cols == ''] {
        $cols = '*';
    }
    if[$where!=''] {
        $where = ' WHERE '.$where;
    }
    if[$limit!= ''] {
        $limit = ' LIMIT '.$limit;
    }
    if[$order!=''] {
        $order = ' ORDER BY '.$order;
    }

    // Make the query string 
    $sql = 'SELECT '.$cols.' FROM '.$table.$where.$order.$limit;

    //echo $sql;

    // Set the query
    $news_qry = mysql_query[$sql];

    // Set the array 
    $rows = array[];

    // Run a loop through the results
    while[$item = mysql_fetch_object[$news_qry]] 
    {
        // Add each row to an array.
        $rows[] = $item;
    }
    return $rows;       
}   

Chức năng này đang hoạt động như tôi có thể in một mảng. Xem bên dưới:

Array [ [Gallery_id] => 1 [Gallery_Name] => Test [Gallery_FolderName] => Test Folder ]

Nhưng khi tôi đi sử dụng đối tượng -

$arr_GalleryInfo = $dataObj->getAll['tbl_Gallery', '', '', '', ''];

Trong vòng mỗi vòng [xem bên dưới] tôi chỉ nhận được chữ cái đầu tiên của kết quả từ cơ sở dữ liệu.

 
            
                
                               
                

                
                       
                

                
                        
                
            
    

Bất kỳ sự trợ giúp nào đều sẽ là tuyệt vời.

Thanks.

Vòng lặp foreach trong PHP là gì?

Vòng lặp foreach được sử dụng để đi qua các phần tử mảng. Nó chỉ hoạt động trên mảng và đối tượng. Nó sẽ đưa ra một lỗi nếu bạn cố gắng sử dụng nó với các biến của kiểu dữ liệu khác nhau. Các vòng lặp foreach hoạt động trên cơ sở các yếu tố thay vì chỉ mục. Nó cung cấp một cách dễ nhất để lặp lại các yếu tố của một mảng.

foreach [iterable_expression as $value]
    statement
foreach [iterable_expression as $key => $value]
    statement

[Php 4, Php 5, Php 7, Php 8]

Cấu trúc foreach cung cấp một cách dễ dàng để lặp lại các mảng. foreach 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:

Hình thức đầu tiên đi qua các điều đó được đưa ra bởi iterable_expression. Trên mỗi lần lặp, giá trị của phần tử hiện tại được gán cho $value.current[] and key[].

Biểu mẫu thứ hai sẽ chỉ định khóa của phần tử hiện tại cho biến

Array [ [Gallery_id] => 1 [Gallery_Name] => Test [Gallery_FolderName] => Test Folder ]
0 trên mỗi lần lặp.

Lưu ý rằng foreach 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 [].

Array [ [Gallery_id] => 1 [Gallery_Name] => Test [Gallery_FolderName] => Test Folder ]
3

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 $value với &. Trong trường hợp đó, giá trị sẽ được gán bằng tham chiếu.unset[]. Otherwise you will experience the following behavior:

Array [ [Gallery_id] => 1 [Gallery_Name] => Test [Gallery_FolderName] => Test Folder ]
6

Array [ [Gallery_id] => 1 [Gallery_Name] => Test [Gallery_FolderName] => Test Folder ]
7

Array [ [Gallery_id] => 1 [Gallery_Name] => Test [Gallery_FolderName] => Test Folder ]
8

Cảnh báo

Array [ [Gallery_id] => 1 [Gallery_Name] => Test [Gallery_FolderName] => Test Folder ]
9

Tham chiếu của $value và phần tử mảng cuối cùng vẫn còn ngay cả sau vòng lặp foreach. 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::

Có thể lặp lại giá trị của mảng không đổi bằng cách tham khảo:

Ghi chú:

$arr_GalleryInfo = $dataObj->getAll['tbl_Gallery', '', '', '', ''];
2

$arr_GalleryInfo = $dataObj->getAll['tbl_Gallery', '', '', '', ''];
3

$arr_GalleryInfo = $dataObj->getAll['tbl_Gallery', '', '', '', ''];
4

foreach 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ụng
$arr_GalleryInfo = $dataObj->getAll['tbl_Gallery', '', '', '', ''];
1.

Một số ví dụ khác để chứng minh việc sử dụng:

Giải nén các mảng lồng nhau có danh sách []list[] as the value.

[Php 5> = 5.5.0, Php 7, Php 8]

$arr_GalleryInfo = $dataObj->getAll['tbl_Gallery', '', '', '', ''];
5

$arr_GalleryInfo = $dataObj->getAll['tbl_Gallery', '', '', '', ''];
3

$arr_GalleryInfo = $dataObj->getAll['tbl_Gallery', '', '', '', ''];
7

Ví dụ trên sẽ xuất ra:

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[] than there are in the nested array, in which case the leftover array values will be ignored:

$arr_GalleryInfo = $dataObj->getAll['tbl_Gallery', '', '', '', ''];
5

$arr_GalleryInfo = $dataObj->getAll['tbl_Gallery', '', '', '', ''];
3

 
            
                
                               
                

                
                       
                

                
                        
                
            
    
0

Ví dụ trên sẽ xuất ra:

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 []:list[]:

$arr_GalleryInfo = $dataObj->getAll['tbl_Gallery', '', '', '', ''];
5

$arr_GalleryInfo = $dataObj->getAll['tbl_Gallery', '', '', '', ''];
3

 
            
                
                               
                

                
                       
                

                
                        
                
            
    
3

Ví 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: 

Sanusi Hassan ¶

1 tháng trước

 
            
                
                               
                

                
                       
                

                
                        
                
            
    
4

 
            
                
                               
                

                
                       
                

                
                        
                
            
    
5

 
            
                
                               
                

                
                       
                

                
                        
                
            
    
6

 
            
                
                               
                

                
                       
                

                
                        
                
            
    
7

 
            
                
                               
                

                
                       
                

                
                        
                
            
    
8

Okafor Chiagozie ¶

1 tháng trước

 
            
                
                               
                

                
                       
                

                
                        
                
            
    
9

foreach [iterable_expression as $value]
    statement
foreach [iterable_expression as $key => $value]
    statement
0

foreach [iterable_expression as $value]
    statement
foreach [iterable_expression as $key => $value]
    statement
1

foreach [iterable_expression as $value]
    statement
foreach [iterable_expression as $key => $value]
    statement
2

Okafor Chiagozie ¶

1 tháng trước

foreach [iterable_expression as $value]
    statement
foreach [iterable_expression as $key => $value]
    statement
3

foreach [iterable_expression as $value]
    statement
foreach [iterable_expression as $key => $value]
    statement
4

foreach [iterable_expression as $value]
    statement
foreach [iterable_expression as $key => $value]
    statement
2

Làm thế nào tôi có thể lặp lại thông qua một mảng trong PHP?

6 cách để lặp qua một mảng trong PHP..
while [biểu thức] {// mã sẽ được thực thi}.
làm {// mã sẽ được thực thi} while [biểu thức] ;.
for [expr1; expr2; expr3] {// mã sẽ được thực thi}.
Array_Walk [Array | Object & $ Array, Callable $ Callback, hỗn hợp $ arg = null]: bool ..

Mảng đi ngang trong PHP là gì?

Chẳng hạn, nhiệm vụ phổ biến nhất với các mảng là làm một cái gì đó với mọi yếu tố, ví dụ, gửi thư đến từng phần tử của một mảng địa chỉ, cập nhật từng tệp trong một mảng tên tệp hoặc thêm mỗi phần tử của một mảng giá.—for instance, sending mail to each element of an array of addresses, updating each file in an array of filenames, or adding up each element of an array of prices.

Làm thế nào tôi có thể chạy hai vòng đồng thời trong PHP?

Để giải quyết điều này, bạn phải lặp qua cả hai mảng cùng một lúc ...
Phương thức Array_Map [].[PHP> = 5.3].
Phương pháp nhiều thứ.[PHP> = 5.3].
cho phương pháp vòng lặp.[PHP> = 4.3].
Phương thức Array_Combine [].[PHP> = 5.0].
phương thức call_user_func_array [].[PHP> = 5.6].

Vòng lặp foreach trong PHP là gì?

Vòng lặp foreach được sử dụng để đi qua các phần tử mảng.Nó chỉ hoạt động trên mảng và đối tượng.Nó sẽ đưa ra một lỗi nếu bạn cố gắng sử dụng nó với các biến của kiểu dữ liệu khác nhau.Các vòng lặp foreach hoạt động trên cơ sở các yếu tố thay vì chỉ mục.Nó cung cấp một cách dễ nhất để lặp lại các yếu tố của một mảng.used to traverse the array elements. It works only on array and object. It will issue an error if you try to use it with the variables of different datatype. The foreach loop works on elements basis rather than index. It provides an easiest way to iterate the elements of an array.

Bài Viết Liên Quan

Chủ Đề