Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

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

 

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

вид форума:
Линейный форум Структурный форум

тема: Внешние переменные в теле функций
 
 автор: Agronom   (28.01.2006 в 16:00)   письмо автору
 
 

Господа, подскажите как использовать в функции внешнии переменные, например


<?php
 $count 
2;

function 
count($str){

   print(
$count +$str);

}
?>

   
 
 автор: TrunK   (28.01.2006 в 16:22)   письмо автору
 
   для: Agronom   (28.01.2006 в 16:00)
 

Я знаю только 1 способ - передать функции эту переменную.

<?php 
$count 
2

function 
count($str,$count)

   print(
$count +$str); 


?>

   
 
 автор: WebTech   (28.01.2006 в 16:48)   письмо автору
 
   для: Agronom   (28.01.2006 в 16:00)
 

Только через суперглобальный массив $GLOBALS

<?php 
$GLOBALS
['count'] = 2

function 
count($str){ 

   print(
$GLOBALS['count'] +$str); 


?>

либо передать функции эту переменную как советует Trunk

   
 
 автор: Boss   (28.01.2006 в 18:59)   письмо автору
 
   для: WebTech   (28.01.2006 в 16:48)
 


$_SESSION['count'] = 2;

.....
.....

unset $_SESSION['count'];

   
 
 автор: Agronom   (28.01.2006 в 19:10)   письмо автору
 
   для: Boss   (28.01.2006 в 18:59)
 

Не, сессии это уже извращение. Глобальные переменные думаю предпочтительнее и удобнее, а передача через параметр лишняя морока

   
 
 автор: Drago   (28.01.2006 в 21:04)   письмо автору
 
   для: WebTech   (28.01.2006 в 16:48)
 

Можно объявить эту переменную глобальной и в теле функции.

<?php
$count 
2;
function 
count($str)
{
  global 
$count;
  print(
$count $str); 
}
?>

   
 
 автор: cheops   (28.01.2006 в 22:28)   письмо автору
 
   для: Agronom   (28.01.2006 в 16:00)
 

Чтобы обилие ответов не вводило в заблуждение, следует оговорится, что все предложенные способы правильные - для решения этой проблемы существует несколько путей.

   
Rambler's Top100
вверх

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