Hướng dẫn how to get values from object array in php - cách lấy giá trị từ mảng đối tượng trong php

Vấn đề là tôi chưa quen với OOP PHP và tôi dường như không thể tìm thấy câu trả lời cho cách lấy một giá trị cụ thể từ mảng các đối tượng.

Khi tôi chạy yêu cầu đến lớp người dùng và phương thức find_by_sql:

$getAct = User::find_by_sql[$sql];

Câu trả lời tôi nhận được là:

Array
[
    [0] => User Object
        [
            [id] => 6
            [permissions] => 0
            [email] => 
            [password] => 918f358a5cdf01e63d4609063d9A2bfec57f8455
            [first_name] => Name
            [last_name] => Surname
            [city] => City
            [gender] => m
            [birth_date] => 1980-02-02
            [act_code] => AAAAAAAAAAAAAAA
        ]

]

Câu hỏi của tôi về cơ bản là làm thế nào tôi có thể đặt giá trị [act_code] thành biến của tôi? Nếu tôi sử dụng phương pháp không tĩnh thì sẽ dễ dàng vì tôi chỉ có thể gọi $ obj-> act_code. Nhưng làm thế nào để tôi làm điều tương tự từ một cuộc gọi phương thức tĩnh?

Hỏi ngày 30 tháng 10 năm 2010 lúc 10:32Oct 30, 2010 at 10:32

ARMAARMAarma

4.05410 Huy hiệu vàng46 Huy hiệu bạc61 Huy hiệu Đồng10 gold badges46 silver badges61 bronze badges

Bạn phải làm

$getAct  = User::find_by_sql[$sql];
$actCode = $getAct[0]->act_code;

hoặc nhiều dòng dài hơn

$getAct  = User::find_by_sql[$sql]; // returns an array
$user    = $getAct[0];              // assign first element in array to $user
$actCode = $user->act_code;         // read act_code member from User Object

Như bạn có thể thấy bằng kết quả kết quả của mình, $getAct chứa một mảng có một phần tử [như được chỉ định bởi [0] vì các mảng được lập chỉ mục với các khóa dựa trên không]. Phần tử là một đối tượng người dùng.

Bạn truy cập/đột biến/gọi các thành viên/phương thức đối tượng với T_OBJECT_OPERATOR [

Array
[
    [0] => User Object
        [
            [id] => 6
            [permissions] => 0
            [email] => 
            [password] => 918f358a5cdf01e63d4609063d9A2bfec57f8455
            [first_name] => Name
            [last_name] => Surname
            [city] => City
            [gender] => m
            [birth_date] => 1980-02-02
            [act_code] => AAAAAAAAAAAAAAA
        ]

]
0]. Vì
Array
[
    [0] => User Object
        [
            [id] => 6
            [permissions] => 0
            [email] => 
            [password] => 918f358a5cdf01e63d4609063d9A2bfec57f8455
            [first_name] => Name
            [last_name] => Surname
            [city] => City
            [gender] => m
            [birth_date] => 1980-02-02
            [act_code] => AAAAAAAAAAAAAAA
        ]

]
1 sẽ trả lại một tay cầm cho đối tượng, sau đó bạn có thể lấy thuộc tính này bằng
Array
[
    [0] => User Object
        [
            [id] => 6
            [permissions] => 0
            [email] => 
            [password] => 918f358a5cdf01e63d4609063d9A2bfec57f8455
            [first_name] => Name
            [last_name] => Surname
            [city] => City
            [gender] => m
            [birth_date] => 1980-02-02
            [act_code] => AAAAAAAAAAAAAAA
        ]

]
2.

Đã trả lời ngày 30 tháng 10 năm 2010 lúc 10:35Oct 30, 2010 at 10:35

GordongordonGordon

308K72 Huy hiệu vàng527 Huy hiệu bạc552 Huy hiệu đồng72 gold badges527 silver badges552 bronze badges

1

Để gán giá trị của biến thành viên của phần tử mảng đầu tiên

Array
[
    [0] => User Object
        [
            [id] => 6
            [permissions] => 0
            [email] => 
            [password] => 918f358a5cdf01e63d4609063d9A2bfec57f8455
            [first_name] => Name
            [last_name] => Surname
            [city] => City
            [gender] => m
            [birth_date] => 1980-02-02
            [act_code] => AAAAAAAAAAAAAAA
        ]

]
3 cho một biến:

$act_code = $getAct[0]->act_code;

Đã trả lời ngày 30 tháng 10 năm 2010 lúc 10:36Oct 30, 2010 at 10:36

Joschijoschijoschi

12.4K4 Huy hiệu vàng45 Huy hiệu bạc49 Huy hiệu đồng4 gold badges45 silver badges49 bronze badges

