Four steps, no phone needed.
You don't need the phone. You don't need your Apple ID. You don't need an internet connection. You just need a backup that's already on a computer you own.
If you've ever plugged an iPhone into this computer and hit sync, a backup is already here. OpenExtract scans the usual spots automatically:
On Linux, or if your backup lives on an external drive, just point OpenExtract at any folder and it'll find Manifest.db.
If you ticked "Encrypt local backup" when you made it (good call — encrypted backups contain more data, including saved passwords and Safari history), type your backup password. It goes to the decryption code on your laptop and nowhere else.
Forgotten the password? There's no backdoor. OpenExtract will tell you which backup is encrypted so you can try known passwords, but it can't brute-force one.
You get one page with everything in it: messages, WhatsApp chats, photos, the people you were in touch with, your address book, calls, notes, voicemail and podcasts. Search texts, WhatsApp, notes, calls and more from one box, or open any conversation, play any voicemail, view any photo.
It's all read-only. Nothing you click modifies your backup.
On the backup's home page, click Save to this computer, then Save next to what you want. Or use the Save button on any screen, like Save conversation or Save contacts. Pick a format, then choose the folder it goes in.
You can hand the folder to someone else, print it, archive it, or import pieces of it into another tool. It's just files.
If you don't have a backup yet, plug your iPhone in, open Finder (or iTunes on Windows), and click "Back up now." Then come back here.
Make one now. It's what the official Apple tools are actually decent at.
Your backup lives somewhere non-default (external drive, different user account). On the start screen, click “Open a backup folder” and browse to it. Any folder with a Manifest.db file will work.
There's no workaround. Apple designed encrypted backups so no tool can get in without the password. If you have an older unencrypted backup lying around, try that instead.
Check your OS — both macOS and Windows sometimes hide EXIF dates in favor of "date modified." Open the photo's info panel; the original capture date will be there.
iOS may have been set to auto-delete old messages. Check Settings → Messages → Keep Messages. For everything in the backup to show, the backup must have been made while the messages still existed on the phone.
WhatsApp has its own tile on the backup's home page, next to Messages. If there's no WhatsApp tile, WhatsApp wasn't on the iPhone, or its chats weren't in the backup. OpenExtract reads WhatsApp from the iPhone backup, not the chat backup WhatsApp makes to iCloud. More in the guide to exporting WhatsApp chats.