From the specifications given, my first thought is to implement it in object-oriented way of programming. Zope (being open-source and OOP from ground-up) naturally came to mind. Therefore, i would like to know whether Zope is suitable (and stable enough) to develop this kind of websites, bearing in mind other criteria such as scalability, performance, and the "learning curve" involved.
Yes. Yes and steep. (scalability = ZEO, performance is good, learning curve a bit steep)
I have done programming in PHP before, and AFAIK to implement features such as user-authentication, sessions and permissions in PHP, we can either write our own libraries, or use PHPLIB. However, looking at PHPLIB, it seems to be quite buggy, and require a lot of work re-writing for some of its functions. Therefore, I would also like to know whether there's any authentication/session management modules(or classes) already written for Zope, and if they exist, is it easy to implement them(as in as easy as plug-and play, or a lot of coding required)?
Zope has its own authentication/session management built in. You will see this when you set up your first Zope and go to manage something. There are a few products out there that let you create better login/user management as well as some that you can connect to SQL databases or LDAP. A new product in the works it the PTK (Portal Tool Kit) that will have a lot of this built into it. My suggestion: Start poking around Zope.org, read up on the stuff there and download and install Zope. That will give you a better idea of what you are dealing with. J