[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Значение
Страницы: 1, 2
pro100deadly
знаю была такая тема, но тут я понять не могу как задать значение:

Пример:

Есть переменная $class, в ней 16 цифирь, для переменной $class я сделал значение...

А есть ещё переменная $subclass, но тут значения повторяются, смотрим ниже:

classid----subclass

0----------0
0----------1
1----------0
2----------1

И так далее, для просмотра полностью значений:

http://collab.kpsn.org/display/tc/Item+tem...atetc2-subclass

так как сделать в

"switch" эти значения, то есть:

switch ($class, $subclass) {
case 0-0:

Как сделать я не понимаю подскажите пожалуйста...

Игорь_Vasinsky
switch - тока один параметр принимает.

а чем if elseif else не угодил?

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
pro100deadly
Игорь_Vasinsky
хмм а как зделать через if и elseif ? 2 мя параметрами
Игорь_Vasinsky
if($a == 0 && $ b== 1){
//any code
}
elseif($a == 0 && $b == 1){
//any code
}
elseif($a == 2 && $b == 0){
//any code
}
else{
//any code
}


_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
pro100deadly
Игорь_Vasinsky
спасибо, а && обязательно ? то есть идёт определение как и ?
andrey888
посмотри мануал .. помоему два параметра вот так

switch ($class, $subclass)

не передают.
Варианты там есть можешь в case запустить if(){}else{} и проверять второе значение .
Либо сделать второй switch внутри первого , а чтоб много не писать одно и тоже второй switch можешь обрамить в функцию . А уже эту функцию ставить в case - ах первого ..

_____________
Прогноз на следующие 5 лет : Россия, Китай - две величайшие державы.
США в Ж*пе. Справедливость восторжествует. )
Invis1ble
двумерный массив спасет отца русской демократии

_____________

Профессиональная разработка на заказ

Я на GitHub | второй профиль

sergeiss
Цитата (pro100deadly @ 11.05.2013 - 22:16)
switch ($class, $subclass) {    case 0-0:

Если для тебя так это важно, то попробуй так (каменты все в коде):
switch ( $class . '_' . $subclass ) // преобразум класс и сабкласс в символьную строку, со знаком подчеркивания между ними
{
case '0_0': // именно как строка! Потому что мы преобразовали класс-подкласс в строку
// какие-то действия

break;
case '1_0':
....

break;
....



case '10_25': // для класса 10 и подкласса 25
....
break;
....

}

Этот код просто обязан работать :)

Важно! Вот только если у тебя изменится структура классов и подклассов, т.е. что-то добавится или убавится, то этот код станет неполноценным. Он продолжит работать, да, но будет неполноценным.

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
pro100deadly
sergeiss
Спасибо но уже написал для if и elseif, а переписывать кошмар, много слишком значений...

Но твой код возьму на засыпку, ещё раз спасибо... А на счёт
Цитата (sergeiss @ 11.05.2013 - 23:31)
Вот только если у тебя изменится структура классов и подклассов, т.е. что-то добавится или убавится, то этот код станет неполноценным. Он продолжит работать, да, но будет неполноценным.



Я не думаю что там что то измениться, эти значения берутся из игры, и не думаю что разработчики trinity будет переписывать всё smile.gif
sergeiss
Цитата (pro100deadly @ 12.05.2013 - 00:07)
а переписывать кошмар, много слишком значений...

Зато со свичём красивее wink.gif

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
andrey888
Цитата
Зато со свичём красивее

НАМНОГО smile.gif

_____________
Прогноз на следующие 5 лет : Россия, Китай - две величайшие державы.
США в Ж*пе. Справедливость восторжествует. )
sergeiss
Подумал тут... Можно ведь и еще чуть по-другому сделать ;)

Из существующих классов-подклассом можно легко сделать ОДНО целую величину, не надо этих нагромождений в виде $a == 0 && $b == 1 и им подобным! Ведь из документации ясно, что вторая величина может быть не более, чем 2-значной... И лучше переделай сразу на switch, потом будет проще работать с этим кодом!
$category = intval( ltrim( sprintf( "%02d%02d", $class, $subclass), '0') );

switch( $category )
{
case 0:
// any code
break;
case 1:
// any code
break;
.
.
.

case 408: // class 4, subclass 8 - Idol
// any code

break;
.
.
.

case 1611: // druid - последний в таблице
// any cody

break;
}


_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
pro100deadly
sergeiss

Хмм "%02d%02d", что это ? за что оно отвечает ?
Michael
Это формат передающийся в функцию sprintf, отвечает соответственно по какому формату данные вставятся в строку.

_____________
There never was a struggle in the soul of a good man that was not hard
pro100deadly
Michael
Он важен ? где о них инфу можно посмотреть ?
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.