Какой лучший способ выполнить конкатенацию строк в PHP? - PullRequest
5 голосов
/ 30 ноября 2010

В php мы можем добавлять строки разными способами.

            Method 1
            ----------------------------
            $sql  = "SELECT field1, ";
            $sql .= "       field2, ";
            $sql .= "       field3, ";
            $sql .= "       field4, ";
            $sql .= "FROM   table1 ";
            $sql .= "WHERE  condition1 = '".$value."' " ;

            Method 2
            ----------------------------
            $sql  = 'SELECT field1, ';
            $sql .= '       field2, ';
            $sql .= '       field3, ';
            $sql .= '       field4, ';
            $sql .= 'FROM   table1 ';
            $sql .= 'WHERE  condition1 = "'.$value.'" ' ;

            Method 3
            ----------------------------
            $sql  = 'SELECT field1,
                           field2,
                           field3,
                           field4,
                    FROM   table1
                    WHERE  condition1 = "'.$value.'" ' ;

            Method 4
            ----------------------------
            $str = <<<HEREDOC
                    SELECT field1,
                           field2,
                           field3,
                           field4,
                    FROM   table1
                    WHERE  condition1 = "$value"
            HEREDOC;

Что из вышеперечисленного является лучшим подходом? Есть ли другие методы, которые приведут к повышению производительности?

Ответы [ 4 ]

4 голосов
/ 30 ноября 2010

Я голосую за Метод 3 .

Чем меньше операций конкатенации, тем лучше.

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

3 голосов
/ 30 ноября 2010

Насколько мне известно, «лучшего метода» не существует.
Правило большого пальца - это выбрать тот, который вы предпочитаете, придерживайтесь его и будьте последовательны во всем проекте.

2 голосов
/ 30 ноября 2010

создание самого запроса не требует наименьшего объема памяти или процессора (но делает это, но в таком небольшом количестве, что это не имеет значения) с вашего компьютера, но его выполнение - это то, что вас должно беспокоить, убедитесь, что у вас есть правильный индекс и т. д.

1 голос
/ 30 ноября 2010

Нет лучше.Просто выберите один и придерживайтесь его, PHP_CodeSniffer можно использовать для автоматизации проверки вашего стиля кода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...