/**
* Получит все элементы массива, которые содержат строку или несколько строк (подстроки)
*
* @param string $arr -- список строк, в которых искать
* @param array $startStr -- список подстрок (которые искать)
* @return array
*/
public static function getElementsWith($arr, $startStrs, $trim = false)
{
$result = [];
foreach ($arr as $val)
{
foreach ($startStrs as $startStr) {
//log::pre($arr);
/**
* Сравнит две строки относительно алфавита
*
* @param string $str1
* @param string $str2
* @return int 1 если первая "больше", -1 если меньше, 0 если равны
*/
function compareAsInAlphbet($str1, $str2)
{
return strnatcasecmp($str1, $str2);
}
/**
* Проверит, что первая строка начинается со второй
*
* @param string $str основная строка
* @param string $substr та, которая может содержаться внутри основной
*/
function isStart($str, $substr)
{
$result = strpos($str, $substr);
if ($result === 0) { // если содержится, начиная с первого символа
return true;
} else {
return false;
}
}