DEV Community

Lithe
Lithe

Posted on

2 1

Introducing Lithe SwissHelper: Simplifying PHP Development

Introducing SwissHelper

Meet Lithe SwissHelper, a lightweight yet powerful PHP utility library designed to simplify your development process. Whether it's string manipulations, array operations, data validations, or formatting tasks, SwissHelper has you covered. With a focus on developer experience and clean, readable code, SwissHelper is here to make common programming tasks easier.

Why Use SwissHelper?

  • Convenience: A comprehensive set of helper functions for everyday programming tasks.
  • Efficiency: Reduce code repetition and save development time.
  • Clarity: Write cleaner, more readable, and maintainable PHP code.

Installation

Getting started with SwissHelper is easy. Install it via Composer:

composer require lithephp/swisshelper
Enter fullscreen mode Exit fullscreen mode

After installation, include the Composer autoloader in your project:

require 'vendor/autoload.php';
Enter fullscreen mode Exit fullscreen mode

Key Features

1. Simplified String Manipulation

SwissHelper offers intuitive methods for processing strings. Here are a few examples:

  • Creating Slugs:
  $slug = str('Hello World!')->slug(); // Output: "hello-world"
Enter fullscreen mode Exit fullscreen mode
  • Extracting Numbers:
  $numbers = str('Phone: (123) 456-7890')->onlyNumbers(); // Output: "1234567890"
Enter fullscreen mode Exit fullscreen mode
  • Applying Masks:
  $masked = str('12345678901')->mask('###.###.###-##'); // Output: "123.456.789-01"
Enter fullscreen mode Exit fullscreen mode

2. Powerful Array Handling

Access and manipulate arrays with ease:

  • Nested Access:
  $array = ['user' => ['name' => 'John Doe']];
  $name = arr($array)->get('user.name'); // Output: "John Doe"
Enter fullscreen mode Exit fullscreen mode
  • Key Filtering:
  $filtered = arr(['a' => 1, 'b' => 2])->only(['a']); // Output: ['a' => 1]
Enter fullscreen mode Exit fullscreen mode

3. Data Validation

SwissHelper simplifies data validation with a robust set of validators:

  • Email Validation:
  validate('user@example.com')->email(); // Output: true
Enter fullscreen mode Exit fullscreen mode
  • Password Validation:
  validate('StrongP@ssw0rd')->password(); // Output: true
Enter fullscreen mode Exit fullscreen mode

4. Date and Time Utilities

  • Get Current Date:
  $currentDate = now('Y-m-d'); // Output: Current date in 'YYYY-MM-DD' format
Enter fullscreen mode Exit fullscreen mode
  • Manipulate Dates:
  $yesterday = now()->modify('-1 day'); // Output: DateTime object for yesterday
Enter fullscreen mode Exit fullscreen mode

5. Money Formatting

Handle monetary values effortlessly with formatting for various currencies:

$formatted = money(1234.56, 'USD'); // Output: "$1,234.56"
Enter fullscreen mode Exit fullscreen mode

6. Random String Generation

Generate random strings for various use cases:

$randomString = random(10); // Output: A 10-character alphanumeric string
Enter fullscreen mode Exit fullscreen mode

7. URL Utilities

  • Get Current URL:
  $currentUrl = url()->current();
Enter fullscreen mode Exit fullscreen mode
  • Generate URLs with Query Parameters:
  $urlWithQuery = url()->to('search')->with(['q' => 'SwissHelper']);
Enter fullscreen mode Exit fullscreen mode

Testing and Contributions

SwissHelper comes with a robust test suite. Run the tests with:

composer test
Enter fullscreen mode Exit fullscreen mode

Want to Contribute?

We'd love to have you on board! Fork the repository, create a branch for your feature, and submit a pull request. Follow PSR-12 coding standards to maintain consistency.

Join the SwissHelper Community

Try SwissHelper today and experience smoother PHP development. Share your ideas, report issues, and contribute on GitHub. Let's build something amazing together!


Find SwissHelper on Packagist: Lithe SwissHelper.

Sentry image

See why 4M developers consider Sentry, “not bad.”

Fixing code doesn’t have to be the worst part of your day. Learn how Sentry can help.

Learn more

Top comments (2)

Collapse
 
tessak22 profile image
Tessa Kriesel

Really nice utility library! Email validation is crucial for web security. At Arcjet, we've seen how proper email validation can significantly reduce spam and improve user authentication flows. SwissHelper's approach to making these utilities accessible is definitely valuable for the PHP community. Looking forward to seeing more features!

Collapse
 
lithephp profile image
Lithe

Thank you so much for the feedback! We're glad to know you recognize the importance of email validation for web security. SwissHelper was designed precisely to provide practical and accessible solutions for the PHP community. It's inspiring to hear that tools like this can help reduce spam and improve user authentication flows. We're working on bringing even more features soon!

Postmark Image

Speedy emails, satisfied customers

Are delayed transactional emails costing you user satisfaction? Postmark delivers your emails almost instantly, keeping your customers happy and connected.

Sign up

👋 Kindness is contagious

Explore a sea of insights with this enlightening post, highly esteemed within the nurturing DEV Community. Coders of all stripes are invited to participate and contribute to our shared knowledge.

Expressing gratitude with a simple "thank you" can make a big impact. Leave your thanks in the comments!

On DEV, exchanging ideas smooths our way and strengthens our community bonds. Found this useful? A quick note of thanks to the author can mean a lot.

Okay