как вставить в переменную другой php файл?

системотехник

Создатель
Регистрация
27 Апр 2009
Сообщения
14
Реакции
0
Требуется вставить в переменную другой php файл. Чтобы при выводе переменной отображался другой файл, ну например echo $login; //подключался модуль авторизации
 
Скрытое содержимое доступно для зарегистрированных пользователей!
 
скорее так
Код:
<?php
$incl = 'login.php';
include $incl;
 
doLogin(); /* функция имплементнутая в login.php */
 
ТС а теперь я сделаю index.php?incl=/images/shell.php и теперь у меня в распоряжении твой сайт.
каким образом, тоесть в каком случае это сработает?

давайте протестируем
файл index.php
Код:
<?php
$incl = 'login.php';
include $incl;
doLogin();
файл login.php
Код:
<?php 
function doLogin()
{
    echo 'login';
}

файл shell.php
Код:
<?php
echo 'shell';

что будет (что выведет) при вызове
1. index.php
2. index.php?incl=shell.php
 
$incl Не равно ведь ни $_POST ни $_GET
 
Требуется вставить в переменную другой php файл. Чтобы при выводе переменной отображался другой файл, ну например echo $login; //подключался модуль авторизации

содержание файла a.php

PHP:
<?php
function call(){
    echo "a.php included";
}
?>

содержание файла i.php

PHP:
<?php
function call(){
    echo "i.php included";
}
?>

содержание файла index.php
PHP:
<?php
$a = 0;
//первая версия
function login($admin = 0){
    if($admin){
        return include("a.php");
        }else{ return include("i.php");}
}
 
$login = 'login';
 
//вторая версия если хочеш проверить первую версиу прокоментируй ету строку
$login = create_function("\$admin = 0","if(\$admin){return include(\"a.php\");}else{return include(\"i.php\");}");
 
//заводим наш трактор
$login($a);
 
if(function_exists("call")){
    call();
}else{
    echo "No module conected";
}
?>

Тернарный оператор
PHP:
<?php
$a = 0;
function login($admin = 0){
        $include = ($admin)? include("a.php") : include("i.php");//Тернарный оператор
        return $include;
}
 
$login = 'login';
 
$login = create_function("\$admin = 0","\$include = (\$admin)? include(\"a.php\") : include(\"i.php\");return \$include;");
 
$login($a);
 
if(function_exists("call")){
    call();
}else{
    echo "No module conected";
}
?>

самая быстрая и оптимальная версия
PHP:
<?php
$a = 0;
 
//вторая версия
$login = create_function("\$admin = 0","if(\$admin){return include(\"a.php\");}else{return include(\"i.php\");}");
 
//заводим наш трактор
$login($a);
 
if(function_exists("call")){
    call();
}else{
    echo "No module conected";
}
?>
 
Назад
Сверху