КАРТА САЙТА
Sibnet.ru
Sibnet.ru

Sibnet.ru — это информационно-развлекательный интернет-проект, ориентированный на широкий круг Сибирского региона.
По данным Rambler Top100, Sibnet.ru является самым популярным порталом в Сибири.

Контакты:
АО "Ринет"
ОГРН 1025402475856
г. Новосибирск, ул. Якушева, д. 37, 3 этаж
отдел рекламы:
(383) 347-10-50, 347-06-78, 347-22-11, 347-03-97

Редакция: (383) 347-86-84

Техподдержка:
help.sibnet.ru
Авторизируйтесь,
чтобы продолжить
Некоторые функции доступны только зарегистрированным пользователям
Неправильный логин или пароль

Внимание! Теперь для входа на форум необходимо вводить единый пароль регистрации сервисов sibnet.ru!

Здравствуйте, гость ( Вход | Регистрация )



 
Ответить в эту темуОткрыть новую тему
> Разминка для мозгов., =)
TheHett
сообщение 19.5.2011, 0:26
Сообщение #1


Молчун
Group Icon


Группа: Пользователи
Сообщений: 49
Регистрация: 27.7.2010
Пользователь №: 285 064



Репутация:   2  


Начну.

Цитата
$var = 0;

switch ($var)
{
case 'тест':
echo 'нифигасе';
break;
}
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
HiSER
сообщение 19.5.2011, 6:43
Сообщение #2


Бородатый
Group Icon


Группа: Пользователи
Сообщений: 517
Регистрация: 24.9.2007
Из: Барнаул
Пользователь №: 6 410



Репутация:   37  


и?
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
MagistrZoom
сообщение 19.5.2011, 7:16
Сообщение #3


See vis paceem, para belum
Group Icon


Группа: Модераторы
Сообщений: 5 543
Регистрация: 23.10.2009
Из: Корусант
Пользователь №: 153 131



Репутация:   377  


Ну, не выведет ничего скрипт. Я думаю..
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Linky
сообщение 19.5.2011, 12:23
Сообщение #4


МЕГА флудер
Group Icon


Группа: Sibnet-club
Сообщений: 3 466
Регистрация: 31.3.2008
Из: Барнаул
Пользователь №: 27 560



Репутация:   243  


В PHP поди как в Perl, строки не состоящие или не начинающиеся с цифр неявно преобразуются к 0, при сравнении например.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
HiSER
сообщение 19.5.2011, 12:29
Сообщение #5


Бородатый
Group Icon


Группа: Пользователи
Сообщений: 517
Регистрация: 24.9.2007
Из: Барнаул
Пользователь №: 6 410



Репутация:   37  


Код

echo (int)'Тест'; //Выведет 0
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Linky
сообщение 19.5.2011, 16:32
Сообщение #6


МЕГА флудер
Group Icon


Группа: Sibnet-club
Сообщений: 3 466
Регистрация: 31.3.2008
Из: Барнаул
Пользователь №: 27 560



Репутация:   243  


В PHP еще есть интересный багфича с тернарным оператором условия, который работает не так, как в других ЯП. Не пойму, зачем они это сделали.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
TheHett
сообщение 19.5.2011, 19:10
Сообщение #7


Молчун
Group Icon


Группа: Пользователи
Сообщений: 49
Регистрация: 27.7.2010
Пользователь №: 285 064



Репутация:   2  


Какая бага(фича)? Вроде везде он лево-ассоциативен.

Какая функция будет работать быстрее?

Код


function a1($param)
{
    return count($param);
}


function a1(&$param)
{
    return count($param);
}


Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Linky
сообщение 19.5.2011, 19:17
Сообщение #8


МЕГА флудер
Group Icon


Группа: Sibnet-club
Сообщений: 3 466
Регистрация: 31.3.2008
Из: Барнаул
Пользователь №: 27 560



Репутация:   243  


Цитата(TheHett @ 19.5.2011, 19:10) *

Какая бага(фича)? Вроде везде он лево-ассоциативен.

Код

echo 1 ? 1 : 1 ? 2 : 1;

PHP:
2
C, C++, Java, Perl, etc.:
1
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Linky
сообщение 19.5.2011, 19:34
Сообщение #9


МЕГА флудер
Group Icon


Группа: Sibnet-club
Сообщений: 3 466
Регистрация: 31.3.2008
Из: Барнаул
Пользователь №: 27 560



Репутация:   243  


>Какая функция будет работать быстрее?
Первая наверное, ну или одинаково, думаю там есть что-то типа копирования при записи, а раз множество не меняется, то и смысла создавать копии нету. А вот когда передают объекты по изменяемой ссылке, это обычно предполагает изменение содержимого, мб заранее копия создается. Это только мои предположения.

Наверняка в документации где-то написаны эти нюансы)
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
HiSER
сообщение 19.5.2011, 19:36
Сообщение #10


Бородатый
Group Icon


Группа: Пользователи
Сообщений: 517
Регистрация: 24.9.2007
Из: Барнаул
Пользователь №: 6 410



Репутация:   37  


Цитата(Linky @ 19.5.2011, 19:17) *

Код

echo 1 ? 1 : 1 ? 2 : 1;

PHP:
2
C, C++, Java, Perl, etc.:
1


PHP раскладывает видимо так:
Код

