リモート上のファイルでcomposerコマンドの実行について教えてください。
したいこと
・viewsでボタンを押したらcontrollerでxlsxの出力
質問は2点ありまして以下になります。
・リモートでのcomposerコマンドの実行方法。
・上記不可であれば、生phpもしくはcodeigniterでのxlsx出力方法
現在の開発の状況
・atomのremote-ftpを使用して開発
・php、codeigniterでの開発
・xlsx形式のファイルを出力したい
上記から以下に困っています。
・phpspreadsheetというライブラリをcomposerでインストールしたいが、リモート上の為composerコマンドの実行方法が分からない。
composer.jsonやcomposer.lockなどのファイルがそもそも存在していないので、もしかしたらcomposer自体インストールされていないかもです。
お時間ある方、お答えいただけると助かります。。
追記
ローカル環境でcomposerとライブラリをインストールし、開発環境に移しました。
ですが、以下でエラーが出てしまいます。
$spreadsheet = new Spreadsheet();
原因はパスが通っていないことだと思います。
なので今回聞きたいことは、パスの通し方とパスの記載方法になります。
とりあえず状況を。。
ディレクトリは
app
-controllers
|-controller.php
ci
public
-他html
-index.php
shell
vendor
-composer
-phpoffice/phpspreadsheet
-autoload.php
conposer.json
composer.lock
if ( ! defined('BASEPATH')) exit('No direct script access allowed');
use PhpOffice\PhpSpreadsheet\Spreadsheet;
class Order extends CI_Controller{
function download_xlsx(){
$spreadsheet = new Spreadsheet();
$sheet = $spreadsheet->getActiveSheet();
$sheet->setCellValue('A1', 'Hello World !');
$writer = new Xlsx($spreadsheet);
$writer->save('hello world.xlsx');
}
require_once "vendor/autoload.php";
以上です。
ここでエラーが出てしまいます。
controllerで出力しようとしてるのがおかしいのでしょうか?
右も左も分からないので丸投げになってしまいますが、よろしくお願いします!