Welcome Guest, Not a member yet? Register   Sign In
I'm new to PHP, should I use this software?

Hi I am very new to PHP but I am very passionate about learning it.

I have already learned some basics in regards to MySQL databases and tables, as well as some PHP basics about variables and conditional statements.

I am currently working on coding my own blog. The only code I have written before is a simple contact page that uses sendmail.

My question is, as a newb to PHP should I just jump right into CodeIgniter?

All feedback would be appreciated.

[eluser]Phil Sturgeon[/eluser]
Well yes, it can be a very good way to start. The benefit is that CodeIgnitor will obviously save you a HUGE amount of time and you will skip the need to learn alot of things.

However for the same reason thats good, you can see why its bad. you will not learn many of the things that could prove very helpful in the future.

Also its useful to get to grips exactly with the extent of CI's features. You will spend ages asking on here finding out how to do something with CI which is covered in pure PHP.

IMHO, read ALL of the PHP manual (well, the non-obscure bits) then come here, read it ALL THEN start using CI.

[eluser]Matthew Pennell[/eluser]
I'd agree - learning PHP through the prism of Code Igniter will not make you a competent PHP developer, it will just make you a Code Igniter developer. You need to understand what is going on 'under the hood' to really get the most out of a framework (and the same is true of all language frameworks, such as the JavaScript ones or even .NET).

learning php through code igniter is like using linux with the visual interface without messing around with the command lines .... Also programing without an algorithmical logic is like copy / paste-ing some stuff without understanding them good.
PS... at an exam u always start with the easy stuff first, then you try the harder stuff... if u begin with the hard stuff u end up wasteing a lot of time and patience.

If you haven't got any previous programming experience i think it's best you learn first about object-oriented programming and design patterns before you dive into CI. Those two are more important for programming using CI than knowing all the php functions.

Of course the basics like loops, arrays, getting data from forms and urls, ... are essential knowledge.

I think as a newcomer to php you should use only the database and the load library as helpers and write the rest of the code on your own. You will have the benefit of using the MVC pattern and learning the basics of php. It will not be production code but that will come as you move on.

Thanks guys. I havent read much of the PHP manual, because I'm more the type of person who learns from doing tutorials and looking at source codes. That is how I learned HTML and CSS.

I would read as much of the Manual as you can, even if it doesn't stick - months down the road when you get an error looking like this:

Quote:PHP Parse error: syntax error, unexpected T_STRING, expecting T_PAAMAYIM_NEKUDOTAYIM

You might have a noggin' moment, something like this: "I remember seeing something like that in the manual a very long time ago!"

It happens for me often - where old fragments of text stick in my mind (not the whole thing) from skimming over the manual.

With the hope that this might stick, the T_PAAMAYIM_NEKUDOTAYIM is Hebrew (the official name in the PHP world) for this: "::" the double colon or the scope resolution operator or the static or class-constant reference.

Set a goal for yourself. Define each part of that goal and then set about searching the manual and googling for tutorials on it - that is how I self taught my self. I went through about a gazillion revisions of my original goal, but, here I am employed for it now...

Code Igniter is awesome - and who cares if you don't know all of PHP if all of this is just a hobby. If you plan to be skilled with it, and possibly making money with it, then do care about knowing how CI works and ultimately about PHP - about how the array keys are turned into variables when passed to Views or how the URI is mapped to your Controller/Method/Parameter or how the Validation library works.

I have only been doing this stuff for 2 years and despite my lack of experience, just taking the time to read the manual and painstakingly debug my code (with print and exit()) has greatly enhanced the fun and possibilities that are open to me.

[eluser]Christopher Blankenship[/eluser]
One thing that wasn't really fully covered in the posts is : What if you would like to extend CI or possibly contribute an idea you have? For that you would really need to have a strong base granted CI will get you there fast. But as a suggestion after the project is done, go back and find out how you would have done the same thing with Pure PHP. You will find that the time you saved will allow you to this to learn more.

I myself started with Pure PHP and wrote an entire functions library for myself. Even since I have started using a proprietary PHP framework at work and CI at home. I continue to add additional functions to my old library I think it keeps me actively working with PHP. If you don't use it you loose it...In my opinion.

[eluser]Derek Allard[/eluser]
My opinion (for what its worth) - I think that you could learn PHP with CodeIgniter, provided you paid careful attention to the "whys" and less on the "how" during the learning. I wrote about it on my blog once.

[quote author="Derek Allard" date="1183448673"]My opinion (for what its worth) - I think that you could learn PHP with CodeIgniter, provided you paid careful attention to the "whys" and less on the "how" during the learning. I wrote about it on my blog once.[/quote]

Possible by using CodeIgniter as a point of comparison and reference, but I'm not sure this will work for every person--some people tend to have natural skills where they can reverse engineer just about anything, not just programming code. They can look at any finalized result (product) and break it apart mentally to get to the mechanics of why and how it was created. The original poster sounds like one of those people.

However, you still need to know the basic fundamentals of programming to get to the point where you can say 'why' and extensions to those basics are summarized in xwero's post about learning object-oriented programming. About learning other programming languages, learn the basic fundamentals of one language and relate what you already know (a point of reference) to any new language (a point of comparison). If you have a solid foundation in knowing the basics, learning new languages gets fairly easy and almost natural as you get involved in projects where the use of multiple programming languages becomes necessary.

Theme © iAndrew 2016 - Forum software by © MyBB