Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Возникли проблемы с многомерными массивами в классе.

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Возникли проблемы с многомерными массивами в классе.
Dmitriy8787
Отправлено: 01 Февраля, 2015 - 18:50:36
Post Id


Новичок


Покинул форум
Сообщений всего: 15
Дата рег-ции: Февр. 2015  


Помог: 0 раз(а)




Здравствуйте. Пытаюсь реализовать класс с многомерными массивами ничего не получеться.
PHP:
скопировать код в буфер обмена
  1.  
  2. class Localisation
  3. {
  4. public $key=array(array());
  5. function setKeys()
  6.   {
  7.     //Поля регистрации
  8.     $Key[0][0]="Введтие логин ";
  9.     $Key[1][0]="Enter login";
  10.     $Key[0][1]="Введтие пароль ";
  11.     $Key[1][1]="Enter password";
  12.     $Key[0][2]="Повторите пароль";
  13.     $Key[1][2]="Repeat password";
  14.    
  15.     $Key[0][3]="Введите email";
  16.     $Key[1][3]="Enter email";
  17.     $Key[0][4]="Введите телефон";
  18.     $Key[1][4]="Enter mobile";
  19.     $Key[0][5]="Введите фамилию";
  20.     $Key[1][5]="Enter surname";
  21.     $Key[0][6]="Введите имя";
  22.     $Key[1][6]="Enter name";
  23.     $Key[0][7]="Введите отчество";
  24.     $Key[1][7]="Enter Patronymic";
  25. }  
  26. }  
  27.  

Как вызвать конкретный элемент, например $Key[0][0];
 
 Top
hrushachka
Отправлено: 01 Февраля, 2015 - 19:44:56
Post Id


Новичок


Покинул форум
Сообщений всего: 18
Дата рег-ции: Янв. 2015  


Помог: 1 раз(а)




Почитайте раздел классы и объекты
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. class Localisation
  3. {
  4. public $Key=array();
  5.     //Поля регистрации
  6. function __construct()
  7.         {
  8.         $this->Key[0][0]="Введтие логин ";
  9.     $this->Key[1][0]="Enter login";
  10.     $this->Key[0][1]="Введтие пароль ";
  11.     $this->Key[1][1]="Enter password";
  12.     $this->Key[0][2]="Повторите пароль";
  13.     $this->Key[1][2]="Repeat password";
  14.    
  15.     $this->Key[0][3]="Введите email";
  16.     $this->Key[1][3]="Enter email";
  17.     $this->Key[0][4]="Введите телефон";
  18.     $this->Key[1][4]="Enter mobile";
  19.     $this->Key[0][5]="Введите фамилию";
  20.     $this->Key[1][5]="Enter surname";
  21.     $this->Key[0][6]="Введите имя";
  22.     $this->Key[1][6]="Enter name";
  23.     $this->Key[0][7]="Введите отчество";
  24.     $this->Key[1][7]="Enter Patronymic";
  25.         }
  26. }
  27. $a = new Localisation();
  28. echo $a->Key[1][1];
  29. ?>
 
 Top
Dmitriy8787
Отправлено: 01 Февраля, 2015 - 22:28:02
Post Id


Новичок


Покинул форум
Сообщений всего: 15
Дата рег-ции: Февр. 2015  


Помог: 0 раз(а)




Сайт работает, но строки не выводит!!!
 
 Top
GoDr
Отправлено: 02 Февраля, 2015 - 08:04:29
Post Id



Посетитель


Покинул форум
Сообщений всего: 446
Дата рег-ции: Янв. 2015  
Откуда: Тамбов


Помог: 17 раз(а)




PHP:
скопировать код в буфер обмена
  1. .......
  2.  
  3. public function getKeys($lang, $mes){
  4.     echo $Key[$lang][$mes];
  5. }
  6.  
  7. .......
  8.  
  9. $a = new Localisation();
  10. $a->Key[1][1];


-----
Система управления веб-содержимым Lotos CMS
 
 Top
Sail
Отправлено: 02 Февраля, 2015 - 09:04:14
Post Id



Участник


Покинул форум
Сообщений всего: 1131
Дата рег-ции: Февр. 2014  


Помог: 57 раз(а)




Dmitriy8787, логичнее, однако, таким образом структурировать массив:
PHP:
скопировать код в буфер обмена
  1. $Key[0][0]="Введтие логин";
  2. $Key[0][1]="Enter login";
  3. /* или, другими словами: */
  4. $Key[0] = array("Введтие логин", "Enter login");
  5. /* или ещё: */
  6. $Key[0] = array('ru' => "Введтие логин", 'en' => "Enter login");
  7. /* ну, или: */
  8. $Key[0]['ru']="Введтие логин";
  9. $Key[0]['en']="Enter login";

То есть, первый индекс - вид запроса (логин, e-mail, пароль и прочая...), второй - локализованная строка.
(Добавление)
Хотя, конечно, может и нет Улыбка
 
 Top
GoDr
Отправлено: 02 Февраля, 2015 - 09:31:20
Post Id



Посетитель


Покинул форум
Сообщений всего: 446
Дата рег-ции: Янв. 2015  
Откуда: Тамбов


Помог: 17 раз(а)




я бы вообще по другому сделал
PHP:
скопировать код в буфер обмена
  1. $Key['ru'][0]="Введтие логин";
  2. $Key['en'][1]="Enter login";


-----
Система управления веб-содержимым Lotos CMS
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Объектно-ориентированное программирование »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB