ФорумПрограммированиеPHP для идиотов → Может кто поможет со скриптом разобраться

Может кто поможет со скриптом разобраться

  • vahrecept

    Сообщения: 11 Репутация: N Группа: Кто попало

    Spritz 27 января 2016 г. 9:13, спустя 11 минут 11 секунд

    Получается что файл открывается целико

  • Crank

    Сообщения: 542 Репутация: N Группа: Джедаи

    Spritz 28 января 2016 г. 4:39, спустя 19 часов 25 минут 59 секунд

    Пробовал поменять на file пишет Array

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

    
    $s = file($modul . 'data.dat');
    echo $s[0];
    

    у тебя он работает?

  • vahrecept

    Сообщения: 11 Репутация: N Группа: Кто попало

    Spritz 28 января 2016 г. 8:23, спустя 3 часа 44 минуты 2 секунды

    Не работает. Так же показывает все ссылки

  • Sinkler

    Сообщения: 7958 Репутация: N Группа: в ухо

    Spritz 28 января 2016 г. 8:25, спустя 1 минуту 46 секунд

    в файле ссыкли на одной строчке все? :D

  • vahrecept

    Сообщения: 11 Репутация: N Группа: Кто попало

    Spritz 28 января 2016 г. 8:33, спустя 8 минут 6 секунд

    Каждая ссылка записывается с новой строки

  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 28 января 2016 г. 9:24, спустя 51 минуту 2 секунды

    Каждая ссылка записывается с новой строки

    @vahrecept, пиздеж :)

    Спустя 34 сек.

    PHP: file - Manual [php.net]

    Спустя 4 сек.

    читаем доку

    Сапожник без сапог
  • Crank

    Сообщения: 542 Репутация: N Группа: Джедаи

    Spritz 28 января 2016 г. 9:41, спустя 16 минут 51 секунду

    выкладывай сюда свой data.dat

  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 28 января 2016 г. 9:48, спустя 7 минут 1 секунду

    @Crank, нахуй нам тут мусор?)

    Сапожник без сапог
  • Crank

    Сообщения: 542 Репутация: N Группа: Джедаи

    Spritz 28 января 2016 г. 9:55, спустя 6 минут 57 секунд

    @phpdude, чего злой такой, видишь человек страдает? ))))

  • Sinkler

    Сообщения: 7958 Репутация: N Группа: в ухо

    Spritz 28 января 2016 г. 10:13, спустя 18 минут 27 секунд

    шесть дней уже) ну и терпение

  • vahrecept

    Сообщения: 11 Репутация: N Группа: Кто попало

    Spritz 28 января 2016 г. 11:01, спустя 47 минут 26 секунд

    Конечно спасибо большое! Но уже разобрался. Все работает.
    У меня с терпением все в порядке.

  • Trej Gun

    Сообщения: 5302 Репутация: N Группа: в ухо

    Spritz 29 января 2016 г. 9:08, спустя 22 часа 7 минут 17 секунд

    старая добрая пыха... и малышей дурному учите)))

  • vahrecept

    Сообщения: 11 Репутация: N Группа: Кто попало

    Spritz 30 января 2016 г. 4:29, спустя 19 часов 21 минуту 1 секунду

    Все таки я вернусь к теме
    Вывод одной ссылка:

    $data = explode("\n", file_get_contents($modul.'data.dat'));
    $data = $data[rand(0, count($data) - 1)];
    

    Вывод две ссылки:

    $data = explode("\n", file_get_contents($modul.'data.dat'));
    $data = $data[rand(0, count($data) - 1)].' '.$data[rand(0, count($data) - 1)];
    

    А как сделать так чтобы было можно указать количество ссылок (1,2,3 ссылки) и что бы ссылки не повторялись при выводе двух и более ссылок.

    А то по второму варианту повторяются.

    Сделал так:

    $data = explode("\n", file_get_contents($modul.'data.dat'));
    $max = count($data);
    $i = rand(0,$max);
    $data = $data[$i];
    

    Выводит одну случайную ссылку

    Делал так:

    $data = explode("\n", file_get_contents($modul.'data.dat'));
    $c=2; # Количество ссылок
    $out = rand(1, count($data) – $c);
    $sad=$out+$c;
    for($i = $out; $i < $sad; $i++) {
    $data = $data[$i];
    }
    

    Не работает

    Подскажите что не так?

  • Crank

    Сообщения: 542 Репутация: N Группа: Джедаи

    Spritz 1 февраля 2016 г. 8:29, спустя 2 дня 3 часа 49 минут

    @vahrecept, в php есть такая функция shuffle(), она перемешивает массив в случайном порядке.
    После того как ты его перемешал тебе остается только вывести циклом перебора нужное количество ссылок.

Пожалуйста, авторизуйтесь, чтобы написать комментарий!