68927

Операції над змінними

Лекция

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

Перевірка існування змінної. Знищення змінної. Перевірка існування змінної. Знищення змінної Ви можете запитати а як же арифметичні і інші операції Решта всіх операцій специфічна для конкретного типу змінної.

Украинкский

2014-09-27

43 KB

0 чел.

Лекція № 3

Тема: Операції над змінними

План

  1.  Види операцій.
  2.  Оператор присвоєння.
  3.  Перевірка існування змінної.
  4.  Знищення змінної.

Види операцій

Ми вже розглянули дві найважливіші операції із змінними — визначення і установку типу змінною. Тому нам залишилося розглянути всього три операції:

Присвоєння значення.

Перевірка існування змінної.

Знищення змінної

Ви можете запитати, а як же арифметичні і інші операції? Решта всіх операцій специфічна для конкретного типу змінної. Наприклад, операція множення абсолютно безглузда для двох рядків або числа і рядка.

Проте, PHP є дуже гнучкою мовою і виконує перетворення числа в рядок (і навпаки) непомітно для нас. Коли я говорив, що операція множення безглузда для двох рядків, я був не зовсім має рацію. Виконаєте цей сценарій, і ви переконаєтеся в цьому:

<?

$х   = "10";    //   рядок

$у   = "2";   //   і   це   рядок

echo $х*$у;

?>

Сценарій, замість повідомлення про помилку, виведе на екран число 20. Як бачите, якщо рядок допускає перетворення типу, то PHP працює з рядками, як із звичайними числами.

Оператор присвоєння

Оператор присвоєння дозволяє надати змінній деяке значення. Немає такої мови програмування, в якому не було б оператора присвоєння. Тому я вас сильно не здивую, якщо скажу, що в PHP він теж є:

$х   =   4; $у   =   $х;

Ось, що вам потрібно знати про цього оператора і правила присвоєння:

  •  Змінній можна привласнити: яке-небудь значення; значення, що повертається  функцією;  значення іншої  змінної;  значення виразу ($х + $у * 2 — 7); посилання на іншу змінну.
  •  У PHP немає покажчиків, тому, якщо в змінну $х ви розмістете файл розміром 500 Кб, а потім привласните її змінній $у, то буде створена точна копія змінної $х, яка теж займатиме 500 Кб. Разом у вас в пам'яті буде майже один мегабайт інформації. Це потрібно враховувати при створенні так званих тимчасових змінних. Бажано після закінчення роботи з такою змінною звільнити пам'ять, тобто знищити змінну.
  •  Інтерпретатор сам виконує перетворення типів, але іноді привести тип змінної до іншого просто неможливо. Наприклад, як можна перетворити рядок «1212ro3te» в число?
  •  Як я вже говорив, при привласненні створюється точна копія змінної, копіюється також і тип змінної. Це означає, що якщо ви масиву привласните число, весь масив буде втрачений.

Робота оператора присвоєння складається з двох послідовних етапів:

1.Обчислення виразу, що стоїть в правій частині.

2. Присвоєння змінній, що стоїть в лівій частині, значення, отриманого в пункті 1.

Таким чином, через те, що процес присвоєння складається з двох роздільних етапів, в лівій і правій частині оператора присвоєння може знаходитися одна і та ж змінна. Наприклад: $х  =   $х+4.

Крім того, так само як і в мові Сі, в PHP існує можливість використання операції присвоєння в наступному вигляді: змінна операция=значение.

Наприклад:

$x   +=10;   //   еквівалентно   $х   =   $х   +   10;

$х   *=10;   //   еквівалентно   $х   =   $х   *   10;

Перевірка існування змінної

Перевірка існування змінної — це дуже зручна можливість мови програмування. Ви можете запитати: «А навіщо вона потрібна? Що я не пам'ятаю, оголошував я змінну чи ні?» Я зараз поясню. Пам'ятаєте, я говорив, що змінні може оголошувати самому PHP — при розборі параметрів. Так от, завдяки можливості перевірки існування змінної ви можете перевірити, чи переданий сценарію певний параметр чи ні, а тільки потім починати з ним працювати. Розглянемо два сценарії.

Сценарій 1:

<?

$х   =   $m_name;

?>

Сценарій 2:

<?

