Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

[php] Как такое может быть?

7.3K
31 января 2013 года
shureg
67 / / 29.05.2010
Здравтсвуйте, 3й день ломаю голову что за баг....

есть некий код:

 
Код:
class init {
    public function months($number){
        $number = (int)$number;
        $months = array('', 'Янв', 'Фев', 'Мар', 'Апр', 'Май', 'Июн', 'Июл', 'Авг', 'Сен', 'Окт', 'Ноя', 'Дек');
   
        return $months[1];
    }
}
но при её вызове я на выходе получаю: MarЯнв (да я специально в функции установил насильно цифру 1, так как сперва думалю что неправильно передаю месяц!)

не погму понять в чем дело!!!! должно ведь выйти: Янв
вызываю функцию: init::months("Любой месяц");
366
31 января 2013 года
int
668 / / 30.03.2005
 
Код:
$r = init::months(3);
echo "\n\n\n$r\n";
А так что показывает?

Разве для статического вызова не нужно добавить static перед function?
7.3K
31 января 2013 года
shureg
67 / / 29.05.2010
Цитата: int
 
Код:
$r = init::months(3);
echo "\n\n\n$r\n";
А так что показывает?

Разве для статического вызова не нужно добавить static перед function?


А так работает!

8
31 января 2013 года
mfender
3.5K / / 15.06.2005
Очень хотелось бы посмотреть как именно ТС вызывает указанный метод, так сказать, воочию. И желательно вместе с тем, что этому предшествует.
8
31 января 2013 года
mfender
3.5K / / 15.06.2005
Цитата: int
Разве для статического вызова не нужно добавить static перед function?


Да не обязательно. Главное E_STRICT не выводить в поток.

1
31 января 2013 года
kot_
7.3K / / 20.01.2000
Цитата: int

Разве для статического вызова не нужно добавить static перед function?


до 5 версии включительно - не обязательно.

366
01 февраля 2013 года
int
668 / / 30.03.2005
А кто-то ещё не на пятой? о_О

Автор, у тебя идёт вывод до вызова функции, так что пропусти её и смотри код дальше (ближе). С ней всё нормально.
1
01 февраля 2013 года
kot_
7.3K / / 20.01.2000
Цитата: int
А кто-то ещё не на пятой? о_О


ты не поверишь. есть хостеры у которых MySQL 4.1 и РНР4 (или, что еще круче, РНР5.2.0.9 - например, в котором багов - мама не горюй). Могу показать например один из украинских банков, у которых на этой "пятой" версии крутится. ))) А им просто пох - их внутренний "фреймворк": простыня вызовов функций, идеальное пособие - Как не надо программировать процедурным стилем для идиотов - и чуваки на голубом глазу отвечают - используется РНР5 )))) А то что вызов PDO Firebird например завершается крахом - ну так "мы руками подключаемся" )))

Знаете кого-то, кто может ответить? Поделитесь с ним ссылкой.

Ваш ответ

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог