[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Интересное PHP. Просто погудеть.
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11
Эли4ка
Цитата
По коду конструктора вопросов нет? Прям вот так все сходу понятно?

Я могла пропустить какие-то тонкие моменты?
twin
Я про этот код. Там все понятно?

_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
Эли4ка
Да. переменная, конструктор, класс.
twin
Только не переменная, а свойство. Переменные в классе называются свойствами. С доступами тоже нет вопросов? И с исключениями?

_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
Эли4ка
Цитата
С доступами тоже нет вопросов?

приват, паблик это?
Цитата
И с исключениями?

Выброс исключений мне категорически не нравится.
Могу показать как у меня в файле ответ возвращает.
twin
Цитата (Эли4ка @ 13.03.2018 - 13:32)
Выброс исключений мне категорически не нравится.
Могу показать как у меня в файле ответ возвращает.
Ответ тут вообще не причем. У тебя была проблема с ошибкой ссылки, на сколько я понял. Эта проблема лучше всего решается эксепшеном. Обоснуй, чем не нравится.


_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
Эли4ка
Я уже писала, что одной ошибкой ссылки там не ограничишься. В этом и заключалось мое раздутие и некрасивость кода.
Сначала получаем ссылку. Если ссылка не отвечает(404 или какая ошибка) сообщаем пользователю-что ссылка недоступна. Если с ссылкой все хорошо, то скачиваем по ней файл(фото или видео) если по какой-то причине файл не скачался(обрыв связи, обрубил провайдер) сообщаем пользователю, что ссылка есть, но файл на данном этапе не был скачан. Если ссылка нормальна, файл скачался, но при добавлении в БД произошла ошибка( БД отвалилась, пароль не тот или еще чего ) то сообщаем пользователю, что ссылка нормальная, скачалось, но в БД не было записано по причине и вывести
mysqli_error();
. Если добавилось-то вывести, что все этапы прошли хорошо и вернуть id последней добавленной записи.

Теперь понятно, какого вида мне нужен вывод об ошибках и в каких этапах?
Зачем это все делается? просто ладно если бы это было для 1-2 ссылок, а таких ссылок может быть очень много и после окончания нужно посмотреть-что было добавлено, а что нет и по какой причине. А без информативного вывода ошибок попробуй в простыне из 600-1000 ссылок разберись, что добавилось, а что нет.
twin
Вот именно это и делает мой код. Только еще круче. Если ссылка не отвечает, пробуем еще раз. Если опять не отвечает - сообщаем или логируем ошибку.
Когда дело дойдет до ошибки скачивания файла, можно сделать что то похожее. И так далее. Просто у тебя все размазано по коду, тут централизовано.

Вот для того и пишется "чистый код".

_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
Эли4ка
Цитата
Вот для того и пишется "чистый код".

Я поняла.

Но тогда не поняла, а где именно он выводит нужную ошибку? в выбросе исключения? sad.gif
twin
Цитата (Эли4ка @ 13.03.2018 - 16:12)
Но тогда не поняла, а где именно он выводит нужную ошибку? в выбросе исключения?

Именно. Я написал, что отлов и обработку исключений покажу в самом конце. Пока нужно разобраться с самим кодом.

Итак, еще раз. С конструктором все понятно, или есть вопросы?
Свернутый текст
У меня бы были, если бы я впервые это увидел. smile.gif


_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
Эли4ка
Я понимаю, для чего нужен конструктор. Какие бы у вас были вопросы?

Да, вижу я их не впервые, просто не работала никогда

Цитата
Именно. Я написал, что отлов и обработку исключений покажу в самом конце. Пока нужно разобраться с самим кодом.

Поняла. Терпеливо учусь и не тороплю события.
Эли4ка
class A
{
function __construct()
{
$a = func_get_args();
$i = func_num_args();
if (method_exists($this,$f='__construct'.$i)) {
call_user_func_array(array($this,$f),$a);
}
}


function __construct1($a1)
{
echo('__construct with 1 param called: '.$a1.PHP_EOL);
}

function __construct2($a1,$a2)
{
echo('__construct with 2 params called: '.$a1.','.$a2.PHP_EOL);
}

function __construct3($a1,$a2,$a3)
{
echo('__construct with 3 params called: '.$a1.','.$a2.','.$a3.PHP_EOL);
}
}

$o = new A('sheep');
$o = new A('sheep','cat');
$o = new A('sheep','cat','dog');

очень мне нравится :rolleyes:
Быстрый ответ:

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