Работа со строками - php, javascript



php
$a = 10;
$s = 'строка в одинарных кавычках $a';  //строка в одинарных кавычках $a
echo $s."<br>";
$s = "строка в двойных кавычках $a"; //строка в двойных кавычках 10
echo $s."<br>";
js
var a = 10;
var s = 'строка в одинарных кавычках a'; 
console.log(s); //строка в одинарных кавычках a

var s = 'строка в одинарных кавычках a';
console.log(s); //строка в одинарных кавычках a

s = "строка в двойных кавычках a"; 
console.log(s);    //строка в одинарных кавычках a

s = `многострочная строка 
в тильда 
кавычках ${a}`; 
console.log(s);
/*
многострочная строка
в тильда
кавычках 10   
*/
посимвольное обращение
php
$string = 'string';
echo $string."<br>"; 
echo '$string[0] = '.$string[0]."<br>"; //r
echo '$string[2] = '.$string[2]."<br>"; //r
echo '$string[-2] = '.$string[-2]."<br>";//n
$string[-3] = 'o';
echo $string."<br>"; //strong
js
var s = 'string';
console.log(s);
console.log('s[0] = ',s[0]); //r
console.log('s[2] = ',s[2]); //r
   
console.log('s[-2] = ',s[-2]);// undefined
   
console.log('s.at(-2) = ',s.at(-2));// n
console.log('s[s.length - 2] = ',s[s.length - 2]);// n
   
//s.at(-3) = 'o'; //так ошибка
s[s.length - 3] = 'o'; //без ошибки, но не изменится
console.log(s); //string


конкатенация (соединение) строк
php
$s = "b ";
$s = $s . "c ";
$s .= "d ";
$s = "a ".$s;

/*
$s = $s + "а так не работает";
$s =. "и так не работает";
*/
echo $s; //a b c d
js
let s = "b ";
s = s + "c ";
s += "d ";
s = "a "+s;
//s =+ "f "; //не работает 
//s = s. "f "; //не работает
   
console.log(s); //a b c d 

Функции для работы со строками
https://www.php.net/manual/ru/ref.strings.php - php все
https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/String - js все
phpjs Примечания
Длина строкиstrlen($s)s.length //это свойство. а не функция, поэтому БЕЗ скобок
Первая позиция вхождения подстроки в строкуstrpos($s, $findStr,$startIndexForSearch)
false - если не найден
s.indexOf(findStr,startIndexForSearch)
-1 если не найден
startIndexForSearch - необ
Последняя позиция вхожденияstrrpos($s, $findStr,$startIndexForSearch)
false - если не найден
s.indexOf(findStr,startIndexForSearch)
-1 если не найден
startIndexForSearch - необ
Преобразует символы в строке в нижний регистрstrtolower($s)
mb_strtolower($s) - для кириллицы
s.toLowerCase()
Преобразует символы в строке в верхний регистрstrtoupper($s)
mb_ strtoupper($s) - для кириллицы
s.toUpperCase()
Получить подстроку в строкеsubstr($s, $startIndex, $length)s.substr(startIndex, length) //length необ
str.slice(startIndex, endIndex) //endIndex необ, если отриц, то с конца считаются
str.substring(startIndex, endIndex) //endIndex необ, если отриц, то пустая строка
Удалить пробелы в начале строкиltrim($s)s.trimStart()
s.trimLeft()
Удалить пробелы в конце строкиrtrim($s)
chop($s)
s.trimEnd()
s.trimRight()
Удалить пробелы в начале и конце строкиtrim($s) s.trim()
Заменить одну подстроку на другуюstr_replace($search, $replace, $s)
// $search,$replace - могут быть массивами, а могут строками
s.replace(search,replace) //заменит первое вхождение

const regex = new RegExp(search, 'g');
s.replace(regex, replace) //заменит все

s.replaceAll(search,replace) //заменит все, но не во всех браузерах работает функция, лучше не исп.
Cтоит ли одна строка в начале другой строки (да-нет)str_ends_with($s, $needS)s.startsWith(needS)
Стоит ли одна строка в конце другой строки (да-нет)str_starts_with($s, $needS)s.endsWith(needS)
Включает ли строка подстроку (да-нет)str_contains($s, $needS)s.includes(needS)
Если блог был полезным, можете угостить меня "чашечкой кофе" :)

Сбер по номеру телефона +7 (953) 585-13-09 Вероника.
Спасибо!