Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Помогите доделать скрипт ( (https://javascript.ru/forum/dom-window/58263-pomogite-dodelat-skript.html)

Vlasenko Fedor 13.09.2015 20:48

Цитата:

Сообщение от laimas
использование не инициализированной переменной опасно

о это уже что-то
Цитата:

Сообщение от laimas
При отключении вывода предупреждений интерпретатор молча вернет null

я же двал ссылку где разрабочики php при разработке напрямую советуют включить вывод всех ошибок.
Как по вашему, почему они это советует, чтобы вы говорили я все знаю и игнорировали

newKingOfTheBlock 13.09.2015 20:55

Poznakomlus,
Ты что реально не понимаешь разницу между ошибкой и предупреждением? Выбрасывание ошибки означает сбрасывание текущих вычислений и прекращение работы программы, если ошибка не перхвачена. Если же перехвачена, будет нелокальный goto в место перехвата. Предупреждения к ошибкам, технически, не имеют никакого отношения вообще, это как теплое и мягкое, ты какой-то бред несешь.

Vlasenko Fedor 13.09.2015 21:11

newKingOfTheBlock,
че, использование необъявленных переменных. Еще один защитник говнокода. И проив empty. Мало того, что empty правильно здесь не генерит вывод ошибок типа Notice. Так оно еще быстрее
<?php
function test($key = '')
{
    static $arr_time = array();
    if (isset($arr_time[$key])) {
        $t = (microtime(true) - $arr_time[$key]['time']) * 1000;
		$unit=array('b','kb','mb','gb','tb','pb');
		$m = memory_get_usage()  - $arr_time[$key]['memory'];
		$m = @round($m/pow(1024,($i=floor(log($m,1024)))),2).' '.$unit[$i]; //собака друг человека :-)
        echo 'Run time - ', $key, ' (ms): ', $t, ', memory: ', $m, (PHP_SAPI == 'cli' ? PHP_EOL : '<br>');
        unset ($arr_time[$key]);
    } else {
		$arr_time[$key] = array('time' => microtime(true), 'memory' => memory_get_usage());
    }
}
$arr = range(0, 1000000);

test('bolean');
foreach($arr as $value){
    $a = !$_COOKIE['test'];
}
test('bolean');
test('empty');
foreach($arr as $value){
    $a = empty($_COOKIE['test']);
}
test('empty');

Будет работать и там где ошибки включены. Ребята вы простите о чем здесь? Ка написать говнокод советуете или что? Или говорите что ошибка типа Notice это так для чайников, а крутые перцы на нее ложат

laimas 13.09.2015 21:18

Цитата:

Сообщение от Poznakomlus
Еще один защитник говнокода. И проив empty. Мало того, что empty правильно здесь не генерит вывод ошибок типа Notice. Так оно еще быстрее

Это где вы прочли, что я противник empty? Суть вопроса в том, что предупреждение, это не есть ошибка. Все далее, это уже из пальца высосанное, а любители термина "говнокод" напоминают борцов за чистоту партии 37-х.

Вы что пытаетесь доказать? Путаете хрен с пальцем, а включение вывода ошибок на реальном сервере кроме как дурью, более назвать нечем.

Vlasenko Fedor 13.09.2015 21:24

Цитата:

Сообщение от laimas
а включение вывода ошибок на реальном сервере кроме как дурью

Напиши разработчикам PHP, что они советуют тебе херней заниматься при разработке
http://php.net/manual/ru/errorfunc.c...rror-reporting

newKingOfTheBlock 13.09.2015 21:25

Poznakomlus,
Хотел написать ровно то же, что написал laimas, выше. Речь о том, что вы спутали теплое с мягким. Игнорировать ли предупреждения, и стиль написания кода -- это уже другие вропросы.

Vlasenko Fedor 13.09.2015 21:28

Цитата:

Сообщение от newKingOfTheBlock
Игнорировать ли предупреждения, и стиль написания кода -- это уже другие вропросы

Чем успешно занимаемся надо было добавить :lol:

laimas 13.09.2015 21:29

Цитата:

Сообщение от Poznakomlus
Напиши разработчикам PHP, что они советуют тебе херней заниматься при разработке


Знаете что, $a = empty($_COOKIE[0]); даст положительный результат, хотя вряд ли это ожидаемое. Так чего вы доказать хотите?

Я даже и не заметил, что плевок то не в мою сторону был. :)

Vlasenko Fedor 13.09.2015 21:34

Цитата:

Сообщение от laimas
Знаете что, $a = empty($_COOKIE[' ']);

ну да так и должно, а чего ожидал здесь увидеть
empty(null) === true; //а говорил с доками дружишь

laimas 13.09.2015 21:40

Цитата:

Сообщение от Poznakomlus
ну да так и должно

Я не то написал, что хотел, исправил. )


Часовой пояс GMT +3, время: 07:25.