Which Parts Of Php Not To Learn?

Guys,

After getting putoff from php.net to learn php 7 (because it is not beginner friendly) and raoming around youtube for 1.5mnth to learn php and failing to get proper tutorials there, I returned to php.net. Was reading the CONSTANT chapter and really got pissed-off.
Read this page and tell me if it is a beginner friendly tut or not:

PHP: Constants - Manual

I find contributor’s quarreling in the comments of what works and what not. Obviously, one of them is right and the other wrong. Now, question is, why did php.net put the arguments of the incorrect person in front of us getting us newbies to read quarrels of an incorrect programmer going back and forth with the correct programmer ? Result ? Newbies get confused and put-off from php. Php seems like a neverending mess!
Anyway, I have come to the conclusion not to get my tutorial from there. Can use php.net as a reference in the future once more experienced. And so, heading towards tutoprialspoint.com.

This however, just lists the newly added features on php 7 and so no good to me:

And so, I guess you guys would recommend:

But, looking at the chapters in their list, which ones (functions, etc.) are deprecated in php 7 so I shouldn’t bother with them ? Do you mind pointing-out the chapters and their links from their tutorial ? You can find their chapters on the leftside of their page:

http://www.tutorialspoint.com/php

And no, phptherightway.com is not for beginners as it assumes you kno php 5 etc. which I don’t.

Thank You!

PS - Remember, other newbies would find your contributions here and hopefully give you good rating.

Well no. In programming, two or more approaches can easily be correct, they just have different trade offs. And it is certainly possible that both can be wrong. Enjoy your ambiguous life.

1 Like

I think you may be going about things in a less than optimal way. For the most part php.net is not a tutorial site, it is documentation. The User Supplied Notes are just that, user supplied. In many cases they can be helpful but there is no guarantee that they are authoritative.

IMHO as you seem to be somewhat obsessed with “version 7”, the best way for you to proceed is:

  • install a localhost server on your computer
  • set it up to run PHP version 7.x
  • make sure you have full error reporting enabled in both your ini settings and in your script files
  • start coding

As long as error reporting is used PHP will let you know when there is an error or when you are using something that is deprecated. Don’t let a feeling that you need to know everything first get in the way of your learning.

9 Likes

If you see a tutorial that uses function names containing “mysql_” then don’t go near them tutorials with a barge pole as they’re using the now removed (as of PHP 7) MySQL extension. The current options for interacting with a MySQL database is either the “mysqli_” (MySQL Improved) extension (note the “i” in there) or PDO. For either of them two options you should use prepared statements

1 Like

I picked tutorialspoint.com to learn from as others suggested it but that does not even teach the DATA TYPES which is the most basic. Now, you tell me where to learn php from ?

I get the impression this is your first computer language because I find the Php Manual is excellent compared with many others.

I wholly agree with @Mittineague and to create a Php project that you are very familiar. Hobbies, songs, movies, etc are good subjects and you will be able to concentrate on the php errors.

Don’t forget to use the following file wide syntax:

<?php

declare("strict_types"= 1); // check the syntax

I find the above use of the numeric instead of a Boolean is one of Php’s ambiguities as @ahundiak mentioned.

I hope you have fun learning, it is a really good language :slight_smile:

Are you referring to the data types that you need to specify in mysqli_*'s bind_param? Because if it is, the manual from php.net for mysqli_* is pretty self explanatory. It’s a great example to refer back to. If you want a full-blown tutorial as to what you need to use and when not to use it, php.net’s manual IS NOT for you. You will have to learn that stuff on your own.

It took me 3 years to learn the basics of PHP and there are a large number of functions that I still don’t know how to use yet and there are a lot that has been introduced in PHP 7.

It took me 2 - 3 years after that to switch from Procedural to OOP. So if you’re planning on just learning from tutorials, that’s probably not going to work. You need to comprehend basic usage and basic logic to even get past 1 year.

