php
js
посимвольное обращение
php
js
конкатенация (соединение) строк
php
js
Функции для работы со строками
$a = 10; $s = 'строка в одинарных кавычках $a'; //строка в одинарных кавычках $a echo $s."<br>"; $s = "строка в двойных кавычках $a"; //строка в двойных кавычках 10 echo $s."<br>"; |
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 |
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 |
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 все |
| php | js | Примечания | |
| Длина строки | 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) |