"PHP" / Говнокод #26047 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
foreach ($cart = LaraCart::getItems() as $product) {         
    $product->id;      
       $product->name;      
       $product->title_slug;       
      $product->price;         
    $product->qty;      
       $product->photo;     
        $product->item_type;  
       }

А не прогнать бы нам просто данные ммм?

Запостил: ARTWIN_PRO ARTWIN_PRO, (Updated )

Комментарии (18) RSS

  • Может там чего на геттерах намутили?

    Но всё равно говно. И форматированние странное.
    Ответить
    • Намутил на геттерах, проверь:
      <?php
      
      class Pituh {
          public function __get($name) {
              echo "Called " . $name . PHP_EOL;
          }
      }
      
      class LaraCart {
          static public function getItems() {
              return [new Pituh()];
          }
      }


      https://ideone.com/G47qWx
      Ответить
          • Переведи на OCaml.
            Мы не обязаны знать язык для веб-дизайнеров
            Ответить
            • type bird = {
              	wings: int;
              	beak: int;
              }
              
              let pituh = {wings = 2; beak = 1;};;
              print_int pituh.teeth;

              Выхлоп компилятора:
              File "prog.ml", line 7, characters 16-21:
              Error: This expression has type bird
                     The field teeth does not belong to type bird


              https://ideone.com/LIo8Xc
              Ответить
              • Спасибо) Красивый язык, всё таки
                Ответить
                • Чтобы я тоже смог ощутить красоту, переведи на "PHP".
                  Ответить
                  • <?php
                    
                    class Bird {
                        public $wings;
                        public $beaks;
                    }
                    
                    $pituh = new Bird();
                    $pituh->teeth;
                    Ответить
                • Ты обратил внимание, что я нигде не указывал, что pituh имеет тип bird? Компилятор сам догадался, сопоставив поля питуха и типа bird.
                  Ответить
                  • Разумеется, Хиндли Милнер же.
                    Одна из фишек, от которой я теку.
                    А еще от паттерн матчинга
                    Ответить
                    • Это какой-то автовывод типов наоборот. Компилятор не вывел какой-то составной тип, он подобрал имя уже существующего типа, который максимально соответствует описанию.

                      Вот «C++» так не умеет. В «C++» нужно, чтобы в правой части имя типа уже присутствовало (я где-то в выражении должен проговориться, что имею дело с типом bird).

                      «OCaml» же не ждёт подсказки, а догадывается сам. Значит, он структуры, рождённые в разных местах, может свести к одному типу, если у них список полей совпадёт.

                      Вот в «Паскале» наоборот: я не могу написать A:=B, если A и B — это массивы или записи, описанные в разных местах, даже если у них типы элементов/полей совпадают.
                      Ответить
                      • Когда-нибудь и С++ так будет уметь.

                        Обычно ведь как бывает: что-то появляется в функциональных академических языках, а через 60 лет и в мейнстримовых тоже

                        >Вот в «Паскале» наоборот: я
                        Так и в жабе и в шарпе и в котлине тоже самое
                        Структурная и утиная тупизация мало где есть.

                        Хотя... к массивам это Не относится
                        Ответить

Добавить комментарий

Помни, guest, за тобой могут следить!

    А не использовать ли нам bbcode?


    8