And seeing that you ONLY want to focus on fixing up your PHP codes, I highly doubt it’s going to matter much because you are tackling a language that is far out of your scope. I HIGHLY suggest you learn HTML & CSS FIRST before you start “fixing” your PHP codes.

If you keep insisting on “fixing” or “learning” just PHP 7, then I highly doubt it’ll go any where and we’ll always be back where we started. You honestly NEED to learn HTML & CSS FIRST. Then you can start learning PHP, because right now, you are struggling with even the simplest of HTML.

2 Likes

Haha I can feel identified with that. I had been using a function of my own for 4 years before knowing that array_replace_recursive even existed. PHP is awesome for the humongous amount of string and array manipulation functions that it has. Not sure how server side JavaScript can even start to compete with that.

Data Types. You ask what I mean. I mean a tut for beginners (and not a reference manual like php.net) I need that cover these topics:

http://php.net/manual/en/language.types.php

I said many times before, I was having problem finding a proper php tutorial site that taught php 7 as most tut sites are unupdated and teaching php 3 or 5 and php.net was not suitable as it is a reference site for intermediate/adv people who already know php. When folks started suggesting I learn php 7 from tutorialspoint.com and phptherightway.com I pointed-out those sites assume I know previous versions of php and so not suitable for newbies, some either suggested I learn from php.net (thus I had to repeat my refusal) and some agreed not many sites they’re aware teach php 7 (those that do only teach what is new in php 7 and do not teach the whole lang) and I should look into those sites teaching php 5. I then had to repeat my refusal to learn php 5 from php 5 tut sites because I do not want to learn deprecated stuffs dropped from php 7 and I do not want to learn php 5 syntax and then learn php 7 syntax and get confused. I assumed php 7 syntax was more refined and different than previous versions but most recently programmers assured me the syntax is still the same and I should start learning to walk from php 5 tut sites since they start from the beginning (“Hello World!”) and I can then migrate to php 7 tut site and learn what is different (new features). After a lot of beating round the bush and starting to believe them that syntax on both versions are same I headed to php.net lastnight and found it totally a put-off. I then took everyone’s advice and headed towards tutorialspoint.com and ignored the php 7 what is new in php 7 tut and glanced over to the php 5 tut instead. But to my dismay found it has no chapter on Data Types the very fundamental chapter and so I felt down again and decided to try another site. But before I try another, I thought best I gather the list of deprecated features that didn’t find their way onto php 7 as that way I won’t waste time learning old deprecated stuffs. Now, even though php 7 tut sites (that only teach what is new in php 7 - sites like tutorialpoint.com’s 7 tut and phptherightway.com) list the modern new functions but do they list each and every deprecated stuffs ? I do not think so. And so I’d accidently start learning old stuffs. Need to avoid this. Hence, the reason for opening this thread. Smart thing to do, you no should agree.
I just been told by a programmer to read the migration sections in the php.net documentation for a list of deprecated stuffs.
Btw, non-one can say that, I did not do enough to just go and learn php rather than waste time talking about it. Even now, I have sat infront of my computer to learn as much as I can from tutorialspoint.com if I can’t find any better. I just thought best check the forum for you guys’ inputs before embarking on my learning venture. That way, I can have oldbie programmers advice roaming in my head while I search for the perfect or near perfect tut sites.
You are welcome to suggest a site. Remember, all tut sites, books, vids are not same in quality and some teach bad practice and so I must be very careful where I step.
I repeat: As for now, heading towards tuttorialspoint.com unless you guys know of a better site than it and phptherightway.com.

Oh! When I asked what not to learn, I meant which functions and extensions not to learn due to them being ditched. Mysql I know I should not learn as it has been replaced with mysqli. Those are the things I mean when I say what I should not learn. Someone just suggested I avoid tuts on ereg and mysql_*. I know it is mysqli nowadays and pdo. Learnt pdo is safest for PREPARED STATEMENTS to prevent sql injection.

