DEVELOPERS BLOGデベロッパーズブログ

  1. HOME > 
  2. 加藤 正人のデベロッパーズブログ > 
  3. CakePHP3 のコマンドライン実行

加藤 正人のデベロッパーズブログ

加藤 正人

氏名
加藤 正人
役職
多分SE
血液型
秘密
出没
美味しいもののあるところ
特色
タヒチ大好き。ちょいメタボ。

PhpSpreadsheet でExcel ファイルを読み込む (CakePHP3)

2019/11/07

PhpSpreadsheet でExcel ファイルを読み込む (CakePHP3)

 

CakePHP にはコマンドラインインターフェイス (bash 等のシェルコマンドラインや cron での実行など) 用の仕組みが用意されている。

それらの実行用に bin/cake というスクリプト (シェルスクリプト) が用意されているのだが、改行コードが CR+LF になっていることがある。

このため Unix 系 OS のサーバーにアップロードして実行しようとすると、

	行 nn: $'\r': コマンドが見つかりません
	行 nn: 予期しないトークン `$'{\r'' 周辺に構文エラーがあります

のようなエラーが表示され実行できない。このような場合は当該ファイルから CR (CTRL-M、0x0d) を除去してやる必要がある。

方法1:
当該ファイルを Windows 機にダウンロードし、秀丸エディタのような改行コードを指定できるエディタで改行コードを LF にして保存し直し、その後当該ファイルをサーバーにバイナリ転送する。
方法2:
サーバー上で ログインし、コマンドラインで tr コマンドを使用し
tr -d "\r" < [ファイル名] > [新ファイル名]
のようにする。
関連タグ: CRLF  Shell  Command  CakePHP3