Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

msl-mark's avatar

New to Laravel, but not new to PHP, just stuck in my ways. How to get started?

I've been working with PHP since v3. I have my own libraries for all sorts of stuff, and have built several web applications over the years. Current projects tend to make use of Smarty templating, Ractive.js and mqtt for displaying dynamic data, and so on.

I have over the years looked at frameworks (and Laravel is old enough that it's been on my radar for a long time). But despite - or probably because of - my experience, I always fail to "get" frameworks and go back to my old ways. I want to try and change that.

Laravel has extensive documentation but there's so much terminology which is new to my old brain that a couple of pages in it's all "blah blah". I follow instructions to build Hello World! type applications but I can't see how to build the bigger picture from it (in my case a multi-client multi-user system, displaying live dynamic data coming from MQTT). I don't have much experience with MVC (although use of Smarty templating means I'm at least used to separating content from code).

Learning new stuff doesn't generally bother me - in my day-to-day work, I work in a dozen different programming languages at any one time and learn new ones frequently. But there's a mind-shift I'm struggling with here that simply reading more docs or watching more videos isn't going to help with, unless they're targeted at someone like me (and I'm sure I'm not alone).

Any suggestions for a jumping-off point that might suit?

If it helps, I think I would find it easier to work backwards - starting with a fairly comprehensive working application built using Laravel, and breaking it down to understand the design choices and coding practises that got it there, rather than starting at Hello World! and trying to build upwards.

To be clear I'm not suggesting there's anything wrong with the documentation as it is, it's me that's the problem. But I can't be the only person stuck on the outside looking in!

0 likes
2 replies
Snapey's avatar

one thing you have not mentioned is your level of confidence with OOP - this is going to be a fundamental building block to get started with a framework like Laravel

I know you have used PHP in the past but it has changed A LOT and it would be worth skimming through a series such as https://youtube.com/playlist?list=PL3VM-unCzF8ipG50KDjnzhugceoSG3RTC and picking out lessons on concepts that might be unfamiliar and lessons like building a router and service container. These are not framework specific. Jeffrey teaches how to build these from scratch.

I don't think you could start with a complete project and work backwards because too much would be unfamiliar. You should start by building something, maybe replicating a project that you already have and resolve each unknown as you meet it

msl-mark's avatar

@Snapey I am familiar with OOP and use it extensively, but not religiously.

What I say about a complete project and working backwards - I could have worded it better. But I need to see the big picture first, rather than build towards it.

Looking at, for example, this website: obviously it has content which is visible to everyone, actions that are limited by user (and user type), content only available to specific users, etc. What is the (high level) description of how that works using Laravel? How would I build a trivial Laravel application which included those components? When I understand that at the high level, then the lower level steps towards it make more sense.

Your last sentence actually sums it up for me, as that's exactly what I want to do. I feel like a framework like Laravel will make it relatively easy to rebuild an application, but I don't see how it would do so, nor how I would judge whether Laravel is the right framework for me to invest the time in. I assume that something like Laravel would provide all the components I need to build a secure multi-user system so I can focus on the application code, but don't - yet - see how it would pull together.

Please or to participate in this conversation.