68929

Рядки. Операції над рядками

Лекция

Информатика, кибернетика и программирование

Обоє операторів echo виведуть рядки. Перший оператор echo виведе рядок Hello, а другою — $s. Між рядками в лапках і в апострофах існує велика різниця. Якщо рядок поміщений в апострофи, то всі символи трактуються як є. Винятки становлять послідовност...

Украинкский

2014-09-27

36.5 KB

0 чел.

Лекція № 5

Тема: Рядки. Операції над рядками.

План

  1.  Рядки в апострофах і рядки в лапках.
  2.  Рядкові операції.
  3.  Багаторядкові змінні.
  4.  Рядки в зворотних лапках.

Рядки в апострофах і рядки в лапках

Розглянемо невеликий приклад:

$s = "Hello"; echo   "$s"; echo   ' $s ' ;

Обоє операторів echo виведуть рядки. Перший оператор echo виведе рядок Hello, а другою — $s. Між рядками в лапках і в апострофах існує велика різниця. Якщо рядок поміщений в апострофи, то всі символи трактуються як є. Винятки становлять послідовності \' і \\. Перша є звичайним апострофом, а друга — бекслеш.

Рядки в лапках дозволяють, крім усього іншого, вивести значення змінної, тому ніколи не використовуйте рядок в апострофах для цієї мети. Припустимо, що у нас є змінна $а = 10. Проаналізуємо виведення двох операторів echo:

echo   "$a";   //   рядок   в   лапках

echo   '$a';    //   рядок   в   апострофах

Перший оператор виведе 10 — значення змінної $а. Другою надрукує те, що поміщене між апострофами — $а. Уловлюєте різницю?

Крім того, рядки в лапках можуть містити наступні спеціальні символи:

\n — символ нового рядка;

\r  — символи повернення каретки;

\t   — символ табуляції;

\$ — знак долара;

\" — лапка;

\\ — зворотний слэш;

\xNN — символ з кодом NN (у шістнадцятиричній системі).

Рядкові операції

Рядкових операцій в PHP   всього дві:

sl.s2 — конкатенація (злиття) двох рядків;

sl[n] — звернення до символу в рядку.

Решта всіх дій над рядками виконується стандартними функціями.

Привласнити значення рядку дуже просто:

s   =   "hello";

s   =   "Це   велика

багаторядкова строкова

константа";

Багаторядкові змінні

Починаючи з четвертої версії PHP, з'явилися так звані Неге-документи. Це ще один спосіб запису багаторядкових констант. Довжина рядка в PHP обмежена тільки об'ємом вільної оперативної пам'яті, тому в змінну можна записати навіть невеликий файл. Записати велике текстове повідомлення можна так:

$s =<<<LABEL

Текст

LABEL;

При використанні цього способу запису багаторядкових строкових змінних, потрібно пам'ятати три правила:

LABEL може бути будь-яким ідентифікатором.

Після LABEL і до кінця рядка не повинно бути непробільних символів.

Після другого (що завершує) LABEL повинна стояти крапка з комою.

Припустимо, що нам потрібно написати невелику програму, що виводить рядок «Hello world». Немає нічого простішого? А я так не думаю:

<?

$а   =   "Hell"; echo   "$ao   world";

?>

В цьому випадку інтерпретатор повідомить, що змінна $ао не знайдена. Як вийти з цієї ситуації? Можна використовувати операцію злиття двох рядків:

echo   $a."o   world";

А можна узяти ім'я змінної у   фігурні дужки:

echo   "${a}про   world" АБО

echo   "{$a}про   world"

Проте краще використовувати перший варіант, оскільки іноді фігурні дужки можуть трактуватися як спецсимволи.

Рядки в зворотних лапках (виклик зовнішньої програми)

Ви хочете запустити зовнішню програму і привласнити змінній результат її роботи? Немає нічого простішого! Для цієї мети використовуйте рядки в зворотних лапках (вони знаходяться під тильдою):

$directory   =   'dir';

echo   "<H1>Содержимое   каталога:</H1><ВR><РRЕ>   $directory";


 

А также другие работы, которые могут Вас заинтересовать

