Thanks for this detailed tutorials, you are the only one that made me understand what name spaces means and why it's needed, it's very clever idea, and you simplified it a lot, Honesty more I watch a lot of UA-camrs from India doing tutorials about PHP and other technical stuff, most of them were on hurry or skipping important stuff beginners need it, you are the only one explain everything step by step.
Im happy to see this video on helping get organized. It helps avoid a backwards approach. What brought me here was my need for connecting a partials folder, having broke down my base html. Then the files started piling up, and I needed to get organized quick before I get too deep in the mud. I blindly tested organizing my files into folders thinking something gotta work. Then I found that include() is rendered useless if including from outside of the main directory. So I thought the approach spl had something to offer and learned the basics but this really answered my question towards modeling my organization. I just need to get my bootstrap to work in the subdirectories to stay organized. So I will do some playing around, something will give and somethings gotta work. Right now is the least amount of pressure in my studies learning code, mainly because I'm getting to freestyle variables after lots of practice, and it opens new doors in my mind, and really fades the struggles of learning. Rather than completely focused on class and learning to copy that; if finally get a chance to code some projects that are unique to me, and have more time to explore troubleshooting rather than worrying about passing grades in my studies, and all the hard work being able to read the code without blindness, just makes you feel worthy to explore the troubleshooting world without getting lost, and having abilities to understand the troubleshooting world. It's intriguing to me to find friends that are making these kinds of videos because are abilities really are questions that are a needle in a haystack. Thanks, I will post an update. About the solutions to my own answers I am searching for this help is leading me towards.
Thank you, for those who have question on how to include test class, just give it namespace "test" and then, use it inside psr-4 as "test\\": "./" Here "./" means same directory as composer.json and if you want to include everything automatically, just use the below code: "autoload": { "classmap": [ "./" ]
Awesome Lesson! Can you do one regarding escaping conflicts between 3rd party loaded libraries using namespaces? Such as WordPress plugins when they have the same libraries which autoloaded in the theme directory.
The best tutorial on this subject. Amazing delivery also. Thank you so much, Sir. May I ask please, if I have a folder for Classes, folder for Traits, another for Interfaces, how do I represent them in the psr-4 section of the composer.json file for autoloading? Can this load a functions.php file from a functions folder too?
Dear Sir, Thank you very much for the clearest tutorial on this subject anywhere. I structured my directories same as yours, Namespaces, same as yours. I then 'Composer update', everything looked alright. But when I ran "Composer dump-autoload", I got errors: Saying, Class app\appClasses\Darabase located in c:/code/app\appClasses\New Database.php does not comply with psr-4 autoloading standards. Skipping. What is wrong?
Wonderful handling of this great subject. Thank you very much Sir. But, may I ask: when you're uploading files to your hosting Server, would you upload also the Vendor folder and everything in it?
It's a shame you didn't respond to my question concerning "uploading" files! Still, I do have another concern. Maybe you will consider helping. In the classmap segment, you did not add the vendor directory! The classmap.php file did not show anything in the Vendor directory, as cached. Is the Vendor directory automatically cached, elsewhere or must it be included in the composer.json classmap segment?
I loved the whole video. However, I got lost at the end when you got to the composer implementation. I understand how this behaves in a dev environment that has composer running, however, on a production remote server, I don't believe it's expected to have composer installed and running on there. So, in that scenario, how do the classes get autoloaded? Do we have to simply deploy the vendor directory? I thought vendor directory is only for local environment? Is there a build command that builds a deployable file for the autoload? I'm just confused about that part.
Composer should be on your production server. With that in mind, if you use a versioning system like git, your vendor directory should be ignored by git. Now I don't know how to have psr-4 in development and classMaps in production but I'm sure there's a way.
Logic in the spl_autoload_register method.... No thanks! Kind of explains why all these freaking php frameworks are so slow. I'll stick to explicitly including my files. Having the autoload method in a separate file is evil. It's hiding information away. Not a criticism of the video author - this is how it's done in PHP. I just don't agree with it. Appreciated the info on namespaces - I use them a lot in C++ but PHP's implementation seems more powerful and very elegant. 👍
One of the best videos I have ever seen 👌
Hi Manzaa,
Thank you for your kind words, really appreciate it.
I hope I have earned your subscription.
Thanks,
TechnoTrax
When you find just the perfect explanation... Thank you man !
Excellent! Clear and concise explaination for all aspects of autoloading in a single video. 👍
Life was not easy without this.... Thnx man
Oops! I should watch this video very beginning to learn php autoload! Thanks for your kind explaination in all the way.
Thanks for this detailed tutorials, you are the only one that made me understand what name spaces means and why it's needed, it's very clever idea, and you simplified it a lot, Honesty more I watch a lot of UA-camrs from India doing tutorials about PHP and other technical stuff, most of them were on hurry or skipping important stuff beginners need it, you are the only one explain everything step by step.
Now i finally understand it. This is by far the clearest explanation video for the start with composer and namespaces! Thank you!
I've been searching this topic tutorials for 2 days and I just found yours.
this is just most beautifully explained. I can't thank you enough ❤️
Im happy to see this video on helping get organized. It helps avoid a backwards approach. What brought me here was my need for connecting a partials folder, having broke down my base html. Then the files started piling up, and I needed to get organized quick before I get too deep in the mud. I blindly tested organizing my files into folders thinking something gotta work. Then I found that include() is rendered useless if including from outside of the main directory. So I thought the approach spl had something to offer and learned the basics but this really answered my question towards modeling my organization. I just need to get my bootstrap to work in the subdirectories to stay organized. So I will do some playing around, something will give and somethings gotta work. Right now is the least amount of pressure in my studies learning code, mainly because I'm getting to freestyle variables after lots of practice, and it opens new doors in my mind, and really fades the struggles of learning. Rather than completely focused on class and learning to copy that; if finally get a chance to code some projects that are unique to me, and have more time to explore troubleshooting rather than worrying about passing grades in my studies, and all the hard work being able to read the code without blindness, just makes you feel worthy to explore the troubleshooting world without getting lost, and having abilities to understand the troubleshooting world. It's intriguing to me to find friends that are making these kinds of videos because are abilities really are questions that are a needle in a haystack. Thanks, I will post an update. About the solutions to my own answers I am searching for this help is leading me towards.
The best video about Autoloading and Namespace i've seen, so well explained thanks a lot !!!!
Thanks, a very good explanation. I started to get a bit impatient halfway, but I am glad I watched everything after all.
Excellent video, you really illustrate the problems with traditional autoloading first, nice one.
Very solid and extremely simple to follow and understand. Well done and thank you.
thanks for create this video about autoloading and namespace, that's clearly and helpfully i think
Thank you, for those who have question on how to include test class, just give it namespace "test" and then, use it inside psr-4 as
"test\\": "./"
Here "./" means same directory as composer.json
and if you want to include everything automatically, just use the below code:
"autoload": {
"classmap": [
"./"
]
Wow! It's awesome. Nice explanation. Thank Your for your effort.
Clear and Easy to understand 💞
Incredibly useful.
Absolutely brilliant!!! Thanks a lot for this.
You're very welcome! Hope I have earned your subscription :)
thank you sir for this beautiful video
Absolutely excellent.
Perfect tutorial about php namespace. subscribed 🔥
Thank you so much!
Thx alot... You really helped me.
Very good tutorial!
great tutorial
Perfect dude.
Thanks!
Thanks man! Awesome explanation :)
I hope you will continue making video !!!
very great tutorial
I subscribed bcz of the awesome content
Thank you so much! I am glad you liked the video.
Nice tutorial, I had to subscribe.
Thank you
Awesome Lesson! Can you do one regarding escaping conflicts between 3rd party loaded libraries using namespaces? Such as WordPress plugins when they have the same libraries which autoloaded in the theme directory.
man thank you so much.
old but gold
The best tutorial on this subject. Amazing delivery also. Thank you so much, Sir.
May I ask please, if I have a folder for Classes, folder for Traits, another for Interfaces, how do I represent them in the psr-4 section of the composer.json file for autoloading?
Can this load a functions.php file from a functions folder too?
very nice video my friend, thanks
Important concept
Bloody awesome.
Dear Sir,
Thank you very much for the clearest tutorial on this subject anywhere.
I structured my directories same as yours, Namespaces, same as yours.
I then 'Composer update', everything looked alright.
But when I ran "Composer dump-autoload", I got errors:
Saying, Class app\appClasses\Darabase located in c:/code/app\appClasses\New Database.php does not comply with psr-4 autoloading standards. Skipping. What is wrong?
Wonderful handling of this great subject.
Thank you very much Sir.
But, may I ask: when you're uploading files to your hosting Server, would you upload also the Vendor folder and everything in it?
It's a shame you didn't respond to my question concerning "uploading" files!
Still, I do have another concern. Maybe you will consider helping. In the classmap segment, you did not add the vendor directory! The classmap.php file did not show anything in the Vendor directory, as cached.
Is the Vendor directory automatically cached, elsewhere or must it be included in the composer.json classmap segment?
Best
I loved the whole video. However, I got lost at the end when you got to the composer implementation. I understand how this behaves in a dev environment that has composer running, however, on a production remote server, I don't believe it's expected to have composer installed and running on there. So, in that scenario, how do the classes get autoloaded? Do we have to simply deploy the vendor directory? I thought vendor directory is only for local environment? Is there a build command that builds a deployable file for the autoload? I'm just confused about that part.
Composer should be on your production server. With that in mind, if you use a versioning system like git, your vendor directory should be ignored by git. Now I don't know how to have psr-4 in development and classMaps in production but I'm sure there's a way.
Sir please make 1 more video, how to export excel sheet from PhpSpreadsheet library in Codiginitor 4.1.1.
Its like am cheating on the namespaces explanation cause others don't explain the pattern in simple terms. thanks
Amazing tutorial but I have a problem when the namespace is nested I get failed to open stream: No such file or directory can anyone help please?
It probably means that your namespaces are not matching your directory structure. Please note that it is case sensitive.
Logic in the spl_autoload_register method.... No thanks! Kind of explains why all these freaking php frameworks are so slow. I'll stick to explicitly including my files. Having the autoload method in a separate file is evil. It's hiding information away. Not a criticism of the video author - this is how it's done in PHP. I just don't agree with it. Appreciated the info on namespaces - I use them a lot in C++ but PHP's implementation seems more powerful and very elegant. 👍