Как узнать имя переменной?

1. Максим (20.08.2010 / 08:17)
Возможно ли такое?

2. Zдешний (20.08.2010 / 08:19)
в смысле?????????? чего то недопонял

3. Максим (20.08.2010 / 08:36)
$var = 1

нужно узнать имя переменой $var, это будет var. просто интересно узнать какой функцией узнать имя переменной? интересно

4. KOZZ (20.08.2010 / 08:56)
можно только задавать переменные переменных, т.е. одна переменная будем именем второй переменной..но наверняка в твоем случае можно найти другое решение.
что конкретно надо сделать?

5. KOZZ (20.08.2010 / 09:08)
http://php.su/learnphp/vars/?varsvars
вот кури, как раз по сабжу

6. Azzido (20.08.2010 / 09:29)
это совсем не то, переменные переменных это вообще не в ту степь, так как это всего лишь символические ссылки на значение другой переменной, вот набросал функцию
<?php

function get_name($var){
$array=get_defined_vars();
while(list($key,$val)=each($array)){
if($val==$a){
return $key;
break;
}
}
}

// Переменная
$aaaaaa='test';

// Получение имени переменной
echo get_name($aaaaaa);
?>


7. Azzido (20.08.2010 / 09:41)
ошибочка
<?php
$var='test';
$array=get_defined_vars();
while(list($key,$val)=each($array)){
if($val==$var){
echo $key;
break;
}
}
?>


8. Azzido (20.08.2010 / 10:22)
можно и вот так организовать
<?php

$a1='test1';
$a2='test2';
$a3='test3';

$array=get_defined_vars();
while(list($key,$val)=each($array)){
$var_name["$val"]=$key;
}

echo $var_name[$a1],'<br />';
echo $var_name[$a2],'<br />';
echo $var_name[$a3],'<br />';

?>


9. Максим (20.08.2010 / 12:29)
Не обесутте, мне это незачем, просто стало очень интересно)

10. KOZZ (20.08.2010 / 12:33)
9, поощряй тогда Azzido за помощь )))

11. Максим (21.08.2010 / 06:17)
Яб с удовольствием, но я еще мал( всем спасибо за дискуссию!

12. ramzes (21.08.2010 / 09:01)
чушь. если ты не знаешь имени переменной то и обращаться к ней не сможешь, в том числе и имя ее узнать.
если только это ячейка массива.
fereach($arr as $key=>$val)
{}

13. Zдешний (21.08.2010 / 10:10)
Ваш положительный голос за пользователя Azzido успешно оставлен!
В данный момент его авторитет: 49
Всего положительных голосов: 50
Всего отрицательных голосов: 1
держи за аффтара))

14. Zдешний (21.08.2010 / 10:11)
#12, fOreach

15. KOZZ (21.08.2010 / 10:20)
Полосатый Playa (21 Августа 2010 / 17:11)
#12, fOreach
не суть важно, опечатка ))

16. ramzes (21.08.2010 / 15:00)
#14 экранная клава имеет свои недостатки

17. ZaRiN (25.08.2010 / 16:56)
Вариантов много... например регулярка и еще куча функций которые работают со строковыми данными)))

18. Azzido (25.08.2010 / 16:58)
17. DnBinUA, да я бы так сказал, покажи своё множество вариантов

19. ZaRiN (25.08.2010 / 18:50)
експлод, субстр,стр_реплейс,прег_реплейс

20. ramzes (25.08.2010 / 20:30)
19, ну и покажи как ты имя переменной будешь получать хоть одной из этих функций))

21. ZaRiN (25.08.2010 / 20:39)
$var = explode("$",'$kakaya_to_peremennaya');
echo $var['1']; //kakaya_to_peremennaya

Еще примеры надо? D

22. Саня (25.08.2010 / 20:52)
21, D )
Догда уж
<?php
$tralala = 'PHP';
echo str_replace('$', '', '$tralala');
?>


23. Дмитрий (25.08.2010 / 21:02)
21, это ты наугад, зная имя переменной, пытаешься вывести её содержимое.
Но если ты не знаешь имени?
В этом случае я согласен с 12 постом Рамзеса.

24. Azzido (25.08.2010 / 21:08)
21,22, совершенно верно, только зная имя переменной, так что вариант неверной

25. ZaRiN (25.08.2010 / 21:19)
23, я не вывожу содержимое переменной, а ее имя
А если ты не знаешь имени переменной то и сделать с тем, чего не знаешь ничего не можешь smile
24, покажи как не зная имени переменной можно узнать ее имя? D
вдумайся в слова,- узнать имя переменной не зная ее имени xD

26. ZaRiN (25.08.2010 / 21:20)
php_flag mod_telepat on пока что еще не доступен, возможно в 6 версии пыха такое будет возможно))) и там можно будет не зная имени узнать имя чего угодно D

27. Azzido (25.08.2010 / 21:56)
25. DnBinUA, это глупо конечно, но если ставится именно условие узнать имя переменной типа не зная её имя, то это я написал в 8 посту, но вот это
21. DnBinUA (Сегодня / 22:39)
Пацак [Off]
Отв / Цит / Спам
$var = explode("$",'$kakaya_to_peremennaya');
echo $var['1']; //kakaya_to_peremennaya

Еще примеры надо?
(Opera 10.61, 188.163.88.16)
вообще ни к чему тогда уж

$var='aaaaaaa';

echo 'Значение - $var.', имя - var';

28. Дмитрий (25.08.2010 / 21:58)
26. DnBinUA, спасибо, поржал, +1 отдал E

29. ZaRiN (25.08.2010 / 22:16)
27, в 8 посту чо то я не увидел что ты узнал имя переменной yt зная ее имени D

30. ramzes (25.08.2010 / 22:31)
DnBinUA (25 Августа 2010 / 20:39)
$var = explode("$",'$kakaya_to_peremennaya');
echo $var['1']; //kakaya_to_peremennaya

Еще примеры надо? D
надо конечно, а то трава кончилась а посмеяться охото.
ты как узнал имя неизвестной переменной что бы пытаться извлечь из нее имя?))
короче, не ломай себе мозг, вопрос идиотский, ответ - ни как.

31. ZaRiN (25.08.2010 / 22:43)
30. ramzes, 3 пост еще раз перечитай)))
Процитирую:

$var = 1

нужно узнать имя переменой $var, это будет var. просто интересно узнать какой функцией узнать имя переменной? интересно
там чотко написано что нужно узнать имя переменной $var, значит имя известно, значит я прав smile

32. ZaRiN (25.08.2010 / 22:45)
Это Azzido умеет имя переменных узнавать не зная имени))) что сам подтверждал)))

33. Azzido (26.08.2010 / 06:42)
32. DnBinUA, ты просто трололо, там можно докопаться до мелочи, но однако я там получил массив с именами всех зарегистрированных переменных

34. ZaRiN (26.08.2010 / 11:30)
Именно что всех) и левака там куча получил тоже - пост, гет, глобалс, реквест и остальные. Да и прочитай, речь идет об перменной, а не переменных... Я вроде не говорил что невозможно получить список всех зарегистрированных переменных smile я только говорю что невозможно узнать имя переменной не зная ее имени.
Ты на свою аву глянь, там увидишь троля и можешь над ним ололокать сколько угодно

URL: https://visavi.net/topics/12781