Форум программистов, компьютерный форум, киберфорум
PHP
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.65/20: Рейтинг темы: голосов - 20, средняя оценка - 4.65
0 / 0 / 1
Регистрация: 30.08.2011
Сообщений: 14

Нестандартный вопрос.Как получить доступ к переменным функции из другой функции?

30.08.2011, 13:29. Показов 3866. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
declare(ticks=1);
function tick_handler()
{
print_r($_GLOBALS);//Печатает все переменные в области видимости кода вне функции
//А нужно чтобы ещё и печатались ещё и значения функции  test()
}
register_tick_function('tick_handler');
 
function test()
{
$a = 1;//Это не печатает
$a = 2;//Это не печатает
$a = 3;//Это не печатает
$a = 4;//Это не печатает
}
test();
$a = 1;//Это печатает
$a = 2;//Это печатает
$a = 3;//Это печатает
$a = 4;//Это печатает
?>
Печатает все переменные в области видимости кода вне функции
А нужно чтобы ещё и печатались ещё и значения переменных внутри функции test()
даже если нет global $a;
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
30.08.2011, 13:29
Ответы с готовыми решениями:

Новое окно+виджет. Как получить доступ к переменной из другой функции (метода) этого же класса?
QMainWindow* secondWindow = new QMainWindow(this); secondWindow-&gt;setGeometry(0,0,1024,720); ...

Получить доступ к локальной переменной другой функции
Что не так?Можно ли тут обойтись без указателя? #include &lt;iostream&gt; using namespace std; int a = 0; void m(void) { extern int b;...

Доступ к post переменным внутри функции
Скорей всего втупил где-то на элементарном, но никак не знаю как решить проблему: создал файл с формой(help.php)и в action соответственно...

10
163 / 163 / 9
Регистрация: 08.01.2011
Сообщений: 850
30.08.2011, 15:01
1) register_globals - в PHP считается моветоном. Лучше бы им не пользоваться.
2) А он вроде и не должен их печатать. Где вы вообще такой ужасающий и разъедающий глаза подход нашли?

P.S. название топика никак не отображает цели.
0
Почетный модератор
 Аватар для Humanoid
11556 / 4351 / 452
Регистрация: 12.06.2008
Сообщений: 12,454
30.08.2011, 15:08
Внутри функции test() делай
PHP
1
2
3
$GLOBALS['a'] = 1;
$GLOBALS['a'] = 2;
....
0
 Аватар для Vovan-VE
13210 / 6599 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
30.08.2011, 15:15
Цитата Сообщение от Humanoid Посмотреть сообщение
Внутри функции test() делай
Или
PHP
1
2
3
4
function f() {
    global $a;
    $a = 42;
}
0
0 / 0 / 1
Регистрация: 30.08.2011
Сообщений: 14
30.08.2011, 18:31  [ТС]
Спасибо ребята за подсказки,но задача как раз заключается в том чтобы искать в стандартных функциях .По долгу службы мне приходиться работать с самописными и редкими движками,пока найдёшь в каком именно месте формируется HTML-код проходит пару часов,особенно когда функции и классы вызывают друг друга по нескольку раз.Поэтому нужно чтобы код работал со скриптами движков,то есть
PHP
1
$GLOBALS['a'] = 2;
или
PHP
1
global $a;
не подойдут
0
163 / 163 / 9
Регистрация: 08.01.2011
Сообщений: 850
31.08.2011, 15:44
Так тебе надо свой дебагер с трасертом написать что-ли?
0
0 / 0 / 1
Регистрация: 30.08.2011
Сообщений: 14
31.08.2011, 19:56  [ТС]
KoIIIeY, угадал.Хочу искать в каком именно файле,строке,переменной зародился кусок HTML-кода
0
0 / 0 / 1
Регистрация: 30.08.2011
Сообщений: 14
03.09.2011, 13:45  [ТС]
Неужели нет каких-нибудь хаков для решения этой проблемы?
0
 Аватар для Vovan-VE
13210 / 6599 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
03.09.2011, 14:54
Цитата Сообщение от Pestriny Посмотреть сообщение
Хочу искать в каком именно файле,строке,переменной зародился кусок HTML-кода
Воспользуйтесь отладчиком или подручными средствами отладки.
0
0 / 0 / 1
Регистрация: 30.08.2011
Сообщений: 14
03.09.2011, 17:35  [ТС]
Вполне разумное предложение.Xdebug?
0
 Аватар для hatsub
61 / 60 / 7
Регистрация: 25.05.2011
Сообщений: 388
03.09.2011, 20:24
Pestriny, я лично в таких случаях при выводе, кроме текста, добавляю еще цифры или что-либо еще, в каждый echo/print - разные, и тогда понятно - что откуда берется.

PHP
1
2
3
4
echo '#1---<br/>';
echo some::method0($field0);
echo '#2---<br/>';
echo some::method1($field1);
p.s. функции в реале так и называются =)
 Комментарий модератора 
Свои "реальные" названия держите при себе.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
03.09.2011, 20:24
Помогаю со студенческими работами здесь

Доступ из статической функции к не стачисеским переменным
Добрый день! Имеется класс со статической функцией, как получить доступ, из это функции к не статичным переменным. Что то типа этого: ...

Friend функции не имеют доступ к закрытым переменным
Всем привет. Изучаю c++ по Липпману 5-ое издание. Там на стр. 351-352 используются friend функции для получения доступа к закрытым...

Как получить доступ к переменным из if
имеется такой вот код, где есть 4 пути решения проблемы в зависимости о FPAZA, проблема в том что дальше после блоков if меня интересуют...

Функции. Как после одного возвратного значения функции отталкиваться от возврата другой функции
Написал код, в котором 2 функции одна возвращает стринговое значение, вторая должна бы вернуть значение, отталкиваясь от первой. Возможно...

Получить указатель из функции и использовать его в другой функции
Подскажите пожалуйста как из функции использовать в функции main указатель? пример void foo1() {u=sizeof(str1); int *l=&amp;u; }...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Загрузка PNG-файла с альфа-каналом с помощью библиотеки SDL3_image на Android
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru