[php] Новичкам: задаем вопросы

Discussion in 'PHP' started by _Great_, 26 May 2007.

Thread Status:
Not open for further replies.
  1. justonline

    justonline network ninja

    Joined:
    27 Jul 2011
    Messages:
    499
    Likes Received:
    60
    Reputations:
    53
    PHP:
    #FORM\](.*)\[/FORM]#Uis
     
  2. Toxa33rus

    Toxa33rus Member

    Joined:
    31 Mar 2012
    Messages:
    41
    Likes Received:
    6
    Reputations:
    0
    PHP:
    preg_match_all('#(\[form\]|\[order\])(.+?)\[#is'$theme$out);
     
    #20382 Toxa33rus, 4 Apr 2012
    Last edited: 4 Apr 2012
  3. blackbeard

    blackbeard New Member

    Joined:
    30 Mar 2012
    Messages:
    16
    Likes Received:
    0
    Reputations:
    0
    В общем есть такая конструкция
    PHP:
    $message $_POST['posName']; 
    и надо в этот $_POST ещё кучу переменных добавить, как такое осуществить?
     
  4. justonline

    justonline network ninja

    Joined:
    27 Jul 2011
    Messages:
    499
    Likes Received:
    60
    Reputations:
    53
    бож ты мой. ты почитай, что такое $_POST то.
    хоть тысячи их делай.
     
  5. blackbeard

    blackbeard New Member

    Joined:
    30 Mar 2012
    Messages:
    16
    Likes Received:
    0
    Reputations:
    0
    из-за таких как ты, непомогающих ближнему, и пришёл путин =\
    решил свою проблему вот так
    PHP:
    mail("$mailto","$subject","блаблабла: $message\n$message2\n$message3\n$message4\n$message5\n$message6\n$message7\n$message8","$headers");
    а в каждом меседже по посту :cool:
     
    #20385 blackbeard, 5 Apr 2012
    Last edited: 5 Apr 2012
  6. АнонимЪ

    АнонимЪ New Member

    Joined:
    5 Apr 2012
    Messages:
    1
    Likes Received:
    0
    Reputations:
    0
    Доброго времени суток!
    Делаю авторизацию на сайте с помощью curl_multi в несколько потоков потоков.
    Куки пытаюсь засунуть в файл.
    Code:
    curl_setopt($conn[$key], CURLOPT_COOKIEFILE, $_SERVER['DOCUMENT_ROOT']."/my_cookies$key.txt");
    curl_setopt($conn[$key], CURLOPT_COOKIEJAR, $_SERVER['DOCUMENT_ROOT']."/my_cookies$key.txt");
    Code:
    do { $n=curl_multi_exec($mh,$active); usleep(1000); } while ($active>0);
    После обработки запросов скрипт продолжается, но файлы с куками в директории не появляются.

    Зато, если сразу после обработки, поставить exit - файлы появляются по указанному пути. Подскажите, в чём косяк?
     
  7. Kruzak

    Kruzak New Member

    Joined:
    21 Dec 2010
    Messages:
    126
    Likes Received:
    4
    Reputations:
    1
    нужно кеширование сделать для сотни тысяч файлов
    как реализовать? думаю лучше всего на файлах сделать
    теперь вопрос как хранить все эти файлы? в одной папке столько файлов это ведь плохо?
    я вот думаю может алгоритм написать, чтобы файлы грузились в /cache/*первые 4 символа названия файла*/*первые 6 символов*/*первые 8 символов*/*первые 10 символов*/*full_name*.txt
    так пойдет или может лучше можно придумать?
     
  8. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    Например не мешать файловой системе самой делать свою работу?
     
    _________________________
  9. Kruzak

    Kruzak New Member

    Joined:
    21 Dec 2010
    Messages:
    126
    Likes Received:
    4
    Reputations:
    1
    почему тогда многие советуют после 50 тыс. файлов в папке уже делать подпапки?
    у меня далеко не 50 тыс будет, а раз в 10 больше
     
  10. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    Kruzak причина этому - доступ к определенному файлу по известному пути на современных ФС не более чем за логарифмическое время. Листинг/поиск (ls, dir, readdir() ) же файлов в директории нельзя выполнить быстрее, чем за линейное время.

    Плюс все зависит от дополнительных ограничений конкретных ФС. Поэтому мне интересно - как ваш вопрос относится к пхп и не стоит ли его задать на форуме системных администраторов для вашей ОС?
     
    _________________________
  11. Rastamanka

    Rastamanka Elder - Старейшина

    Joined:
    26 Nov 2008
    Messages:
    429
    Likes Received:
    11
    Reputations:
    7
    Подскажите функцию для вот такой цели.
    Имеем файл с матными словами. Переносим файл в массив $file = file("../".$file_mat);
    Так же имеем массив пришедших сообщений $mess_arr;
    Задача: сравнить 2 массива и удалить из массива $mess_arr все элементы которые есть в в массиве $file желательно чтобы поиск был не по точному вхождению.

    То есть к примеру в массиве $file есть элемент со словом "****". В массиве $mess_arr есть элемент с предложением "ах ты ****". Так вот задача удалить из массива $mess_arr это предложение т.к. в нем обнаружено запрещенное слово.
     
  12. Кишин

    Кишин New Member

    Joined:
    5 Jul 2011
    Messages:
    42
    Likes Received:
    0
    Reputations:
    0
    Сессии!

    Скажите а сколько данных можно хранить в сессиях?
    Или неограничено?
    Я имею ввиду:
    PHP:
    <?php
    session_start
    ();
    $_SESSION['data1'] = "data1";
    $_SESSION['data2'] = "data2";
    $_SESSION['data3'] = "data3";
    $_SESSION['data4'] = "data4";
    $_SESSION['data5'] = "data5";
    $_SESSION['data6'] = "data6";
    $_SESSION['data7'] = "data7";
    $_SESSION['data8'] = "data8";
    $_SESSION['data9'] = "data9";
    ?>
    Вот сколько таких записей можно делать , неограничено ли это в php?
    Спасибо.
     
  13. Кишин

    Кишин New Member

    Joined:
    5 Jul 2011
    Messages:
    42
    Likes Received:
    0
    Reputations:
    0
    Rastamanka
    ой, яб непарился с этими масивами
    сделай просто
    $mes = str_replace("куй","CENSORED",$mes)
    $mes = str_replace("пиза","CENSORED",$mes)
    $mes = str_replace("лопух","CENSORED",$mes)
    ...
    ...
    ...
    $mes = str_replace("козел","CENSORED",$mes)
     
  14. Kruzak

    Kruzak New Member

    Joined:
    21 Dec 2010
    Messages:
    126
    Likes Received:
    4
    Reputations:
    1
    опять мистика у меня со скриптом...

    сайт на сервере в utf-8 через .htaccess
    скрипт сам тоже в utf-8 без bom
    <?
    echo $_GET['q'];
    ?>
    почти все запросы с кириллицей выводятся нормально
    ?q=один ?q=тест ?q=проверка+проверка
    но вот есть запрос ?q=трололо он выводится так Трд.�/�.�/
    из за чего такой глюк, и почему именно трололо
    уже написал функцию которая изменяет кодировку, он iconv не работает почему то в этом случае
     
  15. cardons

    cardons Elder - Старейшина

    Joined:
    19 Jul 2005
    Messages:
    778
    Likes Received:
    324
    Reputations:
    83
    Сам то подумал что предложил? А если таких слов 5к? :)

    Попробуй это. Мне всегда помогает ) Потом через iconv Win1251 в utf-8.
    http://popoff.donetsk.ua/text/work/libs/a/charset/
    Ну и в начале страницы добавь <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
     
    #20395 cardons, 8 Apr 2012
    Last edited: 8 Apr 2012
  16. Skofield

    Skofield Elder - Старейшина

    Joined:
    27 Aug 2008
    Messages:
    960
    Likes Received:
    392
    Reputations:
    58
    PHP:
    <?php
    function del_mats_from_array($message_arr$mats_arr) {
        for (
    $i 0$i count($mats_arr); $i++) {
            for (
    $j 0$j count($message_arr); $j++) {
                if (
    stristr($message_arr[$j], $mats_arr[$i])) {
                    unset(
    $message_arr[$j]);
                    
    sort($message_arr);
                }
            }
        }
        return 
    $message_arr;
    }
    print_r(del_mats_from_array("массив собщений""массив матерных слов"));
     
    #20396 Skofield, 8 Apr 2012
    Last edited: 9 Apr 2012
  17. n0n@me

    n0n@me New Member

    Joined:
    19 Feb 2010
    Messages:
    4
    Likes Received:
    2
    Reputations:
    5
  18. AnGeI

    AnGeI Elder - Старейшина

    Joined:
    8 Dec 2008
    Messages:
    395
    Likes Received:
    79
    Reputations:
    16
    Иногда использую файлы в качестве БД, появилась необходимость в транзакциях, я так понял, что нужно блокировать файл при записи, но другой процесс должен ждать пока лок будет снят. Каким образом можно реализовать лок + ожидание?

    З.Ы.: Понимаю, что БД придумано для таких целей, но сама по себе задача интересна.
     
  19. cardons

    cardons Elder - Старейшина

    Joined:
    19 Jul 2005
    Messages:
    778
    Likes Received:
    324
    Reputations:
    83
    flock($f, LOCK_EX);
    Вот в общем http://kurepin.ru/php/zametki/flock/
     
  20. AnGeI

    AnGeI Elder - Старейшина

    Joined:
    8 Dec 2008
    Messages:
    395
    Likes Received:
    79
    Reputations:
    16
    Кишин, ограничивается максимумом памяти, выделяемой скрипту. На фрихосте как-то пробовал, больше миллиона не получается.
     
Thread Status:
Not open for further replies.