|
|
|
| 1. Уважаемые, возможно ли подобное т.е. у меня есть массив который нужно использовать в нескольких функциях - функция в функции не вариант.
если будет необходимость могу более конкретный пример привести ...
2. У меня есть небольшое количество данных из которых я делаю многомерный ассоциативный массив, скажите пожалуйста что оптимальней с точки зрения нагрузки на сервер поиск в массиве или обращение к БД через SQL запрос?
P.S. уверен тут есть люди которые могут подсказать адрес канала для программы mirc на тему php, нужно мне это для того что бы читать что люди умные пишут, возможно познакомиться с кем нибудь
итог: буду очень признателен за ответы | |
|
|
|
|
|
|
|
для: extonec
(16.01.2010 в 18:56)
| | 1. объявлять имя массива в функциях как
global $array; // если имя массива уникальное
Просто функции будут работать не с его копией а с ним самим по ссылке.
2. сложно сказать.
Если данных заметно много, а нужна чаще всего бывает только часть их
, если данные нужно иногда динамичесли изменять(если речь не идёт о данных меняющихся для каждого выполнения)
, то возможно лучше хранить в mysql
, тем более если скрипты и так к ней подключаются каждый раз.
Если данных не много и они только и нужны для чтения
, то может быть и лучше просто где-то добавить $array = array(.......)
//upd: в перменной это фактически в памяти + издержки по парсингу php-кода
P.S. не юзал.
// а вообще знать-бы о каких данных вопрос | |
|
|
|
|
|
|
|
для: heed
(16.01.2010 в 20:04)
| | глобал массив в функции - спс это знаю, я имел в виду из функции(й) обращаться к внешнему массиву а именно:
$arr = array("one"=>"hello world", ...);
function bla() {
return($arr['one']);
}
bla();
- неработает, вопрос: как объявить массив для использования данных в функции(ях)
по поводу 2го вопроса:
данные string максимум 100 знаков, вложенность 2 массива, статические, глубина массивов ~ по 10 ассоциаций т.е. ~ 100 вариантов. | |
|
|
|
|
|
|
|
для: extonec
(16.01.2010 в 20:46)
| | так и будет
function bla() {
global $arr;
return($arr['one']);
}
Здесь массив не объявляется глобальным, в следующей функции всёравно придётся делать так-же
, просто указывается что переменная ссылается на массив вне функции.
2 килобайта не много, если скрипт занимает 10 ,не считая пары включаемых скриптов, я уже считаю что хватит ,) но например в phpMyAdmin/library/ библиотеки по 80-90 килобайт имеются.
Всё зависит от того насколько удобнее и как-бы логичнее сделать так или иначе. | |
|
|
|