1. PHP / Говнокод #8497

    +164

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    ...
    // description
    if( $group_row['description'] == "" )
    	$this->options["description"]=(int)false; // Можно было просто писать 0
    else {
    	$this->description = $group_row['description'];
    	$this->options["description"]=(int)true; // Можно было просто писать 1))
    }
    ...
    $this->privancy['photos'] = (int)(bool)$group_row['photos'];
    $this->privancy['topics'] = (int)(bool)$group_row['topics'];
    ...

    Вчера ночью вот что написал :) Надо мне работать только днём!)

    Запостил: m_hamlet, 11 Ноября 2011

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

    • > (int)(bool)
      очаровательно )))
      Ответить
      • Дело в том, что в $group_row['photos'] может принимать либо 0, либо 1. Вот я и превращаю это значение в булев тип (true или false), а потом снова в int (0 или 1) :)
        Ответить
    • > if( $group_row['description'] == "" )
      виден настоящий сишник = )
      Ответить
    • А по какому принципу вы заключаете ключи массива в кавычки, то в одиночные то в двойные ))
      Ответить
      • Да какая там разница) Я на это не обращаю внимания. Там я никакого переменного не использую, короче, всё и так работает тут. Но бывают и ситуации, когда надо ставить, например, одинарные кавычки. Это когда в коде есть много элементов, которые нужно экранировать.
        Ответить
        • > бывают и ситуации, когда надо ставить, например, одинарные кавычки. Это когда в коде есть много элементов, которые нужно экранировать

          Это серьёзно что-ли? А с двойными не получится экранировать?
          Ответить
          • Двойные кавычки нужны для вывода из переменных.
            <?php
            $var = 'Hellou';
            echo "$var world!!!1111адынадын";
            ?>
            Ответить
          • Если ставить одинарные кавычки, ничего экранировать не нужно! Например, если надо написать в тексте знак доллара, то в случае с двойными кавычками, надо знак доллара экранировать, чтобы PHP этот знак воспринимал как просто знак доллара, а не начало переменной. А в случае с одинарными кавычками, ничего не надо экранировать: там в коде нельзя вставить переменные так, как это делается в случае с двойными кавычками.
            Ответить
            • Знак доллара - единственное, что вам приходится экранировать?
              Ответить
            • И почему, к стати, тогда-уж не использовать HEREDOC?
              Ответить
            • > ничего не надо экранировать
              иногда надо: '\\'
              Ответить
              • Ну да, но в случае с двойными кавычками количество экранируемых символов намного больше
                Ответить
                • >намного больше
                  На 1. Возникает необходимость экранировать $
                  Ответить
                  • Но если в коде используются много знаков доллара, то тогда действительно намного больше!
                    Ответить
                    • в таком случае логичней оборачивать текст в апострофы.
                      Ответить
                      • $text = "Машина стоит \$15000, но я его купил за \$13000. Разница - всего \$2000";
                        $text = 'Машина стоит $15000, но я его купил за $13000. Разница - всего $2000';
                        Ответить

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