spintax — Случайная статья из каталога, отображаемого на моих страницах HTML или PHP. Я уже знаю, как сделать это на статической странице HTML, но не случайно

Я пытаюсь извлечь статьи из каталога наугад, а затем вращать и отображать. Это для статей Spintax Пример:

{Кошка | Собака | Обезьяна | Рыба | Ящерица} {пошел к озеру | съел мышь | прыгнул в воду}

В каталоге будет несколько текстовых файлов. Я уверен, что почти у меня это есть!

<?php
function spin($s){
preg_match('#\{(.+?)\}#is', $s, $m);
if (empty($m))
return $s;

$t = $m[1];

if (strpos($t, '{') !== false)
{
$t = substr($t, strrpos($t,'{') + 1);
}

$parts = explode("|", $t);
$s = preg_replace("+\{".preg_quote($t)."\}+is",
$parts[array_rand($parts)], $s, 1);

return spin($s);
}

$articles = glob("test/*.txt");
$file = array_rand($articles);
$string = file_get_contents($articles[$file]);
$f = file_get_contents($string, "r");
while ($line = fgets($f, 1000)) {
echo spin($line);
}
?>

0

Решение

Я исправил это через 20 минут после. Я разместил неработающий скрипт выше.

$ f = file_get_contents ($ string, «r»); Строка $ не принадлежала, я немного устал.

  <?php


function spin($s){
preg_match('#\{(.+?)\}#is',$s,$m);
if(empty($m)) return $s;

$t = $m[1];

if(strpos($t,'{')!==false){
$t = substr($t, strrpos($t,'{') + 1);
}

$parts = explode("|", $t);
$s = preg_replace("+\{".preg_quote($t)."\}+is",
$parts[array_rand($parts)], $s, 1);

return spin($s);
}





$articles = glob("test/*.txt");
$files = array_rand($articles);
$f = fopen($articles[$files], "r");
while ( $line = fgets($f, 1000) ) {
echo spin($line);
}
?>
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]