|
|
|
| Есть файл index.php , например:
<?php
require_once( 'conf.php' );
function name($name){
$new=$new2;
}
?>
|
В файле конфига conf.php есть переменная $new2
Вопрос почему переменная $new2 не работает в function ? И как заставить её там работать именно из файла конфига? | |
|
|
|
|
|
|
|
для: x2x2
(16.01.2009 в 03:51)
| | Потому, что функция не знает о ее существовании. Вы должны либо объявить ее глобальной в фунции, либо передать в функцию. | |
|
|
|
|
|
|
|
для: x2x2
(16.01.2009 в 03:51)
| | Можно еще использовать не переменные, а константы. Допустим так:
conf.php
<?php
define('NEW2', 123);
?>
|
index.php
<?php
require_once( 'conf.php' );
function name($name){
$new = NEW2;
}
?>
|
| |
|
|
|
|
|
|
|
для: x2x2
(16.01.2009 в 03:51)
| |
<?
require_once( 'conf.php' );
echo 'new2--'. $new2;// проверям, приходит ли вообще переменная из conf.php
function name($new2){
$new=$new2;
echo'<br>--'. $new;
}
name($new2);
|
| |
|
|
|
|
|
|
|
для: x2x2
(16.01.2009 в 03:51)
| | Читаем в мануале про область видимости переменных. Делаем выводы. | |
|
|
|
|
|
|
|
для: Loki
(16.01.2009 в 09:25)
| | Всем спасибо! Все понятно.
Прописал в ф-ии переменую new2 как global. global $new2; и все заработало. | |
|
|
|
|
|
|
|
для: x2x2
(16.01.2009 в 15:46)
| | Лично я стараюсь писать код не используя глобальные переменные | |
|
|
|
|
|
|
|
для: Valick
(16.01.2009 в 16:22)
| | >стараюсь писать код не используя глобальные переменные
В каждой функции создаете новый экземпляр класса для работы с БД?:) | |
|
|
|