Reputation: 1189
I've learnt the basic of PHP from a library book w3schools. I'm also aware of how to use HTML, CSS, Javascript and MYSQL.
What will a PHP framework help me do, in respect to creating my own web app that allows me to keep track of my own achievements?
Upvotes: 0
Views: 1891
Reputation: 29121
Honestly, I think you're better off using straight up PHP/MySQL. Until you get really comfortable with PHP (and especially if you're making this web app for yourself), using a framework is overkill and will hinder your learning of PHP.
Don't get me wrong, frameworks are the way to go after you get a good understanding of PHP, but you have to start by understanding the basic building blocks.
Upvotes: 4
Reputation: 23120
Frameworks help to structure big applications. But learning to use a framework is like learning a new language. When you master it, you productivity can increase a lot. But before that, you will spend hours trying to understand how to do specific things. And remember, you have to understand how the framework is intended to work, and you have to adhere to this way.
Frameworks will help you to write more secure and more robust applications, to have better error handling, to reuse common codes, to cache you pages, to simplify database access, etc. But for small projects, they can be overkill.
Most of the time, you have to know about MVC structure. Most frameworks use a single entry script, and parse URL to get the right page, and use templates to display it. Those are concepts you should be familiar with.
Upvotes: 2
Reputation: 5188
I'd say to begin with you should make sure you're confident in writing good, secure, basic apps without a framework.
For instance learn how to use sessions, database abstractions (prepared statements), sending secure emails, OOP etc before you jump to a framework that'll do it for you.
It's all good having Zend/Symfony/CI/Kohana do most of the every day chores but you need to know how to do those chores in case you ever have to do it yourself. It's also a good idea to understand the complexities behind what you're asking a framework to do.
Having said all that, when you're ready, I'd go with Codeigniter. The step up isn't too heinous from scripted PHP and while many people will tell you it teaches bad practices, I don't agree. It'll give you a decent introduction to MVC without overwhelming you.
The one thing to ignore is the bit of the CI documentation that says
Models are optionally available
This is absurd and if this is the case you may as well not call it a framework, it would just be a bunch of handy libraries.
Upvotes: 0
Reputation: 12417
You should first find a framework you want to learn :-) So many frameworks are there. Learn OO PHP first , try pear class and some OO examples. Then First you try a simple one like CodeIgniter
Then try Zend or symphony .
framework will help you to use their classes and functions which will be much reusable.
Upvotes: 0
Reputation: 20102
learn the basics of the MVC pattern. Almost all the frameworks follow (in one way or another) this pattern. learn some basics on XML,JSON, AJAX, a Javascript Framework, url rewriting, SQL (very important).. there's so much to learn... but dont use w3schools to learn, just use it as a reference
Good Luck!
Upvotes: 0
Reputation: 86336
Frameworks are done with the generic things for you to start up an application.
The are ready with the basic structure and the foundation of your application. such as database connection, querying to database, sending mail, receiving user requests, URL management, some javascript frameworks such as jquery, prototype etc.
You only have to build the real modules of your application using the provided libs by frameworks.
Although they have some convention to follow.
Upvotes: 0