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 đã cho — Gets the properties of the given object
Sự mô tả
get_object_vars [đối tượng
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]: arrayArray
[
[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
]
]
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
]
]
5Mộ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
]
]
7Array
[
[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
]
]
8Array
[
[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
]
]
9Ví 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;
3Niemans 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;
9Fabien 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;
9Marcus 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