Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Вызов переменных из файла ... ... Вызов переменных из файла ... 
:(
    Опции темы
bmx
Дата 23.1.2004, 22:42 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Здравствуйте, уважаемые мастера.
Я делаю скрипт и он состоит из двух частей первая часть - сам скрипт, а вторая это файл 'vars'.
т.е. - vars -
$ftp_1 = '10.0.0.1';
$ftp_2 = '10.0.0.2';
$ftp_3 = '10.0.0.3';
........etc

теперь такой вот вопрос:
каким образом можно вызвать из файла vars все переменные для дальнейшего использования их в скрипте ? если можно то приведите плз простенький пример.
  Вверх
lifer
Дата 23.1.2004, 22:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 52
Регистрация: 17.1.2004
Где: Kiev, Ukraine

Репутация: нет
Всего: нет



Записать весь файл в массив построчно, а потом работать с ним.

Это сообщение отредактировал(а) lifer - 23.1.2004, 23:55
PM MAIL WWW ICQ   Вверх
lifer
Дата 24.1.2004, 00:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 52
Регистрация: 17.1.2004
Где: Kiev, Ukraine

Репутация: нет
Всего: нет



Вот держи:
Код
<?
$Vars=fopen("vars.txt","r");
while(!feof($Vars)) $st[]=fgets($Vars,4096);
$position=strpos($st[0],' ');
for($i=0;$i<count($st);$i++)
{
$ftp[$i]=substr($st[$i],$position+4,-2);
}
?>


Специалистам: Как ещё можно эту задачу реализовать?

Это сообщение отредактировал(а) lifer - 24.1.2004, 00:46
PM MAIL WWW ICQ   Вверх
BloodLetter
Дата 24.1.2004, 08:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 26.12.2003

Репутация: нет
Всего: нет



Сделал бы include("vars");

Или я чего-то недопонял?..
PM MAIL ICQ   Вверх
Secandr
Дата 24.1.2004, 08:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Связист
****


Профиль
Группа: Экс. модератор
Сообщений: 4043
Регистрация: 3.8.2003
Где: Russia, Volgograd

Репутация: 5
Всего: 39



BloodLetter Именно так все и делают.
только варс должен быть такой:
Код
<?$ftp_1 = '10.0.0.1';
$ftp_2 = '10.0.0.2';
$ftp_3 = '10.0.0.3';?>



--------------------
Мышки плакали, кололись, но продолжали жрать кактусы (с) cisco
PM ICQ AOL   Вверх
lifer
Дата 24.1.2004, 09:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 52
Регистрация: 17.1.2004
Где: Kiev, Ukraine

Репутация: нет
Всего: нет



Хм, будем знать.
PM MAIL WWW ICQ   Вверх
Secandr
Дата 24.1.2004, 10:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Связист
****


Профиль
Группа: Экс. модератор
Сообщений: 4043
Регистрация: 3.8.2003
Где: Russia, Volgograd

Репутация: 5
Всего: 39



lifer можно ещё вот как сделать:
Файл:
Код
a=5
b=6
c=7
А вот как его читать:
Код
$file=file('vars.txt');
unset($aray);
foreach($file as $v)
{
  $tmp= explode('=',$v);
  $array['$tmp[0]']=$tmp[1];
}
unset($file);
extract($array,EXTR_OVERWRITE);
echo $a.','.$b.','.$c;//Увидим 5,6,7
Вот и простой файл.
Тут где-то пример валялся, как измерить время работы в милисикундах, попробуй проверь, кто быстрее smile.gif

Это сообщение отредактировал(а) Secandr - 24.1.2004, 10:01


--------------------
Мышки плакали, кололись, но продолжали жрать кактусы (с) cisco
PM ICQ AOL   Вверх
arial
Дата 24.1.2004, 14:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник Клуба
Сообщений: 772
Регистрация: 11.3.2003
Где: Архангельская обл .

Репутация: 6
Всего: 7



А в файл vars сразу массив не запихать?
Код
$ftp = array(
   '10.0.0.1',
   '10.0.0.2',
   '10.0.0.N',
);



--------------------
Есть люди, в которых живет Бог. Есть люди, в которых живет дьявол. А есть люди, в которых живут только глисты. (Ф. Раневская)
PM ICQ   Вверх
Secandr
Дата 24.1.2004, 16:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Связист
****


Профиль
Группа: Экс. модератор
Сообщений: 4043
Регистрация: 3.8.2003
Где: Russia, Volgograd

Репутация: 5
Всего: 39



arial Я думаю всётаки
Код
<?
$ftp = array(
  '10.0.0.1',
  '10.0.0.2',
  '10.0.0.N',
);
?>

И спокойно грузить инклудом.
Может быть есть смысл писать:
$ftp[]='10.0.0.1';
$ftp[]='10.0.0.2';
$ftp[]='10.0.0.3';
P.S. Это уже не принципиально.


--------------------
Мышки плакали, кололись, но продолжали жрать кактусы (с) cisco
PM ICQ AOL   Вверх
lifer
Дата 24.1.2004, 19:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 52
Регистрация: 17.1.2004
Где: Kiev, Ukraine

Репутация: нет
Всего: нет



Secandr спасибо за пример. Обязательно проверю что быстрее работает.
---
З.Ы.
Код
<?
$timer = new Timer();
$str = 'while($b < 5000){ while ($a<5000) { $a++; } $a = 0; $b++; }';
eval($str);

echo "eval:".$timer->end()."<br>";
$b = 0;
$timer->start();
while($b < 5000){
while ($a<5000) { $a++; } $a = 0;
$b++;
} // while
echo $timer->end();
?>

Выдаёт:
Fatal error: Cannot instantiate non-existent class: timer in z:\home\localhost\www\test.php on line 2

Что это за класс timer и где его взять?

З.Ы.Ы. Я этот пример взял из темы про eval(). Я так понимаю этот класс человек сам определил...

Это сообщение отредактировал(а) lifer - 24.1.2004, 21:20
PM MAIL WWW ICQ   Вверх
Secandr
Дата 25.1.2004, 10:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Связист
****


Профиль
Группа: Экс. модератор
Сообщений: 4043
Регистрация: 3.8.2003
Где: Russia, Volgograd

Репутация: 5
Всего: 39



lifer Кажется в факе по пхп лежал этот класс. И если мне не изменяет память мутоген его постил.


--------------------
Мышки плакали, кололись, но продолжали жрать кактусы (с) cisco
PM ICQ AOL   Вверх
lifer
Дата 25.1.2004, 13:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 52
Регистрация: 17.1.2004
Где: Kiev, Ukraine

Репутация: нет
Всего: нет



Всё ОК. Класс я нашёл (http://faqs.org.ru/progr/web_lang/ru_php.htm)
Твой пример работает в полтора раза быстрее smile.gif

PM MAIL WWW ICQ   Вверх
Secandr
Дата 25.1.2004, 14:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Связист
****


Профиль
Группа: Экс. модератор
Сообщений: 4043
Регистрация: 3.8.2003
Где: Russia, Volgograd

Репутация: 5
Всего: 39



lifer Если скорость обработки критична, можно ещё попробовать заменить explode на strpos и substr.
Хотя не факт, что будет быстрее.


--------------------
Мышки плакали, кололись, но продолжали жрать кактусы (с) cisco
PM ICQ AOL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0508 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.