Обучение/Помощь новичкам | Оцените пожалуйста
Учу PHP меньше месяца , практикую , читабельный код? Файл pit.box.php Файл pit.php
------
79921_Screenshot_20211127231517354_com.android.chrome.jpg (512.8 Kb)
Скачиваний: 120
________
посл. ред. 27.11.2021 в 23:15; всего 5 раз(а); by 213731682
php
<?php class pit { // const PLAYER_FREE_AP = 10; // Бесплатное кормление // узнать количество очков силы public static function get_satiety($id_user) { $sql = 'select satiety from pit where id_user = ? limit 1'; $sth = db::$pdo->prepare($sql); $sth->execute([$id_user]); return $sth->fetch(PDO::FETCH_NUM)[0]; } // создать запись с игроком public static function player_create($id_user) { $sql = 'insert into pit set id_user = ?'; $sth = db::$pdo->prepare($sql); $sth->execute([$id_user]); } // проверить есть ли запись с игроком public static function is_player($id_user) { $sql = 'select count(*) from pit where id_user = ? limit 1'; $sth = db::$pdo->prepare($sql); $sth->execute([$id_user]); if ($sth->fetch(PDO::FETCH_NUM)[0] > 0) { return true; } return false; } // добавить очки силы public static function set_satiety($num, $id_user) { $sql = 'update pit set satiety = satiety + ? where id = ? limit 1'; $sth = db::$pdo->prepare($sql); $sth->execute([$num, $id_user]); } // контроллер игрока public static function player_ctrl() { $id_user = ID; if (!self::is_player($id_user)) { // если записи с игроком нет self::player_create($id_user); } } // контроллер кормления public static function satiety_ctrl($korm) { $id_user = ID; if (get_mutagen_by_id($id_user) >= $korm ) {//Если достаточно мутагена self::set_satiety($korm, $id_user); set_mutagen(- $korm,$id_user); } } } class pit_model { public function get() { $satiety = pit::get_satiety(ID); return [ 'satiety' => $satiety ]; } } php
<?php require_once(ROOT . 'project/internal/core.php'); // грузим ядро pit::player_ctrl(); $act = ''; if ( ! empty($_GET['korm'])) { $act = $_GET['korm']; } if ($act == '1' || $act == '5' || $act =='15') { pit::satiety_ctrl($act); // что бы при перезагркзеи страницы не повторялся код redirect::go()->ruler_cut('korm'); } view('tpl/cap'); view('tpl/header'); view('tpl/header-enter'); view('pit', (new pit_model)->get()); view('tpl/footer-enter'); view('tpl/footer'); ------
Скачиваний: 120
________
посл. ред. 27.11.2021 в 23:15; всего 5 раз(а); by 213731682
213731682 , для начала пойдет:) я бы сделал функции которые выполняются в нутри класса приватными.
Почему выбрал именно функциональный подход?
Simptom333 (28.11.2021 в 00:26)
Почему выбрал именно функциональный подход?
Почему выбрал именно функциональный подход?
Это называется метод, а не функция
DELETED
28 ноября 2021, в 3:32
Delete
DELETED
28 ноября 2021, в 3:32
Delete
Avenax , По такой логин объективный подход не объект, а метод.
Simptom333 (28.11.2021 в 11:09)
Avenax , По такой логин объективный подход не объект, а метод.
Avenax , По такой логин объективный подход не объект, а метод.
Что?
Avenax , "логин" = "логике", Т9...
Какое отношение твой комментарий "Это называется метод, а не функция" имеет к выбору подхода?
Ну бред же.
Осмелюсь предположить, что ты не верно истолковал мой вопрос,или не вник в него, или может позабыл)
Для понимания, о чем я, тупое существо тут перья раскидал, предлагаю взглянуть на код автора и, пусть будет для примера, на код лары (да тут любой фреймворк, по сути то, подойдет).
Найди 5 отличий, что называется. Где из этих двух вариантов функциональный подход, а где объектный?
Или тут не слышали о существовании такого разделения и "функциональный" все равно что "процедурный"?
Тогда уж простите ребята, но вы явно что-то проглядели)
Какое отношение твой комментарий "Это называется метод, а не функция" имеет к выбору подхода?
Ну бред же.
Осмелюсь предположить, что ты не верно истолковал мой вопрос,или не вник в него, или может позабыл)
Для понимания, о чем я, тупое существо тут перья раскидал, предлагаю взглянуть на код автора и, пусть будет для примера, на код лары (да тут любой фреймворк, по сути то, подойдет).
Найди 5 отличий, что называется. Где из этих двух вариантов функциональный подход, а где объектный?
Или тут не слышали о существовании такого разделения и "функциональный" все равно что "процедурный"?
Тогда уж простите ребята, но вы явно что-то проглядели)
Simptom333 , ну то что указано в топике, это как раз таки в моем понимании объективный подход, так как это уже ООП (Объектно-ориентированное программирование). Стало быть все что находится в классе является объектами этого класса а не функциями. Что касается о функциональном подходе то это уже относится в большей степени процедурному коду. Где будет вызываться обычная функция. Для понимания в примерах: Объективное решение, так как get() является объектом класса pit_model может быть вызван как внутри класса так и наследоваться в другие. Процедурное решение, так как это обычная функция которая будет вызываться непосредственно в самом коде и будет выполнять процесс который будет задаваться в функции и можно вызвать на любой странице сайта.
________
посл. ред. 29.11.2021 в 04:48; всего 1 раз(а); by DenSBK
php
class pit_model { public function get() { $satiety = pit::get_satiety(ID); return [ 'satiety' => $satiety ]; } } php
function get_pit($id) { return $id; } ________
посл. ред. 29.11.2021 в 04:48; всего 1 раз(а); by DenSBK
Стр.: 1, 2
