Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.02.2015, 17:54   #1
Dmitriy8787
 
Регистрация: 01.02.2015
Сообщений: 3
По умолчанию Возникли проблемы с многомерными массивами в классе.

Здравствуйте. Пытаюсь реализовать класс с многомерными массивами ничего не получеться.
PHP код:
class Localisation
{
public 
$key=array(array());

как этот массив проинициализировать и вызвать?
Dmitriy8787 вне форума Ответить с цитированием
Старый 01.02.2015, 18:16   #2
Gorychev
Участник клуба
 
Аватар для Gorychev
 
Регистрация: 08.03.2008
Сообщений: 1,603
По умолчанию

PHP код:
$oLocalisation = new Localisation();
$oLocalisation->key = array('one''two');
print_r($oLocalisation->key); 
Gorychev вне форума Ответить с цитированием
Старый 01.02.2015, 19:23   #3
Dmitriy8787
 
Регистрация: 01.02.2015
Сообщений: 3
По умолчанию Как проинициализировать массив в классе.

Как проинициализировать массив в классе.
PHP код:
function setKeys()
  {
    
//Поля регистрации
    
$Key[0][0]="Введтие логин ";
    
$Key[1][0]="Enter login";
    
$Key[0][1]="Введтие пароль ";
    
$Key[1][1]="Enter password";
    
$Key[0][2]="Повторите пароль";
    
$Key[1][2]="Repeat password";
    
    
$Key[0][3]="Введите email";
    
$Key[1][3]="Enter email";
    
$Key[0][4]="Введите телефон";
    
$Key[1][4]="Enter mobile";
    
$Key[0][5]="Введите фамилию";
    
$Key[1][5]="Enter surname";
    
$Key[0][6]="Введите имя";
    
$Key[1][6]="Enter name";
    
$Key[0][7]="Введите отчество";
    
$Key[1][7]="Enter Patronymic";

Как вызвать конкретный элемент, например $Key[0][0];
Dmitriy8787 вне форума Ответить с цитированием
Старый 01.02.2015, 19:44   #4
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

PHP код:
class Localisation 
{
    public 
$keys = array(
        
=> array(
            
=> 'Введите логин',
            
=> 'Введите пароль',
        ),
        
=> array(
            
=> 'Enter login',
            
=> 'Enter password',
        ),
    );

    public function 
getMessage($lang$key)
    {
        return 
$this->keys[$lang][$key];
    }
}

$Localisation = new Localisation();

echo 
$Localisation->getMessage(01); // Введите пароль
echo $Localisation->getMessage(10); // Enter login 
Andkorol вне форума Ответить с цитированием
Старый 03.02.2015, 01:33   #5
ATL
Форумчанин
 
Аватар для ATL
 
Регистрация: 26.01.2007
Сообщений: 278
По умолчанию

В таком случае правильнее будет использовать стринговые ключи массива.
Иначе return $Localisation->getMessage(0, 1); не отражает сути того, что вернётся. Каждый раз надо будет подниматься вверх класса и смотреть что там под этим номером 1.

По этому:
PHP код:
class Localisation 
{
    public 
$keys = array(
        
'ru' => array(
            
'login_required' => 'Введите логин',
            
'password_reqiured' => 'Введите пароль',
        ),
        
'en' => array(
            
'login_required' => 'Enter login',
            
'password_reqiured' => 'Enter password',
        ),
    );

    public function 
getMessage($lang$key) {
        if (isset(
$this->keys[$lang][$key])) {
            return 
$this->keys[$lang][$key];
        }

        return 
FALSE;
    }
}

$Localisation = new Localisation();

echo 
$Localisation->getMessage('ru''password_reqiured'); // Введите пароль
echo $Localisation->getMessage('en''login_required'); // Enter login 
ATL вне форума Ответить с цитированием
Старый 03.02.2015, 09:28   #6
Gorychev
Участник клуба
 
Аватар для Gorychev
 
Регистрация: 08.03.2008
Сообщений: 1,603
По умолчанию

Еще правильнее всё это добро (текстовые константы) держать в таблице бд
Gorychev вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с многомерными массивами в С lokosios Помощь студентам 0 09.12.2011 23:24
C#: работа с многомерными массивами tyurroma Помощь студентам 1 18.11.2010 18:42
Программирование алгоритмов над многомерными динамическими массивами Master23 Общие вопросы C/C++ 2 30.05.2009 04:28
работа с многомерными массивами tik17 Помощь студентам 14 14.03.2009 20:07