Sử dụng PHP, tôi phải phân tích một chuỗi đến mã của mình theo định dạng như sau:
object[stdClass][4] {
["Title"]=> string[5] "Fruit"
["Color"]=> string[6] "yellow"
["Name"]=> string[6] "banana"
["id"]=> int[3]
}
Tôi chắc chắn có một giải pháp đơn giản, nhưng dường như tôi không thể tìm thấy nó ... làm thế nào để có được màu sắc và tên?
Cám ơn rất nhiều.
Naftali
143K39 Huy hiệu vàng240 Huy hiệu bạc299 Huy hiệu Đồng39 gold badges240 silver badges299 bronze badges
Đã hỏi ngày 31 tháng 10 năm 2011 lúc 15:46Oct 31, 2011 at 15:46
3
Bạn có thể làm: $obj->Title
vvetera.
Hoặc bạn có thể biến nó thành một mảng:
$array = get_object_vars[$obj];
Đã trả lời ngày 31 tháng 10 năm 2011 lúc 15:51Oct 31, 2011 at 15:51
NaftalinaftaliNaftali
143K39 Huy hiệu vàng240 Huy hiệu bạc299 Huy hiệu Đồng39 gold badges240 silver badges299 bronze badges
2
Đã hỏi ngày 31 tháng 10 năm 2011 lúc 15:46
$obj = new stdClass[];
$obj->foo = "bar";
Bạn có thể làm: $obj->Title
vvetera. [as other's have mentioned]
echo $obj->foo; // -> "bar"
Hoặc bạn có thể biến nó thành một mảng::
$my_foo = 'foo';
echo $obj->{$my_foo}; // -> "bar"
Đã trả lời ngày 31 tháng 10 năm 2011 lúc 15:51Aug 17, 2018 at 21:30
Naftalinaftalimfink
Ví dụ đối tượng StdClass:19 silver badges31 bronze badges
Theo tài sản [như những người khác đã đề cập]
$object_encoded = json_encode[ $obj ];
$object_decoded = json_decode[ $object_encoded, true ];
echo $object_decoded['Color'];
Theo giá trị của biến: passing
$array = get_object_vars[$obj];
2 parameter in $array = get_object_vars[$obj];
1 will return an associative array.Đã trả lời ngày 17 tháng 8 năm 2018 lúc 21:30Mar 7 at 10:14
$array = get_object_vars[$obj];
4mfinkmfink
1.18119 huy hiệu bạc31 huy hiệu đồngMay 30 at 7:18
Tôi đã giải quyết vấn đề này bằng cách chuyển đổi stdClass object
thành array
bằng cách sử dụng ____10 và
$array = get_object_vars[$obj];
1 như thế này:LoggyLưu ý: Truyền tham số
2 trong $array = get_object_vars[$obj];
1 sẽ trả về một mảng kết hợp.1 bronze badge$array = get_object_vars[$obj];
Chúng tôi tạo một mảng với người dùng tên. Sau đó chúng tôi nhập mảng vào một đối tượng. Kết quả của điều này, chúng tôi nhận được một đối tượng STDCLASS.
Đối tượng STDCLASS trong PHP là gì? — Gets the properties of the given object
STDCLASS là lớp trống trong PHP được sử dụng để đúc các loại khác để đối tượng. Nó tương tự như đối tượng Java hoặc Python. STDClass không phải là lớp cơ sở của các đối tượng. Nếu một đối tượng được chuyển đổi thành đối tượng, nó không được sửa đổi.
[Php 4, Php 5, Php 7, Php 8][object
5]: array$array = get_object_vars[$obj];
get_object_vars - Nhận các thuộc tính của đối tượng đã cho
$array = get_object_vars[$obj];
6Mộ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
$array = get_object_vars[$obj];
6 được chỉ định trong phạm vi.Ví dụ
Ví dụ #1 Sử dụng get_object_vars []get_object_vars[]
$array = get_object_vars[$obj];
8$array = get_object_vars[$obj];
9$obj = new stdClass[];
$obj->foo = "bar";
0Ví 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
$obj = new stdClass[];
$obj->foo = "bar";
1$obj = new stdClass[];
$obj->foo = "bar";
2$obj = new stdClass[];
$obj->foo = "bar";
3$obj = new stdClass[];
$obj->foo = "bar";
4Niemans tại pbsolo dot nl ¶ ¶
1 năm trước
$obj = new stdClass[];
$obj->foo = "bar";
5$obj = new stdClass[];
$obj->foo = "bar";
6$obj = new stdClass[];
$obj->foo = "bar";
7$obj = new stdClass[];
$obj->foo = "bar";
8$obj = new stdClass[];
$obj->foo = "bar";
9echo $obj->foo; // -> "bar"
0Fabien Haddadi ¶ ¶
10 năm trước
echo $obj->foo; // -> "bar"
1echo $obj->foo; // -> "bar"
2echo $obj->foo; // -> "bar"
3echo $obj->foo; // -> "bar"
0Marcus tại Marcusball dot tôi ¶ ¶
1 năm trước
echo $obj->foo; // -> "bar"
5echo $obj->foo; // -> "bar"
6echo $obj->foo; // -> "bar"
7echo $obj->foo; // -> "bar"
8echo $obj->foo; // -> "bar"
9$my_foo = 'foo';
echo $obj->{$my_foo}; // -> "bar"
0$my_foo = 'foo';
echo $obj->{$my_foo}; // -> "bar"
1$my_foo = 'foo';
echo $obj->{$my_foo}; // -> "bar"
2