sylius-code / multisport-endomondo-wrapper
endomondo API 包装器
1.0.5
2020-12-04 12:25 UTC
Requires
This package is not auto-updated.
Last update: 2024-09-27 13:06:21 UTC
README
描述
由于Endomondo即将退役,我决定创建一个基于Endomondo训练存档json文件来管理训练的工具。
快速入门
use SylusCode\MultiSport\EndomondoWrapper\WorkoutImporter; use SylusCode\MultiSport\EndomondoWrapper\WorkoutParser as EndoParser; use SylusCode\MultiSport\EndomondoWrapper\WorkoutTypeResolver as EndoTypeResolver; use Symfony\Component\Finder\Finder; $finder = new Finder(); $endoResolver = new EndoTypeResolver(); $endoParser = new EndoParser($endoResolver); $endoWorkoutImporter = new WorkoutImporter($finder, $endoParser); $path = 'endomondo-2020-11-18.zip'; $result = $endoWorkoutImporter->importFromZipFile($path); var_dump($result); // Example output: array(1) { [0]=> object(SylusCode\MultiSport\Workout\Workout)#2064 (14) { ["time":"SylusCode\MultiSport\Workout\Workout":private]=> NULL ["type":"SylusCode\MultiSport\Workout\Workout":private]=> object(SylusCode\MultiSport\Workout\Type)#62947 (2) { ["id":"SylusCode\MultiSport\Workout\Type":private]=> int(5) ["name":"SylusCode\MultiSport\Workout\Type":private]=> string(9) "Siłownia" } ["distance":"SylusCode\MultiSport\Workout\Workout":private]=> float(0) ["calories":"SylusCode\MultiSport\Workout\Workout":private]=> int(63) ["durationTotal":"SylusCode\MultiSport\Workout\Workout":private]=> int(919) ["points":"SylusCode\MultiSport\Workout\Workout":private]=> array(918) { [0]=> object(SylusCode\MultiSport\Workout\Point)#2066 (7) { ["time":"SylusCode\MultiSport\Workout\Point":private]=> object(DateTime)#2055 (3) { ["date"]=> string(26) "2020-11-17 09:16:32.000000" ["timezone_type"]=> int(2) ["timezone"]=> string(1) "Z" } ["latitude":"SylusCode\MultiSport\Workout\Point":private]=> NULL ["longtitude":"SylusCode\MultiSport\Workout\Point":private]=> NULL ["altitude":"SylusCode\MultiSport\Workout\Point":private]=> NULL ["distance":"SylusCode\MultiSport\Workout\Point":private]=> NULL ["heartRate":"SylusCode\MultiSport\Workout\Point":private]=> int(72) ["speed":"SylusCode\MultiSport\Workout\Point":private]=> NULL } ..
免责声明
基于存档json文件的Endomondo锻炼解析器。由于Endomondo在存档锻炼包中不提供带标签的工作锻炼,因此此解析器不包括标签。
下一步计划
添加单元测试