Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Поиск в массиве
 
 автор: Zonniks   (15.08.2007 в 01:58)   письмо автору
 
 

Подскажите, пжалст. Вот у меня есть текстовый файл, я его считываю в массив функцией file(), и есть еще одна переменная, как можно сделать, чтобы эта переменная искалась в массиве, и если найдена, то заменялась на следующую ячейку массива(если найдена в 9й, то пусть замениться на 10ю). Помогите, пжалст.

   
 
 автор: sim5   (15.08.2007 в 02:27)   письмо автору
 
   для: Zonniks   (15.08.2007 в 01:58)
 

функции работы с массивами

[поправлено модератором]

   
 
 автор: Zonniks   (15.08.2007 в 02:58)   письмо автору
 
   для: sim5   (15.08.2007 в 02:27)
 

Да у меня на денвере даже это не хочет работать
$a=file('./pp.txt');
for($i=0; $i<=count($a);$i++)
{echo in_array('1',$a);}
хотя обе строки точно совпадают

   
 
 автор: Xamil   (15.08.2007 в 04:10)   письмо автору
 
   для: Zonniks   (15.08.2007 в 02:58)
 

При получении массива путем ф-и file() каждая ячейка заканчивается символами \r\n или \n, в зависимости от оси.. Поэтому и не находит.

[поправлено модератором]

   
 
 автор: cheops   (15.08.2007 в 11:08)   письмо автору
 
   для: Zonniks   (15.08.2007 в 01:58)
 

Заменялась или уничтожалась?

Пусть имеется файл get.txt
1
2
3
4
5
6
7
8
9
10

Тогда скрипт может выглядеть следующим образом
<?php
  
// Искомая строка
  
$search "5";
  
// Получаем содержимое файла
  // в виде массива
  
$arr file("get.txt");
  
// Ищем строку
  
for($i 0$i count($arr); $i++)
  {
    if(
trim($arr[$i]) == $search)
    {
      
// Если следующий элемент существует
      // присваиваем его текущему элементу
      
if(isset($arr[$i 1])) $arr[$i] = $arr[$i 1];
    }
  }
  
// Выводим что получилось
  
echo "<pre>";
  
print_r($arr);
  echo 
"</pre>";
?>

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования