I'm unsure as to whether the currently-available PlayStation emulators for the Raspberry Pi support external CD-ROM drives, in addition to their default state of reading the games from rips created from your own game-discs.
That said, there are plentiful supplies of USB adapters out there for hooking up PlayStation controllers to computers, so one or two of those should solve that part of the problem. I'd imagine that you could find some way of connecting the controllers to the Raspberry Pi's GPIO pins, too, but the USB adapter struck me as the path of least resistance, there.
As far as memory cards go, I just had a look around and found these schematics for creating a reader for them
, and this accompanying source code for managing the contents of the cards on Linux-based machines
. There seems to be some accompanying documentation relating to how PlayStation memory cards function, also, on the page with the schematic. I do not know if the code will compile and work correctly on a Raspberry Pi, though, and I don't know how you would get it to work with an emulator (though you can certainly read in existing cards and use the resultant image-files with an emulator, I'm sure that that's not ideal in this case). Still, it should at least provide a starting point, I hope!
I'm afraid I don't have any further information or suggestions, but I hope that my post has been useful. Good luck, and please keep us posted!