imho.ws
IMHO.WS  

Вернуться   IMHO.WS > Веб-мастеру > Веб-программирование
Опции темы
Старый 29.10.2007, 17:23     # 1
Viroman
Banned
 
Аватар для Viroman
 
Регистрация: 16.10.2007
Сообщения: 14

Viroman Нуль без палочки
Нужна помощь с PHP, вызов функции

Здравствуйте дорогие форумчане, нужна ваша помощь, а именно, наткнулся на проблему, что мне захотелось код своей страницы немного сузить до минимальных размеров, посему я решил выдрать те строки, которые повторяются многократно в одной и той же странице, и запихнуть их в функцию и потом её просто вызывать на том месте, где обычно они бы стояли как есть, эти строки, но столкнулся с проблемой, что сделав так программа не делает того, чего ожидаю, что делает обычно, когда код оставлен как есть, то есть возникает проблема с переменными, видимо в пхп5 они не глобальны и как то тут где то не контачится, в общем, вопрос, как сделать правильно.
PS: типа include и файл, где эти строки повторяются, пожалуйста не предлагать, работает хоть и отлично, но тоже как то глупо в отдельный файл каждую такую билеберду сувать.
Viroman вне форума  
Старый 29.10.2007, 21:15     # 2
Hubbitus
мод
IMHO Кодер-200(6,7,8)
 
Регистрация: 29.03.2003
Адрес: Saint-Petersburg, Russia
Пол: Male
Сообщения: 2 734

Hubbitus Бог с наворотамиHubbitus Бог с наворотами
Hubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотами
Конечно по-умолчанию переменные не глобальны, то есть область их видимости ограничена.
http://ru2.php.net/manual/ru/languag...bles.scope.php
__________________
Я делаю Линукс! Присоединяйтесь к свободным людям!

Связаться со мной всегда можно по джабберу: Hubbitus@jabber.ru
Pahan-Hubbitus.
Hubbitus вне форума  
Старый 30.10.2007, 05:42     # 3
Melkor
Full Member
 
Аватар для Melkor
 
Регистрация: 25.11.2001
Адрес: Imho.ws
Сообщения: 941

Melkor Луч света в тёмном царствеMelkor Луч света в тёмном царствеMelkor Луч света в тёмном царствеMelkor Луч света в тёмном царствеMelkor Луч света в тёмном царствеMelkor Луч света в тёмном царстве
Насколько я понял у тебя фунция меняет значения переменной во время работы и не возвращает правильный результат.
Можно передавать переменные по ссылке, изменения минимальные.

PHP код:
<?php
function foo([B]&[/B]$var)
{
    
$var++;
}

$a=5;
foo($a);
// $a здесь равно 6
?>
__________________
Когда умираешь, да еще так долго и трудно, очень хочется хоть немного насолить живым, просто невозможно удержаться от искушения!
М.Фрай
Melkor вне форума  
Старый 30.10.2007, 11:17     # 4
EvroStandart
Full Member
 
Аватар для EvroStandart
 
Регистрация: 20.01.2004
Адрес: Таллинн
Пол: Male
Сообщения: 623

EvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собой
Цитата:
Сообщение от Melkor Посмотреть сообщение
function foo(&$var)
наверно так реальнее. Чтобы товарищ не запутался
EvroStandart вне форума  
Старый 31.10.2007, 12:33     # 5
Viroman
Banned
 
Аватар для Viroman
 
Регистрация: 16.10.2007
Сообщения: 14

Viroman Нуль без палочки
Я просто шокирован информативностью ответов Мне не нужно собственно передавать переменные в функцию, я всего лишь хотел добиться того, чтобы сократить код и не повторять одно и то же несколько раз.. дошло и до того, что мне посоветовали писать класс..
Viroman вне форума  
Старый 31.10.2007, 15:20     # 6
Hubbitus
мод
IMHO Кодер-200(6,7,8)
 
Регистрация: 29.03.2003
Адрес: Saint-Petersburg, Russia
Пол: Male
Сообщения: 2 734

Hubbitus Бог с наворотамиHubbitus Бог с наворотами
Hubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотами
"Просто" - тогда используйте глобальные переменные.
Ну или приводите конкретнее вопросы. С примерами возможно. Что делаете, что хотите сделать, что что не получается!

А так можно долго гадать что же на самом деле Вам нужно....
__________________
Я делаю Линукс! Присоединяйтесь к свободным людям!

Связаться со мной всегда можно по джабберу: Hubbitus@jabber.ru
Pahan-Hubbitus.
Hubbitus вне форума  
Старый 01.11.2007, 13:21     # 7
EvroStandart
Full Member
 
Аватар для EvroStandart
 
Регистрация: 20.01.2004
Адрес: Таллинн
Пол: Male
Сообщения: 623

EvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собойEvroStandart Имеются все основания чтобы гордиться собой
Цитата:
Сообщение от Viroman Посмотреть сообщение
посоветовали писать класс
В упор не вижу где это.


Цитата:
Сообщение от Viroman Посмотреть сообщение
чтобы сократить код и не повторять одно и то же несколько раз
А функции в общем для этого и используются.
EvroStandart вне форума  


Ваши права в разделе
Вы НЕ можете создавать новые темы
Вы не можете отвечать в темах.
Вы НЕ можете прикреплять вложения
Вы НЕ можете редактировать свои сообщения

BB код Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 23:46.




Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.