Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Работа конструкции include()

Сообщения:  [1-6] 

 
 автор: nikita2206   (18.06.2009 в 14:15)   письмо автору
 
   для: Alexey_Tihonenko   (18.06.2009 в 12:48)
 

если в 2.php будет вместо этого: 3, это: echo 3;
то вполне возможно, но придётся воспользоваться буферизацией

  Ответить  
 
 автор: Alexey_Tihonenko   (18.06.2009 в 12:48)   письмо автору
 
   для: Петр   (18.06.2009 в 12:38)
 

Попробовал вывести тройку в первом случаи таким способом:
 
<?php
 
echo (include("2.php"));
?>

Как и ожидалось,вместо тройки вывелась единица.
Все таки, можно ли как-нибудь добраться до тройки в первом случаи(без оператора return) из главного файла, вывести ее на экран, поместить в переменную?
P.S. Я понимаю, что это не совсем корректный способ применения конструкции include(), просто интересно можно ли это осуществить.

  Ответить  
 
 автор: Петр   (18.06.2009 в 12:38)   письмо автору
 
   для: Alexey_Tihonenko   (18.06.2009 в 12:22)
 

"3" никуда не девается, оно просто висит в памяти, команды "вывести" ведь не было. а TRUE во втором случае заменяется на результат выполнения функции (т.е. на "3")

  Ответить  
 
 автор: Alexey_Tihonenko   (18.06.2009 в 12:22)   письмо автору
 
   для: Петр   (18.06.2009 в 12:17)
 

Уточнение:
куда девается "3" в первом случаи и куда девается "TRUE" во втором случаи?

  Ответить  
 
 автор: Петр   (18.06.2009 в 12:17)   письмо автору
 
   для: Alexey_Tihonenko   (18.06.2009 в 12:12)
 

В первом случае $x принимает результат выполнения функции include() (булево значение, т.е. true или 1 если функция успешно выполнена), а во втором случае - результат работы функции include()

return.php
<?php
$var 
'PHP';
return 
$var;
?>
noreturn.php
<?php
$var 
'PHP';
?>

testreturns.php
<?php
$foo 
= include 'return.php';
echo 
$foo// prints 'PHP'
$bar = include 'noreturn.php';
echo 
$bar// prints 1
?>

  Ответить  
 
 автор: Alexey_Tihonenko   (18.06.2009 в 12:12)   письмо автору
 
 

Хочу уточнить такой момент на счет работы конструкции include()
Главный файл:

<?php
  $x 
= include("2.php");
  echo 
$x;
?>


Файл 2.php первый вариант:

<?php
  3
?>


Файл 2.php второй вариант:

<?php
  
return (3);
?>


Почему в первом случаи в окно браузера выводится "1", а во втором "3"?

  Ответить  

Сообщения:  [1-6] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования