User management system, PHP project development silver bullet?

Source: Internet
Author: User
User management system, PHP project development silver bullet? Silver Bullet is a special weapon used to target supernatural monsters such as the werewolf. It is also a metaphor for an extremely effective solution, as a nickname for the killer, the strongest killer, and the trump card.

As a developer with several years of experience in php development, my daily work is engaged in php project development based on the TP framework. I have been persistently developing independently, including the most basic user management and background management systems. What bothers me most is permission management, user login registration, and so on. The requirements for each project are different. Therefore, I use the repair, modification, and maintenance methods to maintain my own user management system. Then it is applied to various projects.

One day, I saw a new Open-source project on OSC-Open Center php user management system. It suddenly gave me a sense of mutual sorrow.

Why do I feel this way?

First, OC complies with the Apache2.0 open-source protocol, that is, the same protocol as TP. Dispelled my copyright concerns.

As a user management system, it provides a complete user registration process, including multiple registration methods, such as mobile phone number registration, email registration, and user name registration. It also supports authenticity verification, the sincerity of the development team can be seen.

In addition, its efforts on user permission management also show that the development team claimed to inherit from OneThink and I used OneThink in the project, it is found that the OC is quite different. It also includes the management of foreground permissions.

In order to give tper a reference, I made a comparison between OneThink and OC.

1. open source protocol

Both are based on Apache2.0, and there is nothing better.

2. System Framework

Both are based on ThinkPHP. However, OC is based on OneThink, which makes me confused. On the surface, it is hard to see that the two systems have the same kernel. However, after the study, we found some commonalities. OC has a strong OneThink gene.

As for the front-end, OC uses zui, which is a bold attempt (as far as I know, zui is an improved version of bootstrap and has a low learning cost). OneThink is a traditional one and uses bootstrap.

3. system focus

OneThink focuses on content management and can be seen from the background structure. You can see the content management section in the navigation bar, and the features of the content management section have also taken shape.

OC focuses on user management, so there is no content management part in the background navigation. what's special is that the "Module" concept is highlighted in the navigation part, and the left column is specially placed in the module, at the same time, it also supports the installation and uninstallation of modules. This should be a great improvement.

Another outstanding feature of OC is that it supports building backend management pages with Php, which is the biggest attraction for backend developers like me who do not have much front-end experience. The AdminBuilder class library can be used to build management pages with pure php. Even more cool developers have improved their own AdminBuilder for the front-end.

Local OC background

4. foreground functions

In this regard, both of them only provide a basic demo, and OneThink provides a blog demo. The OC is more thorough. Only one demo module and one demo homepage are provided. However, the default OC style is even less fresh. it may be related to using the zui framework as the front-end.

OneThink does not provide a complete process for registration and logon. In this regard, OC is well-rounded. Multiple forms of registration and logon, third-party login, cropping of portraits, extended fields, and password modification are also supported. It is worth mentioning that OC also provides a message mechanism. after research, we found that it is implemented based on the polling technology. here, I think there is still room for improvement. However, it can basically meet my needs.

Data modification page

Message reminder menu

5. expansion

Speaking of extensions, I think OneThink is still doing well. OneThink has a lot of developer contribution plug-ins, which is a great competitive advantage. The OC, because it was just released, does not support this, but I tried to port the OneThink plug-in to the OC, and found that it is quite compatible. after all, the parent-child relationship is there.

However, the OC official team also worked hard to provide some built-in plug-ins, such as slice watermarks and space skin replacement. It is worth mentioning that the development team has improved some third-party plug-ins of OneThink and retains the author, which is more advanced than some so-called "sharing spirit.

6. Documentation

In this document, I personally feel that OC is not comparable with OneThink. First, the OC documentation is incomplete, which is a pain point of OC. Although the development team provides an offline document, it is still not detailed. It is much worse than OneThink. However, the group is updated every day, which is also good.

7. Developers

In fact, this comparison is unfair to OC. after all, the first version was launched a year ago, and OneThink has been released for a long time. However, I personally think that OC is still very promising as a user management system. after all, not every developer prefers to develop and maintain a user management system on their own, it is much easier to have a ready-to-use project.

8. Summary

By comparing the two open-source projects, I don't know if everyone is ready. From my personal point of view, whether it's a black cat or a white cat, it's a good cat to catch a mouse!

My personal selection suggestions:

1. if you are working on a CMS project, you should first choose OneThink. there is no doubt that, after all, there is no Module extension for OC, and it is difficult to integrate this part from OneThink.

2. if you want to create new projects that require a user system and have a large number of user interactions, choosing OC and the existence of OC will undoubtedly help you to save a lot of development time.


By comparing the two open-source projects, it is clear that OC is still below the silver bullet level, but recently I found that OC ranks first in the open-source China OSC @ Git PHP category, it is undoubtedly a good choice for developers.

At the end of this article, let me share my expectations for the future development of OC. The idea of modular system construction is good. if The OC development team can pay attention to developers and provide more support to developers, it is believed that more and more php developers will adopt OC, at the same time, we also hope that developers who have used OC can actively share function extensions so that OC can go further and further.

Related information:

OneThink: project homepage

Source code library:

OpenCenter: project homepage

Demo online

Source code library:

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.