Эредок <<< или <<? - PullRequest
       34

Эредок <<< или <<?

1 голос
/ 16 сентября 2011

Ну, мне интересно, как правильно использовать синтаксис Heredoc?

В моем редакторе кода, который 'e-text editor' делает <<<, полностью исключается подсветка синтаксиса.

enter image description here

и выполнение << вместо этого не делает. </p>

enter image description here

код:

private function buildDB() {
        // build database
        $sql = <<<MySQL_QUERY
            CREATE TABLE IF NOT EXISTS testDB (
                title VARCHAR(150),
                bodytext TEXT,
                created VARCHAR(100);   
            )
                MYSQL_QUERY;

                return mysql_query($sql);
    }

Какой путь правильный? Я все еще очень нубистский, так что понятия не имею.

или, может быть, я не должен полагаться на подсветку синтаксиса, а? : /

Ответы [ 2 ]

10 голосов
/ 16 сентября 2011

Взгляните на пример 2: http://php.net/manual/en/language.types.string.php

Это <<<

Вам нужно поставить окончание MYSQL; в начале строки без пробелов. Вот почему ваш редактор не выделит его правильно.

3 голосов
/ 16 сентября 2011

Закрытие строки HEREDOC чаще всего происходит на новой строке без пробелов перед ней , поэтому MYSQL_QUERY; должно находиться в начале строки, без пробелов до или после.

...