# rsvp/2.7.5/external-libs/spout/src/Spout/Common/Helper/StringHelper.php

RSVP and Event Management, version 2.7.5. 68 lines.

- Page: https://pluginprobe.com/plugins/rsvp/2.7.5/code/external-libs/spout/src/Spout/Common/Helper/StringHelper.php
- Raw: https://pluginprobe.com/plugins/rsvp/2.7.5/raw/external-libs/spout/src/Spout/Common/Helper/StringHelper.php
- Modified: 2022-01-11T13:45:40+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/rsvp/2.7.5/code/external-libs/spout/src/Spout/Common/Helper/StringHelper.php#L10-L20`.

```php
<?php

namespace Box\Spout\Common\Helper;

/**
 * Class StringHelper
 * This class provides helper functions to work with strings and multibyte strings.
 *
 * @codeCoverageIgnore
 *
 * @package Box\Spout\Common\Helper
 */
class StringHelper {

	/** @var bool Whether the mbstring extension is loaded */
	protected $hasMbstringSupport;

	/**
	 *
	 */
	public function __construct() {
		 $this->hasMbstringSupport = extension_loaded( 'mbstring' );
	}

	/**
	 * Returns the length of the given string.
	 * It uses the multi-bytes function is available.
	 * @see strlen
	 * @see mb_strlen
	 *
	 * @param string $string
	 * @return int
	 */
	public function getStringLength( $string ) {
		return $this->hasMbstringSupport ? mb_strlen( $string ) : strlen( $string );
	}

	/**
	 * Returns the position of the first occurrence of the given character/substring within the given string.
	 * It uses the multi-bytes function is available.
	 * @see strpos
	 * @see mb_strpos
	 *
	 * @param string $char Needle
	 * @param string $string Haystack
	 * @return int Char/substring's first occurrence position within the string if found (starts at 0) or -1 if not found
	 */
	public function getCharFirstOccurrencePosition( $char, $string ) {
		$position = $this->hasMbstringSupport ? mb_strpos( $string, $char ) : strpos( $string, $char );
		return ( $position !== false ) ? $position : -1;
	}

	/**
	 * Returns the position of the last occurrence of the given character/substring within the given string.
	 * It uses the multi-bytes function is available.
	 * @see strrpos
	 * @see mb_strrpos
	 *
	 * @param string $char Needle
	 * @param string $string Haystack
	 * @return int Char/substring's last occurrence position within the string if found (starts at 0) or -1 if not found
	 */
	public function getCharLastOccurrencePosition( $char, $string ) {
		$position = $this->hasMbstringSupport ? mb_strrpos( $string, $char ) : strrpos( $string, $char );
		return ( $position !== false ) ? $position : -1;
	}
}

```