Tôi không chắc bạn đang sử dụng ORM nào, nhưng nếu bạn chỉ muốn truy xuất một bản ghi, chỉ cần giới hạn nó thành 1. Điều đó sẽ trả về đối tượng người dùng thay vì một mảng đối tượng người dùng

$user = User::find_first_by_sql[$sql];
$act  = $user->act_code;`

Đã trả lời ngày 30 tháng 10 năm 2010 lúc 12:56Oct 30, 2010 at 12:56

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

get_object_vars - Nhận các thuộc tính của đối tượng đã choGets the properties of the given object

Sự mô tả

get_object_vars [đối tượng

Array
[
    [0] => User Object
        [
            [id] => 6
            [permissions] => 0
            [email] => 
            [password] => 918f358a5cdf01e63d4609063d9A2bfec57f8455
            [first_name] => Name
            [last_name] => Surname
            [city] => City
            [gender] => m
            [birth_date] => 1980-02-02
            [act_code] => AAAAAAAAAAAAAAA
        ]

]
4]: mảng[object
Array
[
    [0] => User Object
        [
            [id] => 6
            [permissions] => 0
            [email] => 
            [password] => 918f358a5cdf01e63d4609063d9A2bfec57f8455
            [first_name] => Name
            [last_name] => Surname
            [city] => City
            [gender] => m
            [birth_date] => 1980-02-02
            [act_code] => AAAAAAAAAAAAAAA
        ]

]
4
]: array

Thông số

Array
[
    [0] => User Object
        [
            [id] => 6
            [permissions] => 0
            [email] => 
            [password] => 918f358a5cdf01e63d4609063d9A2bfec57f8455
            [first_name] => Name
            [last_name] => Surname
            [city] => City
            [gender] => m
            [birth_date] => 1980-02-02
            [act_code] => AAAAAAAAAAAAAAA
        ]

]
5

Một thể hiện đối tượng.

Trả về giá trị

Trả về một mảng kết hợp của các thuộc tính phi tĩnh có thể truy cập đối tượng được xác định cho phạm vi

Array
[
    [0] => User Object
        [
            [id] => 6
            [permissions] => 0
            [email] => 
            [password] => 918f358a5cdf01e63d4609063d9A2bfec57f8455
            [first_name] => Name
            [last_name] => Surname
            [city] => City
            [gender] => m
            [birth_date] => 1980-02-02
            [act_code] => AAAAAAAAAAAAAAA
        ]

]
5 được chỉ định.

Ví dụ

Ví dụ #1 Sử dụng get_object_vars []get_object_vars[]

Array
[
    [0] => User Object
        [
            [id] => 6
            [permissions] => 0
            [email] => 
            [password] => 918f358a5cdf01e63d4609063d9A2bfec57f8455
            [first_name] => Name
            [last_name] => Surname
            [city] => City
            [gender] => m
            [birth_date] => 1980-02-02
            [act_code] => AAAAAAAAAAAAAAA
        ]

]
7

Array
[
    [0] => User Object
        [
            [id] => 6
            [permissions] => 0
            [email] => 
            [password] => 918f358a5cdf01e63d4609063d9A2bfec57f8455
            [first_name] => Name
            [last_name] => Surname
            [city] => City
            [gender] => m
            [birth_date] => 1980-02-02
            [act_code] => AAAAAAAAAAAAAAA
        ]

]
8

Array
[
    [0] => User Object
        [
            [id] => 6
            [permissions] => 0
            [email] => 
            [password] => 918f358a5cdf01e63d4609063d9A2bfec57f8455
            [first_name] => Name
            [last_name] => Surname
            [city] => City
            [gender] => m
            [birth_date] => 1980-02-02
            [act_code] => AAAAAAAAAAAAAAA
        ]

]
9

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

array[2] {
  ["b"]=>
  int[1]
  ["c"]=>
  NULL
}
array[4] {
  ["a"]=>
  NULL
  ["b"]=>
  int[1]
  ["c"]=>
  NULL
  ["d"]=>
  NULL
}

Ghi chú::

Các thuộc tính không được cung cấp được xem xét không thể tiếp cận, và do đó sẽ không được đưa vào mảng.

Xem thêm

  • get_class_methods [] - Nhận tên của các phương thức lớp
  • get_class_vars [] - Nhận các thuộc tính mặc định của lớp

fmmarzoa tại librexpresion dot org ¶

17 năm trước

$getAct  = User::find_by_sql[$sql];
$actCode = $getAct[0]->act_code;
0

$getAct  = User::find_by_sql[$sql];
$actCode = $getAct[0]->act_code;
1

$getAct  = User::find_by_sql[$sql];
$actCode = $getAct[0]->act_code;
2

$getAct  = User::find_by_sql[$sql];
$actCode = $getAct[0]->act_code;
3

Niemans tại pbsolo dot nl ¶

1 năm trước

$getAct  = User::find_by_sql[$sql];
$actCode = $getAct[0]->act_code;
4

$getAct  = User::find_by_sql[$sql];
$actCode = $getAct[0]->act_code;
5

$getAct  = User::find_by_sql[$sql];
$actCode = $getAct[0]->act_code;
6

$getAct  = User::find_by_sql[$sql];
$actCode = $getAct[0]->act_code;
7

$getAct  = User::find_by_sql[$sql];
$actCode = $getAct[0]->act_code;
8

$getAct  = User::find_by_sql[$sql];
$actCode = $getAct[0]->act_code;
9

Fabien Haddadi ¶

10 năm trước

$getAct  = User::find_by_sql[$sql]; // returns an array
$user    = $getAct[0];              // assign first element in array to $user
$actCode = $user->act_code;         // read act_code member from User Object
0

$getAct  = User::find_by_sql[$sql]; // returns an array
$user    = $getAct[0];              // assign first element in array to $user
$actCode = $user->act_code;         // read act_code member from User Object
1

$getAct  = User::find_by_sql[$sql]; // returns an array
$user    = $getAct[0];              // assign first element in array to $user
$actCode = $user->act_code;         // read act_code member from User Object
2

$getAct  = User::find_by_sql[$sql];
$actCode = $getAct[0]->act_code;
9

Marcus tại Marcusball dot tôi ¶

1 năm trước

$getAct  = User::find_by_sql[$sql]; // returns an array
$user    = $getAct[0];              // assign first element in array to $user
$actCode = $user->act_code;         // read act_code member from User Object
4

$getAct  = User::find_by_sql[$sql]; // returns an array
$user    = $getAct[0];              // assign first element in array to $user
$actCode = $user->act_code;         // read act_code member from User Object
5

$getAct  = User::find_by_sql[$sql]; // returns an array
$user    = $getAct[0];              // assign first element in array to $user
$actCode = $user->act_code;         // read act_code member from User Object
6

$getAct  = User::find_by_sql[$sql]; // returns an array
$user    = $getAct[0];              // assign first element in array to $user
$actCode = $user->act_code;         // read act_code member from User Object
7

$getAct  = User::find_by_sql[$sql]; // returns an array
$user    = $getAct[0];              // assign first element in array to $user
$actCode = $user->act_code;         // read act_code member from User Object
8

$getAct  = User::find_by_sql[$sql]; // returns an array
$user    = $getAct[0];              // assign first element in array to $user
$actCode = $user->act_code;         // read act_code member from User Object
9

$act_code = $getAct[0]->act_code;
0

$act_code = $getAct[0]->act_code;
1

Làm thế nào để bạn truy cập các giá trị trong một mảng?

Chúng ta có thể truy cập các phần tử của một mảng bằng toán tử chỉ mục []. Tất cả những gì bạn cần làm để truy cập một yếu tố cụ thể là gọi cho mảng bạn đã tạo. Bên cạnh mảng là toán tử chỉ mục [], sẽ có giá trị của vị trí chỉ mục của phần tử cụ thể từ một mảng nhất định.using the index operator [] . All you need do in order to access a particular element is to call the array you created. Beside the array is the index [] operator, which will have the value of the particular element's index position from a given array.

Làm thế nào để bạn gọi một mảng các đối tượng trong PHP?

Nếu nó được gọi là một mảng hoặc đối tượng phụ thuộc vào phần ngoài cùng của biến của bạn.Vì vậy, [std class mới] là một mảng ngay cả khi nó có [lồng nhau] các đối tượng bên trong nó và $ object-> property = mảng [];là một đối tượng ngay cả khi nó có mảng [lồng nhau] bên trong.Và nếu bạn không chắc chắn nếu bạn có một đối tượng hoặc mảng, chỉ cần sử dụng getType [].$object->property = array[]; is an object even if it has [nested] arrays inside. And if you are not sure if you have an object or array, just use gettype[] .

Làm thế nào để bạn truy cập các thuộc tính của một đối tượng trong PHP?

Trong các phương thức lớp các thuộc tính không tĩnh có thể được truy cập bằng cách sử dụng-> [toán tử đối tượng]: $ this-> thuộc tính [trong đó thuộc tính là tên của thuộc tính].Thuộc tính tĩnh được truy cập bằng cách sử dụng :: [Double Colon]: Self :: $ $ thuộc tính.non-static properties may be accessed by using -> [Object Operator]: $this->property [where property is the name of the property]. Static properties are accessed by using the :: [Double Colon]: self::$property .

Cách nào chính xác để truy cập các phần tử mảng trong PHP?

Truy cập các phần tử trong mảng PHP Các phần tử trong mảng loại khóa số PHP được truy cập bằng cách tham chiếu biến chứa mảng, theo sau là chỉ mục vào mảng của phần tử cần thiết được đặt trong khung vuông [[]].referencing the variable containing the array, followed by the index into array of the required element enclosed in square brackets [[]].

Chủ Đề