grendmaster
Постоялец
- Регистрация
 - 21 Апр 2010
 
- Сообщения
 - 67
 
- Реакции
 - 2
 
- Автор темы
 - #1
 
Привет всем, никак не хочет работать этот класс в моем скрипте,вернее сказать класс сам по себе работает отлично,но когда вместо текста ставлю переменную тут и возникают ошибки
 
Сам класс:
	
	
	
		
 
Как использовать:
	
	
	
		
 
Нашел здесь: Для просмотра ссылки Войдиили  Зарегистрируйся
 
Как здесь вместо текста вставить переменную?
$spintax->spin("{{Hello|Hi} my name is {Ron|Ronald}|Another random {sentence|{statement|phrase|saying}}}");
 
Нужно $spintax->spin('$title');
$title = file('titles.txt');
 
Понимаю что ошибка скорее всего из-за неправильного чтения файлов,подскажите плиз как правильно?
 
$title = file('titles.txt'); здесь заработало так $title = file_get_contents('titles.txt')
titles.txt - одна строка {KEY1|KEY2|KEY3}
 
description.txt - много строк и не работает
{KEY1|KEY2|KEY3}
{KEY7|KEY6|KEY1}
{KEY9|KEY4|KEY2}
как description.txt читать построчно и целиком одновременно?
	
		
			
		
		
	
				
			Сам класс:
		Код:
	
	<?php
class Spintax {
 
  function spin($str, $test=false)
  {
      if(!$test){
        do {
            $str = $this->regex($str);
        } while ($this->complete($str));
        return $str;
      } else {
        do {
            echo "<b>PROCESS: </b>";var_dump($str = $this->regex($str));echo "<br><br>";
        } while ($this->complete($str));
        return false;
      }
  }
 
  function regex($str)
  {
      preg_match("/{[^{}]+?}/", $str, $match);
      // Now spin the first captured string
      $attack = explode("|", $match[0]);
      $new_str = preg_replace("/[{}]/", "", $attack[rand(0,(count($attack)-1))]);
      $str = str_replace($match[0], $new_str, $str);
      return $str;
  }
 
  function complete($str)
  {
      $complete = preg_match("/{[^{}]+?}/", $str, $match);
      return $complete;
  }
}
	Как использовать:
		Код:
	
	<?php
include("spintax.class.php");
$spintax = new Spintax;
// Add true to the spin functions to debug and see each line as it is spun in the process
$spintax->spin("{{Hello|Hi} my name is {Ron|Ronald}|Another random {sentence|{statement|phrase|saying}}}");
	Нашел здесь: Для просмотра ссылки Войди
Как здесь вместо текста вставить переменную?
$spintax->spin("{{Hello|Hi} my name is {Ron|Ronald}|Another random {sentence|{statement|phrase|saying}}}");
Нужно $spintax->spin('$title');
$title = file('titles.txt');
Понимаю что ошибка скорее всего из-за неправильного чтения файлов,подскажите плиз как правильно?
$title = file('titles.txt'); здесь заработало так $title = file_get_contents('titles.txt')
titles.txt - одна строка {KEY1|KEY2|KEY3}
description.txt - много строк и не работает
{KEY1|KEY2|KEY3}
{KEY7|KEY6|KEY1}
{KEY9|KEY4|KEY2}
как description.txt читать построчно и целиком одновременно?