TGViewer
Channel Public Channel
Amazing PHP

Amazing PHP

@phpme

Welcome to the Amazing PHP Channel! Here you can find a lot of interesting articles/news about PHP, frameworks, tools and development.

Support the channel: https://www.paypal.com/donate?hosted_button_id=FAYP5QJH5LVRL
Subscribers
7.68K
Photos
11
Videos
0
Links
84

Showing posts older than #189 · Back to latest

Older Posts 20 shown
Post #188 3.47K
Never type hint on arrays
Let's be controversial: In modern PHP, you should never type-hint an array.
Before you start throwing tomatoes, hear me out.
PHP allows you to specify the type of a function/method parameter or return value. These return values can be any legal PHP type, which includes any class or interface type, various scalars, and some fancy pseudo-types like callable and iterable.
Post #187 3.82K
A Docker-Compose PHP Environment From Scratch
Containerization. People are raving about it. But how do we get started? These Dockerfile things seem so foreign, and besides, how do we get different containers for our different services? After all, if we shoved them into one, it's kind of defeating the purpose.
Post #186 4.36K
Use associative arrays basically never
The other day I was working on some sample code to test out an idea that involved an object with an internal nested array. This is a pretty common pattern in PHP: You have some simple one-off internal data structure so you make an informal struct using PHP associative arrays. Maybe you document it in a docblock, or maybe you're a lazy jerk and you don't. (Fight me!) But really, who bothers with defining a class for something that simple?
Post #185 3.76K
WordPress Security As A Process
Last year, WordPress was responsible for 83% of infected content management sites. Make sure you’re not contributing to those infections and learn how to securely manage WordPress.
Post #184 3.38K
Intro to ReactPHP - Singapore PHP User Group
Speaker: Kok Wen Yen
Post #183 4.03K
Creating Domain Services
An important concept in Domain Driven Design is the modeling of domain logic in Entities and Value Objects.
As we’ve seen over the last couple of weeks, we can use Value Objects and Entities to model and protect the business logic of our applications.
Post #182 4.59K
​​Is Your Code Readable By Humans? Cognitive Complexity Tells You
Cyclomatic complexity is a static analysis measure of how difficult is code to test. Cognitive complexity tells us, how difficult code is to understand by a reader.
Today, we'll see why is the later better and how to check it in your code with a Sniff.
Post #181 3.97K
Learning Design Patterns with Symfony
Established in the 70's by the "Gang of Four", Design Patterns are general reusable abstract solutions to solve often recurring problems in software design. Object oriented frameworks leverage them to design robust, extensible and testable code, letting developers build their applications on top of solid foundations. In this workshop, you'll (re)discover tens of the original design patterns, why and how they're implemented in Symfony.
Post #180 3.48K
Picking the right API Paradigm
A while back I wrote an article called Understanding RPC, REST and GraphQL which outlined the "what" in how these various approaches differ. This got a few people thinking I was saying REST was drastically superior in all ways, which is a common conclusion when folks hear me describe REST as a layer of abstractions on top of RPC… More abstractions does not mean definitively "better", sometimes that's going to be overkill, so let's look at when you might want to use which.
Post #179 3.35K
5 PHP Coding Standards You Will Love and How to Use them
Setting a coding standard is very important in team development. Agreeing on one coding standard helps keep your code neat and easy to read and also makes it easy to see the difference in your code when reviewing them. Unfortunately, coding standards for PHP are different between frameworks and PHP versions.
Post #178 3.42K
​​What you need to know about environment variables with PHP
Environment variables for configuration are today’s best practice for application setup – database credentials, API Keys, secrets and everything varying between deploys are now exposed to the code via the environment, instead of configuration files or worse, directly hard-coded.
Post #176 2.95K
Cost and value of DocBlocks
Over the years I have added, updated, and removed a lot of DocBlocks. I have also suggested to add, update, or remove DocBlocks many times, as well as explained why I believe a DocBlock makes sense in one case, and doesn’t in another. In order to have a document I can refer to if I need to explain my reasoning again, I’m writing this blog post - maybe it’s of use for you as well.
Post #175 2.9K
​​Running the Laravel Scheduler and Queue with Docker
In Laravel, one of the tricky changes when switching from a virtual server to Docker is figuring out how to run a scheduler and a queue worker. I see this question come up quite a bit when PHP developers are trying to figure out how to use Laravel with Docker.
Post #174 3.04K
​​Automatic Testing Laravel Project use Codeception
As we know that Codeception is a framework that helps our performance in performing automated testing on PHP-based applications. As the statement on the website page, Codeception collects and shares best practices and solutions for testing PHP web applications. With a flexible set of included modules tests are easy to write, easy to use and easy to maintain. Codeception encourages developers and QA engineers to concentrate on testing and not on building test suite.
Post #173 3.51K
Insufficient Transport Layer Security (HTTPS, TLS and SSL)
Communication between parties over the internet is fraught with risk. When you are sending payment instructions to a store using their online facility, the very last thing you ever want to occur is for an attacker to be capable of intercepting, reading, manipulating or replaying the HTTP request to the online application. You can imagine the consequences of an attacker being able to read your session cookie, or to manipulate the payee, product or billing address, or to simply to inject new HTML or Javascript into the markup sent in response to a user request to the store.
Post #171 3.33K
​​Mapping Form Request to Eloquent
Laravel comes with API Resources to map an Eloquent object into a response. But what about the request? After struggling with this for a long time, I’m finally happy to introduce Bag!
Post #170 2.89K
Unpacking binary data in PHP
Working with binary files in PHP is rarely a requirement. However when needed the PHP ‘pack’ and ‘unpack’ functions can help you tremendously. To set the stage we will start with a programming problem, this will keep the discussion anchored to a relevant context. The problem is this : We want to write a function that takes a image file as an argument and tells us whether the file is a GIF image; irrelevant with whatever the extension the file may have. We are not to use any GD library functions.
Post #169 2.79K
​​PHPStorm tips for power users
A selection of less-known-yet-powerful features of PHPStorm.
Post #168 2.79K
​​Simple TDD in Laravel with 11 steps
Most web developers cringe when they hear of TDD (test driven development). Well, I did when I was asked to program with TDD first.
When you are starting off, it feels overwhelming. If you resist it, it will make it harder for you to learn it. So what should you do? Embrace it. Well, it has reason why it is there. There will always be debates on technology, whether the programming language or the process you will use to develop software.
Post #167 2.64K
​​We are already more than 1k. Wish you less bugs and more features.
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →