| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > Дублирование массива с удалением оригинала |
| Автор: IZ@TOP 30.5.2005, 12:07 | ||
| САБЖ. У меня есть такой вариант:
Может есть вариант попроще? |
| Автор: Irokez 30.5.2005, 12:12 |
| а куда еще проще? |
| Автор: IZ@TOP 30.5.2005, 13:14 |
| Irokez, да я думал есть встроенная функция... оказалось что таковой нету |
| Автор: Opik 30.5.2005, 13:28 | ||
|
| Автор: Mal Hack 30.5.2005, 16:23 |
| А нафига делать копию, а затем удалять оригинал? Почему сразу с оригиналом работать нельзя? |
| Автор: IZ@TOP 30.5.2005, 16:36 |
| Mal Hack, думаю что это моя собственная ненужная заморочка. Есть объект метод которого, получает некие данные, после чего записывает их в временный массив (свойство объекта), он может быть перезаписан, и соответственно если юзать это свойство, можно потерять данные. Вот я и размышляю обо всяких ненужных мелочах, типа, что будет если такой метод юзать. Хотя наверное проще из этого метода возвращать массив и назначать его уже внешнему массиву вне объекта. В общем такие заморочки. Добавлено @ 16:37 Opr, ага... а теперь представь что у тебя в 20 местах такое твоиться |
| Автор: Mal Hack 30.5.2005, 16:42 | ||
| ИМХО, это уже неправильное проектирование... Судя по твоим словам тяжело понять что и как... А вот:
просто лишние операции. опиши суть более детально, что-ть придумаем. |
| Автор: Irokez 30.5.2005, 16:45 |
| IZ@TOP это ты пытаешься сделать private поле? |
| Автор: IZ@TOP 30.5.2005, 16:47 |
| Есть методы объекта предоставляющие некоторые данные, другой объект пользуется его функциями для выборки этих данных для дальнейшего их использования. Так вот, некоторые из этих данных могут использоваться однократно, а некоторые постоянно. Вот я и думаю как с ними лучше поступать. Хочется чистоты, чтобы лишнее исчезало. Но с другой стороны какая-то часть этих данных может понядобиться. По всем канонам мне кажется что я немного отступил от верного направления в разработке. Один класс занимается чисто збором глобальных данных используемых всегда чтобы объект конструктор мог ими воспользоваться. Далее это все уже попадет шаблонизатору. Добавлено @ 16:48 Irokez, нет. Я до РНР 5 пока не дожил. Пока только тестирую. Жду ответов. Побег домой, вечером напишу. |
| Автор: Mal Hack 30.5.2005, 17:01 | ||||
Пересмотри структуры классов.
Как параметры в функцию.
Можно как глобальные объявить. но удалять явно ничего не надо. |
| Автор: IZ@TOP 30.5.2005, 18:47 |
| Mal Hack, значить брошу затею эту |
| Автор: Mal Hack 30.5.2005, 20:04 | ||
А что в твоем понимании "логика" и что "данные". Я несколько тут не понимаю. |
| Автор: IZ@TOP 30.5.2005, 21:17 |
| Mal Hack, ну как мне кажется в данном случае, логика, это алгоритм работы системы в целом, как она должна поступать при определенных обстоятельствах и как реагировать на те или иные события. Данные же, представляются для меня как некий интерфейс, который должен предоставлять простейший механизм доступа к этим самым данным. Добавлено @ 21:18 Mal Hack, прошу камнями не кидать, если я в чем то не прав, выскажи свое представление о данном вопросе "что есть логика и что есть данные?". |
| Автор: Mal Hack 30.5.2005, 21:42 | ||||||
| IZ@TOP я просто из того что ты писал не мог понять что ты отчего хочешь отделить. Интуитивно, я конечно Понимаю, но хочется помочь а для этого надо понять суть задачи... У меня сегодня голова мутная какая-то. Устал как собака..
Я не гововрю, что ты не прав. Я хочу понять что у тебя в системе чем является...
Я обычно как делаю. Грубо говоря. Модуль работы (ядро системы), модуль интерфейса (шаблонизатор) и модуль данных. Он у меня правда делится на: данные в SQL модуле при разборке результата SQL запросов в DB классе и данные глобальные: лэнги, конфиги, URL посре парсера запроса. |
| Автор: Irokez 30.5.2005, 21:49 |
| IZ@TOP по-моему get метод - самое оптимальное |
| Автор: IZ@TOP 30.5.2005, 22:01 | ||||||
Оно самое.
Результатом этой мути и явилась данная тема в моем восполенном работой мозгу.
ЛОЛ |
| Автор: Mal Hack 30.5.2005, 22:05 |
| Если как бы кратно, то данные от пользователя - GET, POST, URI, COOKIE, LNG, CONF - глобальные. Даннеые из базы в $B -> DataObj[]. |
| Автор: Irokez 30.5.2005, 22:15 | ||
хм.. наврное я сегодня тоже туплю ... у тебя есть некий класс, который работает с некими данными, тебе нужно получить доступ к этим данным извне, но если ты будешь их записывать в поле класса, то ты боишься что эти данные можно испортить (т.к. в пхп4 нет private переменных класса). Если я правильно понял, то поступить нужно как обычно - создав метод get, который получает данные и возвращает их, таким образом доступ к данным есть, а испортить их нельзя .. по-моему я все таки что то не то написал .. |