Объединение php скриптов в один файл

guru85

Постоялец
Регистрация
24 Мар 2010
Сообщения
100
Реакции
4
есть простые парсеры, работаю по курлу, все имеют одинаковые переменные, если запускать каждый по отдельности то все ок, но неудобно, хотел объединить их в один файл, пробовал инклюдить по очереди? типа так:
Код:
include("script1.php"); //подключаем доп функции
include('script2.php');
include('script3.php');
но происходит непонятки, ошибки появляются, не пойму как правильно их объединить для последовательного запуска. Может как то сбросить переменные в конце каждого скрипта. unset каждую перибарать долго, много переменных, и не знаю поможет или нет это.
 
для начала коды ошибок покажите - экстрасенсы в новогоднем отпуске (выйдут в районе 1 апреля на пару дней)

скорее всего дело в том что дубли функций появляются
либо относительные пути где то меняются
 
да я просто разобрал уже php с инклюдом, ошибка была в файле с функциями, у меня там дергается текст из html и водной из строчек ошибка. как от дублей избавится?

вот ошибка Fatal error: Cannot redeclare gettextfromhtml() (previously declared in Y:\home\localhost\www\test\4\videoparser\function.php:1) in Y:\home\localhost\www\test\4\videoparser\function.php on line 36
 
так и есть - дублирование функций

вычистите в
script2.php и script3.php

блоки типа

PHP:
function name() {
.....
.....
}

эти функции были загружены при инклуде script1.php
 
в скриптах нет function в каждом скрипте у меня, инклюд файла function.php, видимо надо убрать во всех последующих кроме первого этот инклюд. наверно в этом косяк, а переменные не могут задублироватся как нибудь? ведь называются они одинаково, но в каждом скрипте имеют разное значение?
 
ну вот в этом function.php - эти function и есть - тогда удалить лишние инклуды

задублироваться не могут тк скрипт выполняется последовательно

те они не дублируются они заменяются на значения из следующего участка кода

те надо их использовать (или выводить) и только потом инклудить следующий парсер
 
замените include или require на их братьев include_once и require_once и будет вам счастье)
 
Может я наркоман и не вкуриваю сути вопроса но не проще ли было просто создать 1 html файл !?!?!?!
Ведь скрипты могут быть разные и не всегда выйдет так что получится инклудить их...

HTML:
<iframe src="./script1.php"></iframe>
<iframe src="./script2.php"></iframe>
<iframe src="./script3.php"></iframe>
<iframe src="./script4.php"></iframe>

Конечно это не так правельно как выше решение но зато быстрое и работает 100%
И Запускать можно любое колличество любых скриптов.
 
Arqin прав, используй require. Разница между ними в том что рекуайр сразу обрабатывает файл и добавляет только результаты, а с инклуд как б он сначала соединяется в файл а потом обрабаывается.
 
Назад
Сверху