カテゴリー別アーカイブ: PHP

【Laravel】ajax で POST通信

Laravel で ajax の POST通信をしようとしたところ
エラーとなったのでその対処方法をメモメモ

HTMLのどっかにmetaタグでcsrf-tokenの文字列を記載。

あとは、ajaxのところで、headerにこの値を
セットすればOK!!

【Laravel】キャッシュクリア

Laravel使ってて
.envファイルとか更新したのに
反映されなかったりするのは
すべてキャッシュのせいだー!

コマンドラインで
これをたたけば解決なり!

【Laravel】Console\Comands でパラメータを渡す

Console\Comands でバッチプログラムを作成したときに
パラメータを渡す方法をメモメモ

2つあって

もうひとつは

両方ともパラメータなしでも実行できる

composerについて

基本だけど一応メモメモ

・composer require
パッケージを追加するときに使用
composer.json も更新される
開発環境で実行

・composer update
composer.json に記載されているパッケージを最新バージョンにアップデート
composer.lock も更新される
開発環境で実行

・composer install
composer.json に記載されているパッケージを、
composer.lock に記載されているバージョンでインストール

composer.json とcomposer.lock さえあれば
どこの環境でも同じパッケージが入れられる
すばらしいw

【Laravel】Gmail のSMTPを利用してメール送付

なんとなくやる機会があったので
いちおう忘れないようにメモメモ

まずは composer で phpmailer をインストール

https://github.com/PHPMailer/PHPMailer

あとはこんな感じ

【Laravel】mysqlのCSVインポートでエラー

Laravelで、mysqlにCSVファイルをインポートしようとしたら
エラーになったので、そのときの対応をメモメモ

CSVの読み込みはこんな感じ

そうすると
こんなエラーや
string(420) “SQLSTATE[HY000]: General error: 2014 Cannot execute queries while other unbuffered queries are active. Consider using PDOStatement::fetchAll(). Alternatively, if your code is only ever going to run against mysql, you may enable query buffering by setting the PDO::MYSQL_ATTR_USE_BUFFERED_QUERY attribute.

こんなエラーで怒られる、、、
PDO::exec(): LOAD DATA LOCAL INFILE forbidden

コンソール画面から直接SQLを実行するといけるのに

config/database.php に
下記2行を追加してあげたらうまくいった
PDO::ATTR_EMULATE_PREPARES => true,
PDO::MYSQL_ATTR_LOCAL_INFILE => true,

【PHP】ディレクトリ配下の全てのファイルリストを取得

PHPでディレクトリを掘り下げていって
配下にある全てのファイルを取得したかったのでメモメモ
glob関数は楽だな~

【Laravel】新規作成時のパーミッション設定

Laravelで新規にサイト作ろうとすると
パーミッションで怒られるはず、、、

やり方は、いくつかあるけど
この方法が自分好みなので、メモメモ

おおざっぱな手順
 ・[laravel] グループを新規に作成して
 ・[apache] など必要なユーザを [laravel] グループに追加する
 ・[storage] 配下 の所有グループを [laravel] に変更
 ・新規で作成されるファイルのパーミッションを指定

以上!

【Laravel】バッチのログファイルを別に書き出す

Laravel でバッチ処理を作ってたんだけど、
ログを吐こうとすると、
storage/logs/ 配下の larabel-xxxx-xx-xx.log ファイルに
全部まとまられてしまって、管理しづらいので
別に書き出す方法をメモメモ

いろいろ方法はあるみたいだけど
これが一番簡単にできたので採用!

手順は2つ

1.config/logging.php のchannels に、’daily’ をコピッてひとつ追加

2.該当の処理でログを書き出す

あと、キャッシュ削除しないとうまく動かないかも