# fluentform/4.3.17/app/Helpers/Str.php

Fluent Forms – Customizable Contact Forms, Survey, Quiz, &amp; Conversational Form Builder, version 4.3.17. 89 lines.

- Page: https://pluginprobe.com/plugins/fluentform/4.3.17/code/app/Helpers/Str.php
- Raw: https://pluginprobe.com/plugins/fluentform/4.3.17/raw/app/Helpers/Str.php
- Modified: 2022-10-18T12:22:58+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/fluentform/4.3.17/code/app/Helpers/Str.php#L10-L20`.

```php
<?php

namespace FluentForm\App\Helpers;

class Str
{
    /**
     * Determine if a given string starts with a given substring.
     *
     * @param string       $haystack
     * @param string|array $needles
     *
     * @return bool
     */
    public static function startsWith($haystack, $needles)
    {
        if (is_array($haystack)) {
            $haystack = implode(' ', $haystack);
        }

        foreach ((array) $needles as $needle) {
            if ('' != $needle && substr($haystack, 0, strlen($needle)) === (string) $needle) {
                return true;
            }
        }

        return false;
    }

    /**
     * Determine if a given string ends with a given substring.
     *
     * @param string       $haystack
     * @param string|array $needles
     *
     * @return bool
     */
    public static function endsWith($haystack, $needles)
    {
        if (is_array($haystack)) {
            $haystack = implode(' ', $haystack);
        }

        foreach ((array) $needles as $needle) {
            if (substr($haystack, -strlen($needle)) === (string) $needle) {
                return true;
            }
        }

        return false;
    }

    /**
     * Determine if a given string contains a given substring.
     *
     * @param string       $haystack
     * @param string|array $needles
     *
     * @return bool
     */
    public static function contains($haystack, $needles)
    {
        if (is_array($haystack)) {
            $haystack = implode(' ', $haystack);
        }

        foreach ((array) $needles as $needle) {
            if ('' != $needle && fluentform_mb_strpos($haystack, $needle) !== false) {
                return true;
            }
        }

        return false;
    }

    /**
     * Determine if a given string does not contain a given substring.
     *
     * @param string       $haystack
     * @param string|array $needles
     *
     * @return bool
     */
    public static function doNotContains($haystack, $needles)
    {
        return !self::contains($haystack, $needles);
    }
}

```