As for me using sql queries with variables, the only other way to avoid that is do PREPARED STATEMENT stuffs (if I understood correctly) but to do that I need to learn PDO from tut others suggested. I checked out the tut few nghts ago but the subject is not for beginners. Therefore, have not changed my code to replace using sql queries with variables as I do not know how to substitute it with PDO yet. Hence, went back to learning the basics lastnight. Once that is out of the way, I can then look into PDO and PREPARED STATEMENTS. As for now, my codes in that subject would be untouched and so ignore that aspect of my code and look into other parts that relate to the subject of the thread opened.

Cheers.

Why did I fuss over php 5 and php 7 syntax thinking they’re not same syntax ? Because, I saw youtube tuts teaching mysqli procedural way and I saw OOP way that mostly uses → and assumed the latter is php 7 syntax and the former php 5 and earlier. But I now, after bugging programmers, learnt the 2 different styles are not due to versions but procedural and oop styles. Hence, the fuss to find a php 7 tut site that teache the whole lang (and not just what is new in php 7) is out the window.

Now, everybody are welcome to suggest a php tut that was built during php 5 error and not earlier.
Avoid phptherightway.com, php.net and tizag.org. Tutorialspoint.com I am sticking to as of now, unless anybody here can recommend a better site.

I am afraid there are no sites, tutorials or books to meet your strict standards in education.

I think you are right that there is not a ton of beginner tutorials and training specifically starting with PHP7. It’s still pretty new and I suspect good training is still forthcoming.

You might be better off looking for PHP books rather than online tutorials? Books tend to be faster to market. But there are also some decent courses I’m sure. For example https://www.udemy.com/php-for-complete-beginners-includes-msql-object-oriented/

If you were to learn 5.6 as a beginner, you’d be just fine. By the time you get to intermediate and higher levels, learning some additional differences of PHP7 won’t be that big of a deal since you’ll be used to how the language works.
There is not much that is completely deprecated AND removed between 5.6 and 7. The skills will transfer just fine, and most cheap hosts aren’t even on PHP7 yet or have that as an option. If you browse job postings or look on github for projects to work on, very few will demand only PHP7 support.

It’s kind of like this. If you learn mechanics but study on junkyard cars and trucks that are 20 years old, then suddenly you need to work on a 5 year old engine, you will have enough foundational knowledge to figure out the modern stuff much easier because “mechanics”, in general, is transferable knowledge.
When we had to stop using mysql_ functions and switch to mysqli_, it wasn’t exactly earth-shattering. 90% of the time we just renamed the function call. It wasn’t a huge learning curve. Moving to PDO is a small learning, there are a few concepts to learn, a couple extra functions to call.

Once you have some good foundational knowledge of PHP and can work with code and build small apps or whatever, those skills will transfer to PHP7 just fine. You just read up on some of the differences and things you can do, and then update your code if you like.

I’ve been using PHP since late 90s, 2000s, probably started on version 3. It’s not like the training I’ve done or books read are worthless just because they are superseded eventually. It’s all just experience and evolution of knowledge.

You can study a PHP 5.4 course and then get stumped on a PHP7 project just as easily as you could study PHP7 and then have to work on an old 5.4 project and get stumped. As a programmer, you may have to work with code written to any given version by any given programmer at any given skill level. It won’t hurt you to learn something that’s slightly out of date. Just keep learning and updating your skills over time!

phptherightway is a great resource. You can be out of the “beginner” designation in a month or two and those resources will make much more sense then.

If one course doesn’t cover a topic well enough, then you go search out just that topic, or post in your class forums and the instructor will help out!

PHP is literally known to be a language so easy to learn that lots of people learn “just enough” to start writing sloppy, insecure code almost right away. You can start dumping stuff into variables and spitting out text to the page in about 10 minutes. A question/answer word game is a one-session exercise.

Don’t be discouraged! Just ask questions and the people here love to help! I’m also sure you haven’t exhausted all the possible decent PHP tutorials on Youtube, keep hunting!

4 Likes

This topic was automatically closed 91 days after the last reply. New replies are no longer allowed.