| Server IP : 54.36.91.62 / Your IP : 216.73.216.15 Web Server : Apache System : Linux webm021.cluster127.gra.hosting.ovh.net 6.18.39-ovh-vps-grsec-zfs+ #1 SMP PREEMPT_DYNAMIC Tue Jul 21 12:03:15 CEST 2026 x86_64 User : uxhactp ( 169076) PHP Version : 7.4.33 Disable Function : _dyuweyrj4,_dyuweyrj4r,dl MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/uxhactp/www/wp-content/plugins/visualcomposer/visualcomposer/Helpers/ |
Upload File : |
<?php
namespace VisualComposer\Helpers;
if (!defined('ABSPATH')) {
header('Status: 403 Forbidden');
header('HTTP/1.1 403 Forbidden');
exit;
}
use VisualComposer\Framework\Illuminate\Support\Helper;
/**
* Class Str.
*/
class Str implements Helper
{
/**
* The cache of snake-cased words.
*
* @var array
*/
protected static $snakeCache = [];
/**
* The cache of camel-cased words.
*
* @var array
*/
protected static $camelCache = [];
/**
* The cache of studly-cased words.
*
* @var array
*/
protected static $studlyCache = [];
/**
* Convert a value to camel case.
*
* @param string $value
*
* @return string
*/
public function camel($value)
{
if (isset(static::$camelCache[ $value ])) {
return static::$camelCache[ $value ];
}
return static::$camelCache[ $value ] = lcfirst(static::studly($value));
}
/**
* Determine if a given string contains a given substring.
*
* @param string $haystack - the string to search in
* @param string|array $needles
*
* @return bool
*/
public function contains($haystack, $needles)
{
foreach ((array)$needles as $needle) {
if ($needle != '' && strpos($haystack, $needle) !== false) {
return true;
}
}
return false;
}
/**
* Determine if a given string ends with a given substring.
*
* @param string $haystack
* @param string|array $needles
*
* @return bool
*/
public function endsWith($haystack, $needles)
{
foreach ((array)$needles as $needle) {
if ((string)$needle === substr($haystack, -strlen($needle))) {
return true;
}
}
return false;
}
/**
* Cap a string with a single instance of a given value.
*
* @param string $value
* @param string $cap
*
* @return string
*/
public function finish($value, $cap)
{
$quoted = preg_quote($cap, '/');
return preg_replace('/(?:' . $quoted . ')+$/', '', $value) . $cap;
}
/**
* Determine if a given string matches a given pattern.
*
* @param string $pattern
* @param string $value
*
* @return bool
*/
public function is($pattern, $value)
{
if ($pattern === $value) {
return true;
}
$pattern = preg_quote($pattern, '#');
// Asterisks are translated into zero-or-more regular expression wildcards
// to make it convenient to check if the strings starts with the given
// pattern such as "library/*", making any string check convenient.
$pattern = str_replace('\*', '.*', $pattern) . '\z';
return (bool)preg_match('#^' . $pattern . '#', $value);
}
/**
* Return the length of the given string.
*
* @param string $value
*
* @return int
*/
public function length($value)
{
return strlen($value);
}
/**
* Limit the number of characters in a string.
*
* @param string $value
* @param int $limit
* @param string $end
*
* @return string
*/
public function limit($value, $limit = 100, $end = '...')
{
if ($this->length($value) <= $limit) {
return $value;
}
return rtrim(substr($value, 0, $limit)) . $end;
}
/**
* Convert the given string to lower-case.
*
* @param string $value
*
* @return string
*/
public function lower($value)
{
return strtolower($value);
}
/**
* Generate a "random" alpha-numeric string.
*
* Should not be considered sufficient for cryptography, etc.
*
* @param int $length
*
* @return string
*/
public function quickRandom($length = 16)
{
if (intval($length) < 1) {
return '';
}
$pool = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
return substr(str_shuffle(str_repeat($pool, $length)), 0, $length);
}
/**
* Convert the given string to upper-case.
*
* @param string $value
*
* @return string
*/
public function upper($value)
{
return strtoupper($value);
}
/**
* Convert a string to snake case.
*
* @param string $value
* @param string $delimiter
*
* @return string
*/
public function snake($value, $delimiter = '_')
{
$key = $value . $delimiter;
if (isset(static::$snakeCache[ $key ])) {
return static::$snakeCache[ $key ];
}
if (!ctype_lower($value)) {
$value = strtolower(preg_replace('/(.)(?=[A-Z])/', '$1' . $delimiter, $value));
}
return static::$snakeCache[ $key ] = $value;
}
/**
* Determine if a given string starts with a given substring.
*
* @param string $haystack
* @param string|array $needles
*
* @return bool
*/
public function startsWith($haystack, $needles)
{
foreach ((array)$needles as $needle) {
if ($needle != '' && strpos($haystack, $needle) === 0) {
return true;
}
}
return false;
}
/**
* Convert a value to studly caps case.
*
* @param string $value
*
* @return string
*/
public function studly($value)
{
$key = $value;
if (isset(static::$studlyCache[ $key ])) {
return static::$studlyCache[ $key ];
}
$value = ucwords(str_replace(['-', '_'], ' ', $value));
return static::$studlyCache[ $key ] = str_replace(' ', '', $value);
}
public function buildQueryString($atts)
{
$output = [];
if (is_array($atts)) {
foreach ($atts as $key => $value) {
$output [] = $key . '="' . $value . '"';
}
}
return implode(' ', $output);
}
public function slugify($str, $lower = true)
{
$str = $lower ? strtolower($str) : $str;
$str = html_entity_decode($str);
$str = preg_replace('/[\-]+/', ' ', $str);
$str = preg_replace('/[^\w\s]+/', '', $str);
$str = preg_replace('/\s+/', '-', $str);
return $str;
}
public function convert($value)
{
switch (strtolower($value)) {
case 'true':
case '(true)':
return true;
case 'false':
case '(false)':
return false;
case 'empty':
case '(empty)':
return '';
case 'null':
case '(null)':
return null;
}
return $value;
}
}