Як видалити рядок сайту


 

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


Інструкція

  1. Визначте шлях до файлу, який містить стала непотрібну рядок, і її порядковий номер у файлі. (Зверніть увагу на те, що нумерація рядків починається з одиниці.) Почніть створювати необхідну команду видалення «» (без лапок), використовуючи змінну $ id для визначення номера рядка, що підлягає видаленню.
  2. Створіть масив, який є копією даних обраного файлу: $ data = file (шлях_до_файлу);

    Визначте кількість компонентів, що входять в нього: $ count_data = sizeof ($ data);.

    Видаліть стала непотрібною рядок, використовуючи формулу id-1, оскільки нумерація компонентів масиву відрізняється від нумерації рядків документа і починається з нуля: unset ($ data [$ id-1]);

    Відкрийте вибраний файл для здійснення процедури редагування його вмісту: $ fp = fopen (шлях_до_файлу, а);.

    Встановіть змінну блокування вибраного файлу flock ($ fp, LOCK_EX); і видаліть не відповідає дійсності вміст файлу, що підлягає зміні: ftruncate ($ fp, 0);.

  3. Створіть новий зміст для підлягає зміні файлу:

    for ($ j = 0; $ j
    {
    fputs ($ fp, $ data [$ j]);
    }

    Проведіть очищення буфера файлів з одночасним записом інформації в обраний файл за допомогою синтаксису: fflush ($ fp);.

    Розблокуйте відредагованого файлу командою flock (fp, LOCK_UN) і закрийте його, зберігши зроблені зміни: fclose ($ fp);.

  4. Завершіть процедуру створення необхідної команди видалення стала непотрібною рядка введенням стандартного «?>» (Без лапок).
    Використовуйте вищеописаний алгоритм дій для створення власних скриптів видалення рядків не тільки за номером, а й за ідентифікатором компонента, що підлягає видаленню — id. Для цього задайте змінну пошуку рядка, що містить шуканий ідентифікатор в першому полі.
  5. Зверніть увагу не необхідність попередньої перевірки всіх створених скриптів на тестових файлах з метою можливості відновлення всіх віддалених даних.