My first #PHP was 8.0, still in school, and I confess that I began learning it with the prejudice of it being a junky, terrible language everybody was making fun of. Fast forward ~1 year later, after finishing my internship, where I used full stack #Laravel mainly, and having discovered that not only it wasn't that bad, but really a pleasure to work with. Not perfect, but perfectly suitable for its use cases and, what's perfect anyway? So reading this has been a joy. :D https://developerjoy.co/blog/php-doesnt-suck-anymore
@array@hydrian@blu256 Yeah! The way I run SQL stuff is with my own thin wrapper class over PDO, which instead of a SQL query takes a name of a SQL file, but still passes data through via prepared statements and via sanitization.
@ntha@hydrian@blu256 That's great! In Java I'm using dedicated validation classes, then declaring the SQL statements as constants in its own package with placeholders when needed, and then service classes which use the PreparedStatement interface. These are finally called by the servlets, and the data is passed to .JSP views. There's a bit more going on (I have some extra interfaces and factories), but that's the gist of it. Going minimal is great for experimenting and getting a better grasp!
If you were about to start a medium-sized #PHP project, what would you choose as an #ORM, and why? It should be something stable and well maintained. If the business takes off, then there should be no need to replace that layer.
Caveat: imagine that Doctrine and Eloquent haven't been invented yet.
@oliver Absent Doctine, I'd build the the thinnest layer on top of Postgres I can that gives me typed values. No mapping logic, no ORM hooks, just easily packaged and mockable SQL.
@derflocki there are a couple reasons why I do not use SQLite. First the package needs no dependencies, two, the feature was already present in the package like 7 years ago I only updated the UX around it and last but not least I seldom encounter CSV that adheres fully to the draft/informal RDC. Hence using the SQLite extension would not solve CSV parsing in real world IMHO.
@sarah I have a recurring job that (a) runs pgdump, and then (b) uses logrotate to rotate backups and expire old archives. This runs on a mounted s3fuse volume, which gives me backup to, in my case, DO spaces.
Non riesco a configurare il server integrato di eclipse PHP su ubuntu based. Quando aggiungo un modulo e ne faccio il publish non viene copiato tutto il contenuto nella tmp del plugin, non permettendomi di testare gli script. Viene copiata solo la cartella di root del modulo, ma resta vuota. Non capisco dove sbaglio.
@maxalmonte14@sirber It's honestly the most boring modern language. Java with less crappy syntax. There's some bits of it that are weird, but otherwise it's just kinda... Fine? Not exciting or interesting, just... Fine.
@heiglandreas "Those aren't dependencies of your application. Just tools..."
Fair, but also, if I remove development dependencies from the my projects if they're just tools then those projects no longer have development dependencies.
Which I guess leads me to "what are development dependencies for if not things needed for development?"
From the small to the mighty, #TYPO3 developers are all part of a bigger story. 🧡
We're expressing appreciation for all the developers who contributed to the #TYPO3 project in the last month, and presenting April’s most important names and some numbers: https://typo3.com/blog/april-2024-developer-appreciation-day-dad
I need to remember that Mastodon exists! I’m currently writing a bunch of content to do with PHP and this would be the perfect place to talk about that.
I’m currently trying to decide whether #php#reflection is an interesting enough topic that people may like an in-depth course/series on it. It seems to be something a lot of people are vaguely aware of, but don’t really know the details.