Cách lặp lại giá trị đối tượng trong php?
Tôi cần một số trợ giúp về mã của mình vì tôi gặp khó khăn trong việc tìm nạp giá trị từ stdclass. Tôi đang sử dụng dữ liệu json để chuyển đổi nó sang PHP, vì vậy tôi muốn tìm nạp dữ liệu "xuất hiện" từ đối tượng stdclass Show Khi tôi thử cái này echo $data->appears;
tôi nhận được cái này Lưu ý. Đang cố lấy thuộc tính của non-object trong /home/username/public_html/foldername/script. php trên dòng 22
Tôi cũng đã thử cái này echo $data[0]->appears->value;
Và điều này echo $data->appears[0]->value;
Tôi vẫn gặp lỗi tương tự nên tôi không biết phải làm gì để giải quyết
Mã đầy đủ php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
$json = '{"data":{"185.220.101.46":{"domains_count":0,"domains_list":null,"updated":"2019-12-02 22:04:25","spam_rate":1,"frequency":6827,"frequency_time_24h":106,"frequency_time_1h":2,"network_type":"hosting","in_antispam":1,"in_security":0,"appears":1,"country":"DE","submitted":"2018-01-11 20:34:37","frequency_time_10m":2,"sha256":"e39d4a9be2f210d1a75ba2b5ece08a4b35e99002b03aeb6ceaad1d98de87c248"}}}';
// Converts it into a PHP object
$data = json_decode($json, true);
//print_r($data);
echo $data["appears"]->value ."
Đối tượng STDClass Array ( [data] => Array ( [185.220.101.46] => Array ( [domains_count] => 0 [domains_list] => [updated] => 2019-12-02 22:04:25 [spam_rate] => 1 [frequency] => 6827 [frequency_time_24h] => 106 [frequency_time_1h] => 2 [network_type] => hosting [in_antispam] => 1 [in_security] => 0 [appears] => 1 [country] => DE [submitted] => 2018-01-11 20:34:37 [frequency_time_10m] => 2 [sha256] => e39d4a9be2f210d1a75ba2b5ece08a4b35e99002b03aeb6ceaad1d98de87c248 ) ) )
Var_dump array(1) { ["data"]=> array(1) { ["185.220.101.46"]=> array(15) { ["domains_count"]=> int(0) ["domains_list"]=> NULL ["updated"]=> string(19) "2019-12-02 22:04:25" ["spam_rate"]=> int(1) ["frequency"]=> int(6827) ["frequency_time_24h"]=> int(106) ["frequency_time_1h"]=> int(2) ["network_type"]=> string(7) "hosting" ["in_antispam"]=> int(1) ["in_security"]=> int(0) ["appears"]=> int(1) ["country"]=> string(2) "DE" ["submitted"]=> string(19) "2018-01-11 20:34:37" ["frequency_time_10m"]=> int(2) ["sha256"]=> string(64) "e39d4a9be2f210d1a75ba2b5ece08a4b35e99002b03aeb6ceaad1d98de87c248" } } }
Bạn có thể vui lòng chỉ cho tôi một ví dụ về cách tôi có thể tìm nạp `xuất hiện` từ đối tượng stdclass không? bât cư lơi khuyên nao cung se được đanh gia cao Đã chỉnh sửa ngày 2 tháng 12 năm 2019 bởi mark107
Liên kết để bình luậnChia sẻ trên các trang web khácNhiều tùy chọn chia sẻ hơn BarandĐăng ngày 2 tháng 12 năm 2019 Barand
Đăng ngày 2 tháng 12 năm 2019 $data = json_decode($json, true); Điều đó chuyển đổi nó thành một mảng. Để chuyển đổi nó thành một đối tượng, hãy xóa "true" $data = json_decode($json);
Liên kết để bình luậnChia sẻ trên các trang web khácNhiều tùy chọn chia sẻ hơn requinixĐăng ngày 2 tháng 12 năm 2019 requinix
Đăng ngày 2 tháng 12 năm 2019 Bạn đang cách xa Đối với một, nó không phải là một đối tượng. Trên thực tế, bạn đã nói rõ ràng với PHP rằng bạn không muốn một đối tượng. Vì vậy, nó đã cho bạn một mảng. Nếu bạn muốn một đối tượng thì hãy làm những gì Barand nói Thứ hai, bạn dường như không biết dữ liệu được cấu trúc như thế nào. Có thể thứ gì đó sẽ nhấp vào nếu bạn nhìn vào đầu ra print_r thụt vào? ________số 8
Liên kết để bình luậnChia sẻ trên các trang web khácNhiều tùy chọn chia sẻ hơn đánh dấu107Đăng ngày 2 tháng 12 năm 2019 đánh dấu107
Đăng ngày 2 tháng 12 năm 2019 T
Cảm ơn lời khuyên của bạn, tôi đã xóa nó nhưng tôi không thể lấy giá trị của `xuất hiện` từ mảng vì tôi cũng gặp lỗi tương tự Bất kỳ ý tưởng?
Liên kết để bình luậnChia sẻ trên các trang web khácNhiều tùy chọn chia sẻ hơn BarandĐăng ngày 2 tháng 12 năm 2019 Barand
Đăng ngày 2 tháng 12 năm 2019 Đây là một đầu mối
Liên kết để bình luậnChia sẻ trên các trang web khácNhiều tùy chọn chia sẻ hơn đánh dấu107Đăng ngày 2 tháng 12 năm 2019 đánh dấu107
Đăng ngày 2 tháng 12 năm 2019
tôi đã thử cái này tiếng vang $data->data['185. 220. 101. 46']-> xuất hiện; nó không hoạt động. Bất kỳ ý tưởng? Sẽ dễ dàng hơn nếu bạn có thể đăng mã của những gì tôi nên sử dụng
Liên kết để bình luậnChia sẻ trên các trang web khácNhiều tùy chọn chia sẻ hơn requinixĐăng ngày 2 tháng 12 năm 2019 requinix
Đăng ngày 2 tháng 12 năm 2019 Bạn đang trộn truy cập đối tượng và mảng với nhau. Nó sẽ không bao giờ hoạt động. Nó sẽ luôn là chỉ đối tượng truy cập hoặc chỉ đối tượng truy cập mảng Vì “185. 220. 101. 46" không (thông thường) là tên thuộc tính hợp lệ cho một đối tượng, tôi khuyên bạn nên sử dụng dữ liệu mảng từ json_decode. Sau đó, chỉ sử dụng ký hiệu mảng khi cố gắng lấy giá trị
Liên kết để bình luậnChia sẻ trên các trang web khácNhiều tùy chọn chia sẻ hơn đánh dấu107Đăng ngày 2 tháng 12 năm 2019 đánh dấu107
Đăng ngày 2 tháng 12 năm 2019
Tôi không thể xóa "185. 220. 101. 46" bởi vì nó đi kèm với nó khi tôi truy cập vào trang web mà tôi không được phép đăng nó Vậy tôi phải làm gì sau đó? Tạo một vòng lặp foreach để tìm nạp các giá trị và lưu trữ trong mảng?
Liên kết để bình luậnChia sẻ trên các trang web khácNhiều tùy chọn chia sẻ hơn requinixĐăng ngày 2 tháng 12 năm 2019 requinix
Đăng ngày 2 tháng 12 năm 2019 Tôi hiện đang làm việc với một số nhà phát triển nước ngoài ngu ngốc nên tôi sẽ đi thẳng vào vấn đề ở đây Làm cách nào để lặp lại một giá trị trong một đối tượng trong PHP?Nếu muốn xuất phần tử thì phải chỉ định đúng chỉ số của các mảng đó. echo $insights->data[N]->values[M]->value; Trong đó N và M là chỉ mục của các mảng bên trong đối tượng.
Làm cách nào để lấy giá trị từ mảng đối tượng trong PHP?Phương pháp 1. Sử dụng phương thức json_decode và json_encode . Hàm json_decode chấp nhận chuỗi được mã hóa JSON và chuyển đổi nó thành một biến PHP, mặt khác, json_encode trả về một chuỗi được mã hóa JSON cho một giá trị nhất định. cú pháp. $myArray = json_decode(json_encode($object), true);
Làm cách nào để lặp lại mảng trong PHP?Để in hoặc lặp lại một mảng trong PHP, bạn có thể sử dụng hàm print_r(biến, trả về) hoặc var_dump(biến1, biến2,. ) chức năng . Hàm print_r() in thông tin về biến đã truyền ở dạng con người có thể đọc được.
Làm cách nào để truy cập thuộc tính đố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->property (trong đó property là tên của tài sản) . Thuộc tính tĩnh được truy cập bằng cách sử dụng. (Dấu hai chấm). bản thân. tài sản $. |