Laravel Packages

Detect and Change Indentation With PHP

Published
Detect and Change Indentation With PHP image

The indentation package by Colin O'Dell is a PHP library to detect and manipulate indentation of strings and files:

This package is brand-new and I am not sure what the author's plans are long-term. I thought it was interesting enough to share if you need a package to detect (or change) the indentation type of a string or file:

use ColinODell\Indentation\Indentation;
 
$indentation = Indentation::detect(file_get_contents('composer.json'));
 
$indentation->getAmount() === 4; // true
$indentation->getType() === Indentation::TYPE_SPACE; // true
(string)$indentation === ' '; // true

You can also change indentation using this package for file:

use ColinODell\Indentation\Indentation;
 
$composerJson = file_get_contents('composer.json');
$composerJson = Indentation::change($composerJson, new Indentation(1, Indentation::TYPE_TAB));
file_put_contents('composer.json', $composerJson);

You can check out this package on GitHub at colinodell/indentation to learn more and experiment with it.

Paul Redmond photo

Staff writer at Laravel News. Full stack web developer and author.

Sponsored

serpapi logo
SerpApi

The Web Search API for Your LLM and AI Applications

Visit SerpApi

The latest

View all →
Decide with Jev: Laravel AI That Answers with a Probability image

Decide with Jev: Laravel AI That Answers with a Probability

Read article
JetBrains Air: Run AI Coding Agents in JetBrains IDEs image

JetBrains Air: Run AI Coding Agents in JetBrains IDEs

Read article
Memoize Tagged Cache Reads in Laravel image

Memoize Tagged Cache Reads in Laravel

Read article
Eloquent Refreshes: Load Generated Columns After Save image

Eloquent Refreshes: Load Generated Columns After Save

Read article
Laravel AI SDK 1.0 Adds Classification and Tool Approvals image

Laravel AI SDK 1.0 Adds Classification and Tool Approvals

Read article
Tagged Memoized Cache and Model Refreshes in Laravel 13.33 image

Tagged Memoized Cache and Model Refreshes in Laravel 13.33

Read article