Из комментария к вопросу: Не ищу, чтобы их запускали одновременно. Все файлы могут запускаться один за другим. Мне просто нужно избежать фатальной ошибки из-за одинаковых имен функций в нескольких файлах.
ТРИ ВАРИАНТА
Вариант 1, поместите общие функции в отдельный файл:
<?php
require shared_functions.php
require 1.php
require 2.php
require 3.php
?>
Вариант 2, заключите объявления функции в проверку, чтобы увидеть, была ли функция уже объявлена. Требуется размещение объявлений функций в оболочке перед вызывающим их кодом:
1. php
<?php
if (!function_exists('shared_function1')):
function 1(){
// yadda yadda
}
endif;
// rest of 1.php
?>
2. php
<?php
if (!function_exists('shared_function1')):
function 1(){
// yadda yadda
}
endif;
// rest of 2.php
?>
Если единственная проблема - вы обнаруживаются бомбы в делькациях функций для функций, которые уже были объявлены другим сценарием, сделайте имена функций уникальными (объяснено в конце этой опции), затем запустите сценарии с этим:
Вариант 3 - все. * 1 замените общее имя функции на имя функции_2 ... et c.
примеры: ТЕКУЩИЕ СКРИПТЫ
1.php
<?php
$var_dry = 'dry';
$var_wet = 'wet';
$result=sharedfunctionname($var_dry, $var_wet);
function sharedfunctionname($var_1, $var_2){
// mix two strings to make one with the letters from both intermingled
}
2.php
<?php
$var_dog = 'dog';
$var_cat = 'cat';
$result=sharedfunctionname($var_dog, $var_cat);
function sharedfunctionname($var_1, $var_2){
// something completely different from mixing two strings....
}
ПОСЛЕ СОЗДАНИЯ УНИКАЛЬНЫХ ИМЕН ФУНКЦИЙ
1.php
<?php
$var_dry = 'dry';
$var_wet = 'wet';
$result=functionname_1($var_dry, $var_wet);
function functionname_1($var_1, $var_2){
// mix two strings to make one with the letters from both intermingled
}
2.php
<?php
$var_dog = 'dog';
$var_cat = 'cat';
$result=functionname_2($var_dog, $var_cat);
function functionname_2($var_1, $var_2){
// something completely different from mixing two strings....
}