41554 blogs · [
{
"id": "01a0873a-c8de-71b8-894d-e8250f973499",
"title": "PHP 8.6 release date and features",
"url": "https://benjamincrozat.com/php-86",
"published_at": "2026-09-01T16:57:19+00:00"
},
{
"id": "01a0873a-c8dd-7127-9a10-0e33efdcf818",
"title": "The New Debug Bar for Laravel",
"url": "https://benjamincrozat.com/new-debug-bar-for-laravel",
"published_at": "2026-08-31T19:31:50+00:00"
},
{
"id": "01a0873a-c8dd-7127-9a10-0e33f165ebc3",
"title": "Latest PHP version: current release and support status",
"url": "https://benjamincrozat.com/latest-php-version",
"published_at": "2026-08-15T09:28:36+00:00"
},
{
"id": "01a0873a-c8dd-7127-9a10-0e33f0923ec7",
"title": "PHP date format guide with practical examples",
"url": "https://benjamincrozat.com/php-date-format",
"published_at": "2026-03-20T17:00:42+00:00"
},
{
"id": "01a0873a-c8dd-7127-9a10-0e33f0ddfe5c",
"title": "How to trim strings in PHP with trim()",
"url": "https://benjamincrozat.com/php-trim",
"published_at": "2026-03-20T16:55:01+00:00"
},
{
"id": "01a0873a-c8dd-7127-9a10-0e33f2109fc0",
"title": "GPT-5.4 nano API quick start with a real workflow",
"url": "https://benjamincrozat.com/gpt-54-nano-api",
"published_at": "2026-03-18T00:00:00+00:00"
},
{
"id": "01a0873a-c8dd-7127-9a10-0e33f2a2c6a6",
"title": "GPT-5.4 mini API quick start with a real workflow",
"url": "https://benjamincrozat.com/gpt-54-mini-api",
"published_at": "2026-03-18T00:00:00+00:00"
},
{
"id": "01a0873a-c8dd-7127-9a10-0e33f324898c",
"title": "How to install Laravel Debugbar and keep it out of production",
"url": "https://benjamincrozat.com/laravel-debugbar",
"published_at": "2026-03-16T15:42:34+00:00"
},
{
"id": "01a0873a-c8dd-7127-9a10-0e33f3f0f33d",
"title": "How to use Blade components, layouts, props, and slots in Laravel",
"url": "https://benjamincrozat.com/laravel-blade-components-layouts-props-slots",
"published_at": "2026-03-16T14:52:57+00:00"
},
{
"id": "01a0873a-c8dd-7127-9a10-0e33f4da0ed2",
"title": "How to use hasManyThrough in Laravel with one clear example",
"url": "https://benjamincrozat.com/laravel-hasmanythrough",
"published_at": "2026-03-16T14:49:40+00:00"
},
{
"id": "01a0873a-c8dd-7127-9a10-0e33f50ce6d3",
"title": "How to generate PDFs in Laravel with DomPDF",
"url": "https://benjamincrozat.com/laravel-dompdf",
"published_at": "2026-03-16T14:46:37+00:00"
},
{
"id": "01a0873a-c8dd-7127-9a10-0e33f5bd7316",
"title": "How to seed realistic data in Laravel with seeders and factories",
"url": "https://benjamincrozat.com/laravel-seeder",
"published_at": "2026-03-16T14:41:07+00:00"
},
{
"id": "01a0873a-c8dd-7127-9a10-0e33f5d6b7be",
"title": "How to use subqueries in Laravel with real examples",
"url": "https://benjamincrozat.com/laravel-subquery",
"published_at": "2026-03-16T13:23:23+00:00"
},
{
"id": "01a0873a-c8dd-7127-9a10-0e33f65fb801",
"title": "How to use Redis in Laravel for cache, queues, sessions, and rate limiting",
"url": "https://benjamincrozat.com/laravel-redis",
"published_at": "2026-03-16T13:14:03+00:00"
},
{
"id": "01a0873a-c8dd-7127-9a10-0e33f68dc44e",
"title": "How to use pivot tables in Laravel with a real example",
"url": "https://benjamincrozat.com/laravel-pivot-table",
"published_at": "2026-03-16T13:09:30+00:00"
},
{
"id": "01a0873a-c8dd-7127-9a10-0e33f7320f10",
"title": "How to use isset() in PHP without getting tripped up",
"url": "https://benjamincrozat.com/php-isset",
"published_at": "2026-03-16T12:47:00+00:00"
},
{
"id": "01a0873a-c8de-71b8-894d-e8250238fab2",
"title": "How to extract part of a string in PHP with substr()",
"url": "https://benjamincrozat.com/php-substr",
"published_at": "2026-03-16T12:29:00+00:00"
},
{
"id": "01a0873a-c8de-71b8-894d-e8250329e59a",
"title": "How to check if a string contains text in PHP",
"url": "https://benjamincrozat.com/php-string-contains",
"published_at": "2026-03-16T12:28:30+00:00"
},
{
"id": "01a0873a-c8de-71b8-894d-e82503f45064",
"title": "How to decode JSON in PHP with json_decode()",
"url": "https://benjamincrozat.com/php-json-decode",
"published_at": "2026-03-16T12:28:00+00:00"
},
{
"id": "01a0873a-c8de-71b8-894d-e8250425e860",
"title": "How to join array values in PHP with implode()",
"url": "https://benjamincrozat.com/php-implode",
"published_at": "2026-03-16T12:27:00+00:00"
},
{
"id": "01a0873a-c8de-71b8-894d-e825049ebaf8",
"title": "Remodex makes Codex from my iPhone surprisingly usable",
"url": "https://benjamincrozat.com/remodex-review",
"published_at": "2026-03-15T13:25:00+00:00"
},
{
"id": "01a0873a-c8de-71b8-894d-e8250549ccdc",
"title": "The best analytics tools for growth teams",
"url": "https://benjamincrozat.com/best-analytics-tools",
"published_at": "2026-03-15T07:45:00+00:00"
},
{
"id": "01a0873a-c8de-71b8-894d-e82505d6ad35",
"title": "How to use AGENTS.md with Codex, Cursor, and Claude Code",
"url": "https://benjamincrozat.com/agents-md",
"published_at": "2026-03-14T18:17:04+00:00"
},
{
"id": "01a0873a-c8de-71b8-894d-e8250696e41e",
"title": "When to use AGENTS.md and skills",
"url": "https://benjamincrozat.com/agents-md-vs-skills",
"published_at": "2026-03-14T18:17:04+00:00"
},
{
"id": "01a0873a-c8de-71b8-894d-e825077b1104",
"title": "GPT Image API quick start with real outputs",
"url": "https://benjamincrozat.com/gpt-image-api",
"published_at": "2026-03-14T13:25:48+00:00"
},
{
"id": "01a0873a-c8de-71b8-894d-e8250785c812",
"title": "GPT Audio API quick start with a working example",
"url": "https://benjamincrozat.com/gpt-audio-api",
"published_at": "2026-03-14T13:15:03+00:00"
},
{
"id": "01a0873a-c8de-71b8-894d-e825082b440a",
"title": "GPT Realtime API quick start with a live workflow",
"url": "https://benjamincrozat.com/gpt-realtime-api",
"published_at": "2026-03-14T13:15:03+00:00"
},
{
"id": "01a0873a-c8de-71b8-894d-e825087247be",
"title": "GPT-5 mini API quick start with a real workflow",
"url": "https://benjamincrozat.com/gpt-5-mini-api",
"published_at": "2026-03-14T13:10:13+00:00"
},
{
"id": "01a0873a-c8de-71b8-894d-e8250966ded4",
"title": "GPT-5 nano API quick start with a real workflow",
"url": "https://benjamincrozat.com/gpt-5-nano-api",
"published_at": "2026-03-14T13:10:13+00:00"
},
{
"id": "01a0873a-c8de-71b8-894d-e8250a099f79",
"title": "GPT-5.3 Chat API quick start with a real workflow",
"url": "https://benjamincrozat.com/gpt-53-chat-api",
"published_at": "2026-03-14T12:36:21+00:00"
},
{
"id": "01a0873a-c8de-71b8-894d-e8250a40e7b8",
"title": "GPT-5.1 API quick start with a real workflow",
"url": "https://benjamincrozat.com/gpt-51-api",
"published_at": "2026-03-14T12:36:21+00:00"
},
{
"id": "01a0873a-c8de-71b8-894d-e8250b0a8422",
"title": "GPT-5.2 API quick start with a real workflow",
"url": "https://benjamincrozat.com/gpt-52-api",
"published_at": "2026-03-14T12:36:21+00:00"
},
{
"id": "01a0873a-c8de-71b8-894d-e8250b7f2523",
"title": "GPT-5.4 API quick start with a real workflow",
"url": "https://benjamincrozat.com/gpt-54-api",
"published_at": "2026-03-14T12:36:21+00:00"
},
{
"id": "01a0873a-c8de-71b8-894d-e8250c03f67d",
"title": "How to install Alpine.js in any project",
"url": "https://benjamincrozat.com/how-to-install-alpine-js",
"published_at": "2026-03-14T09:39:45+00:00"
},
{
"id": "01a0873a-c8de-71b8-894d-e8250c7e06e9",
"title": "Tailwind CSS moves quickly on Vite 8 support",
"url": "https://benjamincrozat.com/tailwind-css-vite-8-support",
"published_at": "2026-03-13T17:53:37+00:00"
},
{
"id": "01a0873a-c8de-71b8-894d-e8250d8ec0d0",
"title": "Laravel MCP feels polished, and the SaaS case is getting real",
"url": "https://benjamincrozat.com/laravel-mcp-review",
"published_at": "2026-03-13T08:12:28+00:00"
},
{
"id": "01a0873a-c8de-71b8-894d-e8250ca2ebbc",
"title": "Inertia.js v3 beta adds async requests, optimistic UI, and no Axios",
"url": "https://benjamincrozat.com/inertia-js-v3-beta",
"published_at": "2026-03-13T07:59:13+00:00"
},
{
"id": "01a0873a-c8de-71b8-894d-e8250e13f819",
"title": "Laravel Cloud drops credit card signup and loosens Git account limits",
"url": "https://benjamincrozat.com/laravel-cloud-credit-card-git-connections",
"published_at": "2026-03-13T07:48:39+00:00"
},
{
"id": "01a0873a-c8de-71b8-894d-e8250e742874",
"title": "Laravel 12.54 adds tsvector, better download assertions, and more",
"url": "https://benjamincrozat.com/laravel-12-54",
"published_at": "2026-03-13T07:41:39+00:00"
},
{
"id": "01a0873a-c8de-71b8-894d-e8251218ff63",
"title": "Is PHP dead? Usage statistics and market share (2025)",
"url": "https://benjamincrozat.com/php-is-dead-2025",
"published_at": "2026-03-12T17:49:51+00:00"
},
{
"id": "01a0873a-c8de-71b8-894d-e8250ee9933d",
"title": "Is PHP dead? Usage statistics and market share (2026)",
"url": "https://benjamincrozat.com/php-is-dead-2026",
"published_at": "2026-03-12T15:49:51+00:00"
},
{
"id": "01a0873a-c8de-71b8-894d-e8250f9bb87c",
"title": "Partial Function Application in PHP 8.6, made easy",
"url": "https://benjamincrozat.com/partial-function-application-php-86",
"published_at": "2025-12-06T23:38:00+00:00"
},
{
"id": "01a0873a-c8de-71b8-894d-e8250fb48ee1",
"title": "Laravel firstOrCreate, firstOrNew, createOrFirst and friends",
"url": "https://benjamincrozat.com/laravel-firstorcreate-firstornew-createorfirst-updateorcreate-updateorinsert",
"published_at": "2025-12-01T16:58:00+00:00"
},
{
"id": "01a0873a-c8de-71b8-894d-e82513027a19",
"title": "Git merge vs rebase: the only mental model you need",
"url": "https://benjamincrozat.com/git-merge-vs-rebase",
"published_at": "2025-11-26T10:27:00+00:00"
},
{
"id": "01a0873a-c8de-71b8-894d-e8251046f447",
"title": "The best Black Friday and Cyber Monday deals I found",
"url": "https://benjamincrozat.com/2025-black-friday-cyber-monday-deals",
"published_at": "2025-11-23T16:42:00+00:00"
},
{
"id": "01a0873a-c8de-71b8-894d-e82510815d3e",
"title": "The Laravel failover queue driver: stop losing jobs",
"url": "https://benjamincrozat.com/laravel-failover-queue-driver",
"published_at": "2025-10-16T13:37:00+00:00"
},
{
"id": "01a0873a-c8de-71b8-894d-e825116c87f1",
"title": "Style labels on focus the right way in CSS",
"url": "https://benjamincrozat.com/label-focus-css",
"published_at": "2025-10-07T16:30:00+00:00"
},
{
"id": "01a0873a-c8de-71b8-894d-e825127b9c2e",
"title": "The lh and rlh CSS units: simple spacing that follows your text",
"url": "https://benjamincrozat.com/css-lh-rlh",
"published_at": "2025-10-02T14:47:00+00:00"
},
{
"id": "01a0873a-c8de-71b8-894d-e8251352c9c5",
"title": "What’s new in Pest 4 and how to upgrade",
"url": "https://benjamincrozat.com/pest-4",
"published_at": "2025-09-30T14:48:00+00:00"
},
{
"id": "01a0873a-c8de-71b8-894d-e825137ec541",
"title": "How to deploy PHP & Laravel apps on Sevalla ($50 free credits)",
"url": "https://benjamincrozat.com/deploy-php-laravel-apps-sevalla",
"published_at": "2025-09-12T10:06:00+00:00"
}
] posts Claim your blog