[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Рэндом строки из файла
began
Здравствуйте.

Хотелось бы что б строки из файла выводились рендом, что дописать в код ?

помогите плиз примером




<?php

$file=@file('folder/file.txt');

$ves = sizeof($file);

if( $ves != "")
{

$table = "";
for($i=0; $i<18; $i++)
{

if($file[$i] != "")

{
$table .= "<h2>blal lal</h2>";
}

}

}


$table .= "";

echo $table;
?>




Спустя 32 минуты, 44 секунды (23.11.2011 - 06:37) bulgakov написал(а):
Может быть так?
$file=@file('folder/file.txt');
$k = array_rand($file);
echo $file[$k];

Спустя 17 минут, 10 секунд (23.11.2011 - 06:54) began написал(а):
Цитата (bulgakov @ 23.11.2011 - 03:37)
Может быть так?
$file=@file('folder/file.txt');
$k = array_rand($file);
echo $file[$k];

Спасибо большое

Спустя 1 минута, 9 секунд (23.11.2011 - 06:55) Guest написал(а):
began
Работает так как надо?

Спустя 7 часов, 20 минут, 15 секунд (23.11.2011 - 14:16) began написал(а):
Цитата (Guest @ 23.11.2011 - 03:55)
began
Работает так как надо?

так работает

$a = file($filename);
shuffle($a);
foreach (array_slice($a, 0, 20) as $d) {
echo trim($d)."<br>\n";
}

Спустя 1 час, 19 минут, 22 секунды (23.11.2011 - 15:35) Guest написал(а):
такая же проблемка была biggrin.gif

Спустя 5 дней, 4 часа, 34 минуты, 31 секунда (28.11.2011 - 20:09) began написал(а):
в файле 100 строк, выводиться 10 строк Рендом
попадаются пустые строки.

строка
строка

строка

строка


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

$a = file('file.txt');

shuffle($a);

$table = "";

foreach (array_slice($a, 0, 10) as $d) {

$table .= "";

}

$table .= "";

Спустя 7 минут, 47 секунд (28.11.2011 - 20:17) Winston написал(а):
Попробуй так ниписать
$a = file('file.txt', FILE_SKIP_EMPTY_LINES);

А если не поможет, то после чтения из файла написать
$a = array_diff($a, array(''));

Спустя 22 минуты, 18 секунд (28.11.2011 - 20:40) began написал(а):
Цитата (Winston @ 28.11.2011 - 17:17)
Попробуй так ниписать
$a = file('file.txt', FILE_SKIP_EMPTY_LINES);

А если не поможет, то после чтения из файла написать
$a = array_diff($a, array(''));

Спасибо большое
но почему то не помогло, все равно есть пустые строки

Спустя 2 часа, 31 минута, 57 секунд (28.11.2011 - 23:11) began написал(а):
так работает

$a = array_filter($a, create_function('$s', 'return strlen(trim($s));'));
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.