getAll()->values as $target) { $locator = $target->locator->get(); if (array_key_exists("tle", $locator)) { //get NORAD of objects $norad = explode(" ", $locator["tle"]["line2"])[1]; //have norad now get data from celestrak //https://celestrak.org/NORAD/elements/gp.php?CATNR={norad}&FORMAT=tle $newTle = file_get_contents("https://celestrak.org/NORAD/elements/gp.php?CATNR={$norad}&FORMAT=tle"); $newTle = explode("\n", $newTle); if (count($newTle) >= 3) { //tle loaded $locator["tle"]["line1"] = str_replace("\r", "", $newTle[1]); $locator["tle"]["line2"] = str_replace("\r", "", $newTle[2]); $updated[] = ["name" => $target->name->get(), "norad" => $norad]; $target->locator->set($locator); $target->commit(); } } } return $updated; }