echo (1?1:1)?2:1;

А C, C++, Java, Perl, etc.:
Код

echo 1?1:(1?2:1);
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
TheHett
сообщение 19.5.2011, 19:52
Сообщение #11


Молчун
Group Icon


Группа: Пользователи
Сообщений: 49
Регистрация: 27.7.2010
Пользователь №: 285 064



Репутация:   2  


HiSER, я же говорю, что он лево-ассоциативен. Но это в доках все написано smile.gif

Цитата
>Какая функция будет работать быстрее?
Первая наверное, ну или одинаково, думаю там есть что-то типа копирования при записи, а раз множество не меняется, то и смысла создавать копии нету. А вот когда передают объекты по изменяемой ссылке, это обычно предполагает изменение содержимого, мб заранее копия создается. Это только мои предположения.

Наверняка в документации где-то написаны эти нюансы)

Когда объекты передают по ссылке, никаких копий не создается.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Linky
сообщение 19.5.2011, 20:06
Сообщение #12


МЕГА флудер
Group Icon


Группа: Sibnet-club
Сообщений: 3 466
Регистрация: 31.3.2008
Из: Барнаул
Пользователь №: 27 560



Репутация:   243  


Цитата(TheHett @ 19.5.2011, 19:52) *

HiSER, я же говорю, что он лево-ассоциативен. Но это в доках все написано smile.gif

Ну как видишь, из распространенных ЯП с тернарными операторами условия, только PHP ведет себя по-другому, не ясно для чего это было сделано.
Цитата(TheHett @ 19.5.2011, 19:52) *

Когда объекты передают по ссылке, никаких копий не создается.

Я имел в виду подобные случаи:
Код

$array1 = array(...);
$array2 = $array1; //смысла копировать значения нет

al($array1); // если по ссылке, ф-я предположительно изменит аргумент, значит сначала придется для array2 делать копию
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
TheHett
сообщение 19.5.2011, 20:10
Сообщение #13


Молчун
Group Icon


Группа: Пользователи
Сообщений: 49
Регистрация: 27.7.2010
Пользователь №: 285 064



Репутация:   2  


Не знаю, я исходники пхп не изучал, но думаю что копии не сделается, а будет храниться дополнительный дифф, хотя хз, надо проверить =)
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Linky
сообщение 19.5.2011, 20:14
Сообщение #14


МЕГА флудер
Group Icon


Группа: Sibnet-club
Сообщений: 3 466
Регистрация: 31.3.2008
Из: Барнаул
Пользователь №: 27 560



Репутация:   243  


А какой правильный ответ?

Сообщение отредактировал Linky - 19.5.2011, 20:16
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
HiSER
сообщение 19.5.2011, 20:21
Сообщение #15


Бородатый
Group Icon


Группа: Пользователи
Сообщений: 517
Регистрация: 24.9.2007
Из: Барнаул
Пользователь №: 6 410



Репутация:   37  


Первый вариант быстрее работает.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Linky
сообщение 19.5.2011, 20:21
Сообщение #16


МЕГА флудер
Group Icon


Группа: Sibnet-club
Сообщений: 3 466
Регистрация: 31.3.2008
Из: Барнаул
Пользователь №: 27 560



Репутация:   243  


Код

    $a = array(1,2,3,4,5);
    for($i = 0; $i < 10000000; ++$i)
        a1($a);

Если замерять время выполнения скрипта, для обычной передачи 3.7сек, по ссылке 7.6 сек.

Цитата(HiSER @ 19.5.2011, 20:21) *

Первый вариант быстрее работает.

Тоже опытным путем определил?)
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
HiSER
сообщение 19.5.2011, 20:28
Сообщение #17


Бородатый
Group Icon


Группа: Пользователи
Сообщений: 517
Регистрация: 24.9.2007
Из: Барнаул
Пользователь №: 6 410



Репутация:   37  


Ну а как ещё biggrin.gif
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Linky
сообщение 19.5.2011, 20:46
Сообщение #18


МЕГА флудер
Group Icon


Группа: Sibnet-club
Сообщений: 3 466
Регистрация: 31.3.2008
Из: Барнаул
Пользователь №: 27 560



Репутация:   243  


Если делать трассировку библиотечных вызовов, то при вызове ф-и с ссылкой, выполняется на 1 memset больше)) Правда это мало конечно о чем говорит наверное.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
TheHett
сообщение 19.5.2011, 21:34
Сообщение #19


Молчун
Group Icon


Группа: Пользователи
Сообщений: 49
Регистрация: 27.7.2010
Пользователь №: 285 064



Репутация:   2  


Скорость так страдает именно из-за COUNT() как я понял, а чего она там делает и как, не знаю))
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DJ Navvy
сообщение 9.1.2012, 20:19
Сообщение #20


МЕГА флудер
Group Icon


Группа: Sibnet-club
Сообщений: 24 320
Регистрация: 31.5.2009
Пользователь №: 109 301



Репутация:   1646  


А что тема завяло то
будут задачки на цсс с хтмл с пхп с скл ?
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
1 чел. просматривают этот форум (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

Текстовая версия Сейчас: 27.4.2024, 17:33
Редакция: (383) 347-86-84

Техподдержка:
help.sibnet.ru
Размещение рекламы:
тел: (383) 347-06-78, 347-10-50

Правила использования материалов