HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > PHP
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 28.01.2010, 16:19
Deathdreams
Постоянный
Регистрация: 08.11.2008
Сообщений: 498
С нами: 9213376

Репутация: 278
По умолчанию

Цитата:
Сообщение от Fuckel  
а если строка "123 123 111222 312"? твой вариант не будет работать



для чего трим?

--
обходи циклом, проверяй регуляркой обрамив нужное слово \b
пример из документации
PHP код:
<?php
/* The \b in the pattern indicates a word boundary, so only the distinct
 * word "web" is matched, and not a word partial like "webbing" or "cobweb" */
if (preg_match("/\bweb\b/i""PHP is the web scripting language of choice.")) {
    echo 
"A match was found.";
} else {
    echo 
"A match was not found.";
}

if (
preg_match("/\bweb\b/i""PHP is the website scripting language of choice.")) {
    echo 
"A match was found.";
} else {
    echo 
"A match was not found.";
}
?>
Твой вариант не верен, т.к. в строке могут быть лишние символы.

Мой вариант правильный, в данной ситуации.

Трим, т.к. строки в файле бывают с ненужными пробелами по бокам записаны, трим для перестраховки
 
Ответить с цитированием

  #2  
Старый 28.01.2010, 23:20
N2kroot
Познающий
Регистрация: 25.10.2009
Сообщений: 54
С нами: 8707616

Репутация: 9
По умолчанию

Цитата:
Сообщение от svesve  
Как можно найти в файле требуемое слово(полностью)??

Пример:

файл -

111222
7111222
1112223


нужно узнать есть ли в нем строка 111222 ?? и чтобы он 7111222 и 1112223 не под наш поиск.

тобишь нужен поиск слова целиком.
Вот например у тебя
npimer.txt,а в нём:
7111222
111222
Надо найти 111222 или проверить - есть ли она вообще?
Вот код:
PHP код:
 $ischem="111222";
$TBoi_fail "npimer.txt";
        
$massiv = @file($TBoi_fail);
        
$lines count($massiv);
        for ( 
$i 0$i <= $lines$i++ ){
        list(
$chislo,$chislo2)=explode(' '$massiv[$i]);
        if(
$ischem==$chislo){  Exit("Найдено совпадение!<BR>Искали:$ischem<BR>Найдено:$chislo  }
        if(
$i==$lines){ die("Совпадений нет!");   }
        } 
В данном случае появится:
Найдено совпадение!
Искали:111222
Найдено:111222
 
Ответить с цитированием

  #3  
Старый 28.01.2010, 15:45
Deathdreams
Постоянный
Регистрация: 08.11.2008
Сообщений: 498
С нами: 9213376

Репутация: 278
По умолчанию

svesve : Как можно найти в файле требуемое слово(полностью)??

PHP код:

$file 
file('file.txt');
$fstr ""// кого найти?

if(in_array($fstrarray_map('trim'$file)) die('Строка найдена'); 
 
Ответить с цитированием

  #4  
Старый 28.01.2010, 16:58
Fuckel
Участник форума
Регистрация: 17.01.2008
Сообщений: 170
С нами: 9640431

Репутация: 105
По умолчанию

почему мой вариант не верен?
 
Ответить с цитированием

  #5  
Старый 28.01.2010, 18:06
Deathdreams
Постоянный
Регистрация: 08.11.2008
Сообщений: 498
С нами: 9213376

Репутация: 278
По умолчанию

Цитата:
Сообщение от Fuckel  
почему мой вариант не верен?
Цитата:
Твой вариант не верен, т.к. в строке могут быть лишние символы.
svesve просит, чтобы совпадала полностью строка, а не чтобы это слово было частью строки
 
Ответить с цитированием

  #6  
Старый 28.01.2010, 18:10
Fuckel
Участник форума
Регистрация: 17.01.2008
Сообщений: 170
С нами: 9640431

Репутация: 105
По умолчанию

ты делаешь трим, удаляешь лишние пробелы, пробелы тоже символы )
 
Ответить с цитированием

  #7  
Старый 28.01.2010, 18:13
Deathdreams
Постоянный
Регистрация: 08.11.2008
Сообщений: 498
С нами: 9213376

Репутация: 278
По умолчанию

Цитата:
Сообщение от Fuckel  
ты делаешь трим, удаляешь лишние пробелы, пробелы тоже символы )
лол
 
Ответить с цитированием

  #8  
Старый 28.01.2010, 18:14
imajo.ati
Участник форума
Регистрация: 21.02.2008
Сообщений: 255
С нами: 9589849

Репутация: 177
По умолчанию

Цитата:
Сообщение от Fuckel  
ты делаешь трим, удаляешь лишние пробелы, пробелы тоже символы )
перенос строки и возват каретки тоже символы. нуждающийся наверняка имел ввиду непечатные символы
 
Ответить с цитированием

PHP
  #9  
Старый 28.01.2010, 23:07
N2kroot
Познающий
Регистрация: 25.10.2009
Сообщений: 54
С нами: 8707616

Репутация: 9
По умолчанию PHP

Народ,как сделать вывод текста из бд по рейтингу..
Да вообще --- как сделать этот рейтинг?

Вот я сделал страницу,на ней всё есть(рега\вход\выход\куки)
при регистрации создаётся файл с новым именем(именем юзера), а вообще --- пишется файл,типа :
all.dat
в нём:
Имя|0
Имя|1
Имя|2
Ну вот,а надо сделать что-то типа:
Имя|0|Рейтинг:80%
Имя|1|Рейтинг:10%
Имя|2|Рейтинг:10%
А если регнется новый,то:
Имя|0|Рейтинг:70%
Имя|1|Рейтинг:10%
Имя|2|Рейтинг:10%
Имя|3|Рейтинг:10%
А если кто-то повысит рейтинг,то,например,так:
Имя|0|Рейтинг:50%
Имя|1|Рейтинг:20%
Имя|2|Рейтинг:20%
Имя|3|Рейтинг:10%

И самое главное:
Вывод инфы:
Допустим файл содержит:
Имя|4|Рейтинг:50%
Имя|1|Рейтинг:20%
Имя|2|Рейтинг:20%
Имя|3|Рейтинг:10%
Тогда вывод:
Имя|4|Рейтинг:50%
Имя|1|Рейтинг:20%
Имя|2|Рейтинг:20%
Имя|3|Рейтинг:10% --- не активен,модератор удали его!
Вопрос: как это организовать?
Если надо --- выложу скрипт...
 
Ответить с цитированием

  #10  
Старый 28.01.2010, 23:40
Fuckel
Участник форума
Регистрация: 17.01.2008
Сообщений: 170
С нами: 9640431

Репутация: 105
По умолчанию

Цитата:
Сообщение от N2kroot  
Народ,как сделать вывод текста из бд по рейтингу..
Да вообще --- как сделать этот рейтинг?

Вот я сделал страницу,на ней всё есть(рега\вход\выход\куки)
при регистрации создаётся файл с новым именем(именем юзера), а вообще --- пишется файл,типа :
all.dat
в нём:
Имя|0
Имя|1
Имя|2
Ну вот,а надо сделать что-то типа:
Имя|0|Рейтинг:80%
Имя|1|Рейтинг:10%
Имя|2|Рейтинг:10%
А если регнется новый,то:
Имя|0|Рейтинг:70%
Имя|1|Рейтинг:10%
Имя|2|Рейтинг:10%
Имя|3|Рейтинг:10%
А если кто-то повысит рейтинг,то,например,так:
Имя|0|Рейтинг:50%
Имя|1|Рейтинг:20%
Имя|2|Рейтинг:20%
Имя|3|Рейтинг:10%

И самое главное:
Вывод инфы:
Допустим файл содержит:
Имя|4|Рейтинг:50%
Имя|1|Рейтинг:20%
Имя|2|Рейтинг:20%
Имя|3|Рейтинг:10%
Тогда вывод:
Имя|4|Рейтинг:50%
Имя|1|Рейтинг:20%
Имя|2|Рейтинг:20%
Имя|3|Рейтинг:10% --- не активен,модератор удали его!
Вопрос: как это организовать?
Если надо --- выложу скрипт...
сортировка, например, такая:
PHP код:
<?php
$f 
file("users.dat");
$users = Array();
for (
$i=0$i<count($f); $i++)
{
    
$users[] = explode('|'$f[$i]);
    
settype($users[$i][2], int);
}
function 
cmp($a$b)
{
    if (
$a[2] == $b[2]) {
        return 
0;
    }
    return (
$a[2] < $b[2]) ? -1;
}
usort($users"cmp");
print_r($users);
?>
файл users.dat
Код:
a|0|1
aa|12|100
bvn|42|3
рейтинг - третий элемент, то есть это будут 1, 100 и 3

Последний раз редактировалось Fuckel; 28.01.2010 в 23:42..
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[c/c++] Новичкам: задаем вопросы _Great_ С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby 5421 21.04.2026 07:37
Интернетчики задали российскому президенту очень странные вопросы podkashey Мировые новости. Обсуждения. 4 07.07.2006 16:53
Вопросы по Ipb 2.0 Voodoo_People Уязвимости CMS / форумов 26 15.02.2005 22:57



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.