38430. Многокритериальный анализ решений по обеспечению безопасности техногенного объекта с расширенным понятием безопасности 735 KB
  Экспертные подходы многокритериальных принятий решений на основе сравнений многокритериальных альтернатив обеспечения социотехнической безопасности техногенного объекта ТО Определение наилучшей альтернативы. Методы ELECTRE ранжирования многокритериальных альтернатив. Применения МАИ для многокритериальных сравнений альтернатив оценки безопасности техногенного объекта
38431. Метод расчета мехатронной системы привода телескопа на основе равновесно-оптимальной балансировки 3.15 MB
  Cтабильноэффективный компромисс в ММС СТЭК ММС это объединение стабильности и эффективности в рамках множества решений от полного совпадения данных свойств до обеспечения определенной степени сближения в условиях информационнотактических расширений соглашений. СТЭК в иерархических системах дополняет СТЭК ММС СТЭК ИС.3 П Парето граница АВ; Н Нэшравновесие; УКУ область угрозконтругроз; ИТ идеальная точка; УК оптимальная часть Пграницы на основе узкого конуса ; Ш точка Шепли; СНД ПаретоНэш область компромиссов ПНОК...
38432. Моделирование процесса нанесения краски устройством с применением робота Kawasaki 3.31 MB
  Определить параметры траекторного движения захвата декартовы координаты углы Эйлера скорости обеспечивающие непрерывное точное и безошибочное выполнение технологических операций. Пульт выполняет серию важных задач: Ручное управление роботом Обучение данных позиции координат Обучение вспомогательных данных блочное программирование Рис. В языке используется термин позиция так как этот термин выбран в стандарте ISO фактически же позицией является совокупность трёх координат конца центра схвата TCP а также трёх эйлеровых...
38433. Разработка и исследования метода сетевого оператора для адаптивного управления динамическим объектом 3.77 MB
  Решение задачи синтеза системы управления — есть поиск управления, как функции от пространственных координат. При этом сложнее всего получить структуру функции многомерного управления. До недавнего времени данная задача решалась следующим образом: исследователь определял структуру математического выражения, оставляя параметры неопределенными, затем их значения находились с помощью численных методов в соответствии с заданным критерием управления.
38434. Разработка и исследование искусственной нейронной сети для управления динамическим объектом с переменными параметрами 2.08 MB
  Искусственные нейронные сети используются в качестве регулятора многомерных и многосвязных динамических объектов. Применение искусственных нейронных сетей для целей управления является одной из многочисленных областей относительного нового раздела современной науки – нейроинформатики..
38435. Разработка системы конкурентно-оптимального прогноза управления предприятием на основе динамической модели олигополии 3.31 MB
  Cтабильноэффективный компромисс в ММС СТЭК ММС это объединение стабильности и эффективности в рамках множества решений от полного совпадения данных свойств в одной точке пространства J или U до обеспечения возможной степени сближения в условиях информационнотактических расширений соглашений. СТЭК ММС дополняют СТЭК в иерархических системах СТЭК ИС где реализуется право первого хода на основе субъективной информации что составляет тему отдельного исследования. Компромиссы на основе комбинации ПаретоНэшУКУШеплиподходовП ...
38436. Разработка и исследование метода аналитического программирования для структурно-параметрического синтеза системы управления динамическим объектом 14.23 MB
  Сложность задачи состоит в том, что в общей постановке для нелинейного объекта с произвольными критериями качества практически невозможно получить аналитическое решение. Поэтому известные методы для решения, как правило, неэффективны, поскольку используют специальные свойства объектов и функционалов.
38437. Многокритериальный синтез позиционного управления на основе многопрограммной стабилизации 2.76 MB
  Комбинированный метод многокритериального синтеза позиционного управления формирует аналитический вид управления, как набор параметров и известных функций состояния из состава «сетевого оператора» конечной сети этих функций и операций над ними
38438. Разработка моделирование процесса поддержки заданных климатических условий в помещении в системе InTouch 2.09 MB
  Трехдиапазонный регулятор температуры 60 3. Ведь отапливать рабочие помещения в выходные и праздничные дни не следует так интенсивно как по будням или скажем интенсивность отопления должна зависеть от температуры за окном а не от календарного времени года: вспомним хотя бы минувшую зиму когда в январе была плюсовая температура а отопление по интенсивности было âзимнимâ приходилось открывать окна в зданиях а можно было всего лишь снизить мощность обогрева тем самым сэкономить значительные средства. Возможные колебания...