質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.22%

env ,database.phpで情報変更後、「php artisan make~」でsyntax error

解決済

回答 1

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 669

rousor

score 9

■ 前提・実現したいこと
はじめてMVCにチャレンジ。ロリポップにてLaravelのインストール中にうまくいかない状態です。
☆ 注意)下記のxxxxxの部分は隠しています。

・ロリポップ:スタンダードプラン
・php:7.1
・データベース:LAAxxxxxxx-blog 
・データベーステーブル:空
・laravel:5.6

SSHでロリポップサーバへログインし、「composer」インストール済み
下記のように「php composer.phar ~」を使って、laravel5.6を「LAAxxxxxxx-blog 」という名前のディレクトリでインストール
 
/usr/local/php7.1/bin/php composer.phar create-project --prefer-dist  laravel/laravel LAAxxxxxxx-blog "5.6.*"

その後、.env、config/database.phpにて、データベースの情報をロリポップDBに変更

■ 発生している問題・エラーメッセージ
上記の段階まで進んだ為、「php artisan ~」にてtable作成のファイル生成を試みようとしました。

  $ cd web/LAAxxxxxxx-blog/
  $ pwd
  /home/users/2/xxxxx.jp-xxxxxx/web/LAAxxxxxxx-blog
    $ php artisan make:migration blogtable --create=blogtable

すると、下記のメッセージが出力され解決策がわかりませんでした。

PHP Parse error:  syntax error, unexpected '.', expecting '&' or variable (T_VARIABLE) in /home/users/2/xxxxx.jp-xxxxxx/web/LAAxxxxxxx-blog/vendor/symfony/var-dumper/Resources/functions/dump.php on line 18

ちなみに「dump.php」の18行目の前後は下記のような関数らしきものが記載されています。

if (!function_exists('dump')) {
    /**
     * @author Nicolas Grekas <p@tchwork.com>
     */
    function dump($var, ...$moreVars)
    {
        VarDumper::dump($var);

        foreach ($moreVars as $var) {
            VarDumper::dump($var);
        }

        if (1 < func_num_args()) {
            return func_get_args();
        }

        return $var;
    }
}

■  解決したいこと
php artisan list
php artisan serve
などのコマンドを投入しても同じ結果となります。

このメッセージが解消されデータベースにテーブルが作成できるようになることです。知識不足分や間違い等ご指摘お願いします。可能であれば解決方法をご教示願います。

【追記:2018.08.19】
ファイル:.env

DB_CONNECTION=mysql
DB_HOST=mysql133.phy.lolipop.lan
DB_PORT=3306
DB_DATABASE=LAAxxxxxxx-blog
DB_USERNAME=LAAxxxxxxx
DB_PASSWORD=ロリポップデータベースのパスワード
BROADCAST_DRIVER=log
CACHE_DRIVER=file
SESSION_DRIVER=file
SESSION_LIFETIME=120
QUEUE_DRIVER=sync

ファイル:/LAAxxxxxxx-blog/config/database.php

    'connections' => [

        'sqlite' => [
            'driver' => 'sqlite',
            'database' => env('DB_DATABASE', database_path('database.sqlite')),
            'prefix' => '',
        ],

        'mysql' => [
            'driver' => 'mysql',
            'host' => env('DB_HOST', 'mysql133.phy.lolipop.lan'),
            'port' => env('DB_PORT', '3306'),
            'database' => env('DB_DATABASE', 'LAAxxxxxxx-blog'),
            'username' => env('DB_USERNAME', 'LAAxxxxxxx'),
            'password' => env('DB_PASSWORD', 'ロリポップデータベースのパスワード'),
            'unix_socket' => env('DB_SOCKET', ''),
            'charset' => 'utf8mb4',
            'collation' => 'utf8mb4_unicode_ci',
            'prefix' => '',
            'strict' => true,
            'engine' => null,
        ],


です。
その他は変更を加えておりません。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • m.ts10806

    2018/08/19 06:08

    プログラムコード(およびエラーメッセージ)は質問内容としては最も重要な部分であるため、見やすくしていただけると助かります。<code>ボタン押下→「コード」部分にコードを貼り付け→「ここに言語を入力」に対象言語名記入(エラーメッセージの場合は不要)の手順で「コードハイライト化」してください。(質問編集画面ではリアルタイムでプレビューが表示されるので見ながら調整してください)

    キャンセル

  • m.ts10806

    2018/08/19 06:09

    「依頼内容」と書いてしまうと「作業依頼」「デバッグ依頼」と捉えられて非推奨質問の印象を受けてしまうので、表現は変えられた方が良いと思います。

    キャンセル

  • rousor

    2018/08/19 12:59

    指摘事項を編集しました。

    キャンセル

  • takyafumin

    2018/08/19 17:39

    .env、config/database.phpの内容に問題がある可能性があります。質問文に追記できますか?

    キャンセル

回答 1

checkベストアンサー

+3

php artisan でつかってるPHPが 7.1 じゃなく可変引数未実装のバージョンなんじゃないのかな

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/08/19 23:40

    下記コマンドを実行したところ、
    $ php -v
    PHP 5.5.35 (cli) (built: Jun 7 2017 17:38:06)
    で、確かにPHP7.1で動作していないようです。
    asahine1979さん、ご回答有難うございます。
    ロリポップサーバのPHP設定では、php7.1のモジュール版になっておりましたのでロリポップのサポート窓口へ確認依頼しました。

    もしもなのですが、PHPが 7.1で動作させる方法ありましたらよろしくお願いします。

    キャンセル

  • 2018/08/20 00:54

    "HTTP (Apache 2.x)" で動作してるのが モジュール版という仕様の説明なのでコマンドは明記されてないのでは?
    ただ 5.6 or 7.1 で コマンドのPHPが 5.5 という中途半端でどうにかしてほしいものかもね
    phpenv 等で・・・

    ユーザーディレクトリの rcファイル(例:.bashrc .cshrc など) の編集でパスを通しなおすか composer 利用時と同じフルパス指定してください

    キャンセル

  • 2018/08/20 03:49

    当方サーバ知識が薄いので対応できるかわかりませんが、動作に必要な「結びつけ」を行うことで動作するのではないかとの内容は理解できました。ご対応有難う御座いました。調べてみたいと思います。

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 90.22%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

同じタグがついた質問を見る