if (isset($m_name)) { $x = $m_name;

?>

У першому випадку ми відразу починаємо працювати із змінній. Якщо з яких-небудь причин інтерпретатор не передав сценарію параметр m_name, ми отримаємо повідомлення про те, що змінна не визначена. У другому сценарії ми за допомогою функції isset ($m_name) перевіряємо існування змінної $m_name, а тільки потім починаємо з нею працювати. В результаті ваш сценарій не припинить свою роботу із-за банальної помилки користувача, якщо той забуде ввести своє ім'я.

Звичайно, якщо перевіряти всі передані параметри, наша програма стане набагато «товща» (особливо, якщо параметрів багато). Проте ми можемо поступити простіше. Припустимо, що нам потрібно написати анкету на PHP, що містить ім'я і адресу електронної пошти. Алгоритм нашого сценарію буде таким:

  •  Якщо користувач не передав параметри, означає ми виводимо
    форму анкети.
  •  Якщо параметри передані (про що свідчить наявність змінної кнопки submit), означає можна почати обробку параметрів.

Виходить, що нам досить перевірити тільки один параметр:

<html><head><title>AHKeTa</title></head><body>

<?

if(!isset($go))

{

// змінна go (кнопка) не встановлена, виводимо форму:

echo "<form action=script.php method=post>"; /* Виводиться поля анкети, а потім кнопку go */

echo "<input type=submit name=go value=Send></form>";

}

else {

/* Параметри введені користувачем, починаємо обробку */

}

Перевіривши існування кнопки go, ми починаємо обробку параметрів. У формі, що виводиться, я використовував метод POST. Для РНР-сценаріїв абсолютно немає ніякої різниці, яким методом їм будуть передані параметри, тому з міркувань безпеки краще використовувати метод POST (ніхто із-за спини не побачить, що ввів користувач), та і виглядає він естетичніше (нічого зайвої в рядку адреси не відображається).

Видалення змінних

Щоб не засмічувати пам'ять, можна видалити непотрібні нам змінні. Це можна робити за допомогою функції unset(). Ця функція видаляє вказану в дужках змінну з пам'яті, і програма продовжує виконуватися как-будто ця змінна взагалі не ініціалізувала.

<?

$а = читаем_большой_файл;

обробляємо файл;

unset($a); // звільняємо пам'ять

?>

Ця функція особливо корисна і навіть необхідна при обробці великих об'ємів даних, щоб вони не залишалися в пам'яті комп'ютера і не уповільнювали його роботу.


 

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

31656. Методы социально-психологического обучения в деятельности педагога 57 KB
  Методы социальнопсихологического обучения это методы которые побуждают учащихся к активной мыслительной и практической деятельности в процессе овладения учебным материалом. Методы социальнопсихологического обучения делятся на 3 группы: дискуссионные методы игровые методы и тренинговые методы.Дискуссионные методы.
31657. Тестирование как исследовательский метод 40 KB
  Тесты представляют собой модельные ситуации с их помощью выявляются реакции свойственные индивиду которые считаются совокупностью показателей исследуемого признака. В педагогической психологии используются все типы существующих тестов однако наиболее часто востребованы тесты достижений. Тесты позволяют дать оценку индивида в соответствии с поставленной целью исследования; удобство математической обработки; являются относительно оперативным способом оценки большого числа неизвестных лиц; обеспечивают сопоставимость информации полученной...
31658. Психолого-педагогическое сопровождение развития личности ребенка в образовательной процессе 52 KB
  Тесты классифицируются по разным признакам. По виду свойств личности они делятся на тесты достижений и личностные. К первым относятся тесты интеллекта школьной успеваемости тесты на творчество тесты на способности сенсорные и моторные тесты. Ко вторым тесты на установки на интересы на темперамент характерологические тесты мотивационные тесты.
31659. Чотири типи темпераменту 37.5 KB
  Якщо у мами і дитини темперамент схожий вони швидше порозуміються якщо ж темпераменти різко відрізняються мама холерик малюк флегматик це веде до проблем в спілкуванні з дитиною в її вихованні тому що мама часто вимагає від дитини те на що вона не здатна бути лідером в спілкуванні з однолітками бути розкутою швидко одягатися і так далі. У цьому випадку дорослому варто підстроїтися під дитину враховувати її індивідуальні особливості контролювати свої емоції щоб не зародити у малюка комплекс неповноцінності. Вона вертка і...
31660. Поняття про здібності 62.5 KB
  Психологія заперечуючи тотожність здібностей і істотно важливих компонентів діяльності знань умінь і навичок підкреслює їхню єдність. Здібності виявляються тільки в діяльності і притім тільки в такий діяльності що не може здійснюватися без наявності цих здібностей. Не можна говорити про здібності дитини до малювання якщо його не намагаються навчати малювати якщо він не здобуває ніяких навичок необхідних для образотворчої діяльності. У чому ж виражається єдність здібностей з одного боку і умінь знань і навичок з інший Здібності...
31661. Поняття про характер 42.5 KB
  Такі психологічні особливості особистості називають рисами характеру. Історія знає багатьох політичних громадських і військових діячів які завдяки силі позитивних рис свого характеру сприяли прогресу суспільства тоді як особи з негативними рисами характеру або зі слабким характером призводили до його занепаду. Структура характеру Характер як одна з істотних особливостей психічного складу особистості є цілісним утворенням що характеризує людське Я як єдність. Розуміння характеру як єдності його рис не виключає виокремлення в ньому деяких...
31662. ВІКОВА ПСИХОЛОГІЯ ЯК ГАЛУЗЬ ПСИХОЛОГІЧНОЇ НАУКИ 127.5 KB
  Вікова психологія галузь психологічної науки яка вивчає особливості психічного та особистісного розвитку людини на різних етапах її життя. Його специфіка полягає передусім у тому що протягом життя в психіці людини відбуваються різні якісні перетворення дослідження яких потребує системного з'ясування загальних закономірностей вікового розвитку. Предметом дослідження вікової психології є вікова динаміка закономірності фактори умови механізми становлення формування та розвитку особистості. Вікова психологія вивчає загальні...
31663. Психічний розвиток людини 28.5 KB
  Кожен період вік своєрідний ступінь психічного розвитку з притаманними йому відносно стійкими якісними особливостями. Відомо що вікові психологічні особливості зумовлені конкретноісторичними умовами розвитку спадковістю певною мірою характером виховання особливостями діяльності та стосунків з іншими людьми що впливає передусім на специфіку переходу від одного вікового періоду до іншого. Власне тому що навчання й виховання організовує діяльність дітей поетапно керує нею на основі накопиченого досвіду прагнучи враховувати наявні...
31664. ПСИХОЛОГІЯ ОСОБИСТОСТІ ПІДЛІТКА 35 KB
  Загальна характеристика підліткового віку Підлітковий вік це один з найважливіших етапів життя людини. Вік цей нестабільний ранимий важкий і виявляється що він більше ніж інші періоди життя залежить від реальностей довкілля. Загальна характеристика підліткового віку варіює в різних теоріях залежно від їх основної ідеї. Однак всі ці і багато інших підходів об'єднує те що в них існують загальні показники які характеризують даний вік.