- 1. さくらVPSにDrupal8のディストリビューション Lightning をインストールしたメモ
- 2. Docker環境でPHP+Apacheの開発をする
- 3. Laravel 419エラー
- 4. Laravel formで送った内容を受け取りたい時に 「419 Page Expired」のエラーが出た話
- 5. PHPの処理時間の計測方法
- 6. PHPのビルトインWebサーバを使ってみる。
- 7. 【PHP】使用できるデータ型まとめと概要
- 8. Laravel6×MAMPで作る初めての掲示板アプリ
- 9. Lightning Syncの自前実装-GoogleカレンダーとSalesforceのEventオブジェクトの同期-
- 10. PhpStorm 2020.1からの日本語化は純正のJapanese Language Packプラグインがいいみたい
- 11. FacebookのAPIを使って投稿内容(画像・テキスト)を取得する
- 12. PocketMine-MPをソースコードから起動~ビルドまで
- 13. 10~70歳までのドロップダウン
- 14. for年齢
- 15. while年齢
- 16. symfonyのchoiceTypeでplaceholderを消す方法(EC-CUBE4)
- 17. php laravel blade 文字超過丸め方 (1分で読めます)
- 18. Laravel マイグレーションファイルと一緒にモデルファイルも作成する
- 19. PHP TCPDFの使い方
- 20. Amazon Linux2 ec2にphp7.4 +laravel7+mysql8.0環境構築
- 21. ラズパイとpasoriを使って簡単な入退室管理システムを作ってみた
- 22. 初めてのMAMP【アプリ作成からサーバー起動まで】
さくらVPSにDrupal8のディストリビューション Lightning をインストールしたメモ
さくらVPSのLAMPスタートアップスクリプトはうまく動作していないようなので、スクリプト内を参考にしてインストールしたりするも、CentOS7系ではphpが5系になってしまったりで後々苦労するようだ。
結局自分でなんとかするしかない。
スクリプト冒頭で“`
yum -y install expect httpd-devel mod_ssl php php-devel php-pear mysql-server php-mbstring php-xml php-gd php-mysql“`
が実行されているが、php系はいらんので、“`
yum -y install expect httpd-devel mod_ssl“`
でとりあえず。##PHPのインストール
普通にyumで入れると5系になってしまうのでリポジトリを指定してインストールする。
“`
yum -y install –enablerepo=remi,remi-php73 php
“`以後、php73のリポジトリを指定してインストールしていけば、大体うまくいった。
##MySQ
Docker環境でPHP+Apacheの開発をする
おはようございます。
Kazです。## この記事 is
適当な個人開発をするときに> PHP + Apache の開発をDockerで構築したいなぁ
> ローカルディレクトリをマウントして開発したいなぁという自分へのメモも兼ねての記事となっています。
(xamppやmampでやれよ…でもコンテナってかっこいい…)
## 前提条件
Dockerをインストール済み
(MacでもWindowsでも問題ないです)インストール方法については、
先人の方々が多々わかりやすい記事を公開していらっしゃるので
Google先生に聞いてみてください。## とっととやり方だけ知りたい方へ
### PHP + Apache 構築(簡易版:PHP7.3)
・以下のコマンドを入力
“`
$ docker run -d -p 80:80 -v /User/foo/work/html:/var/www/html –name phpContainer php:7.3-apache
“`・ブラウザから`http://localhost`へアクセス
![qiita-2020-04-17-
Laravel 419エラー
#前提
Laravel 7#本題
419エラーがでた時の解消法例えば下記、Blade テンプレートで、以下のようなお問い合わせフォームを作成した場合。
“`from.blade.php
“`
この場合、下記のように419エラーが発生します。![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/594409/6db8bc9d-66ab-fd29-b427-52254e2593f7.png)
#解決法
BladeテンプレートにCSRF保護がで
Laravel formで送った内容を受け取りたい時に 「419 Page Expired」のエラーが出た話
# 目的
– ビューのbutton要素のクリックをトリガーとしてテーブル内のレコードを削除する処理をコーディングしたが「419 Page Expired」のエラーが発生し解決した話をまとめる
# 実施環境
– ハードウェア環境
| 項目 | 情報 |
| — | — |
| OS | macOS Catalina(10.15.3) |
| ハードウェア | MacBook Pro (16-inch ,2019) |
| プロセッサ | 2.6 GHz 6コアIntel Core i7 |
| メモリ | 16 GB 2667 MHz DDR4 |
| グラフィックス | AMD Radeon Pro 5300M 4 GB Intel UHD Graphics 630 1536 MB |– ソフトウェア環境
| 項目 | 情報 | 備考 |
| — | — | — |
| PHP バージョン | 7.4.3 | Homwbrewを用いて導入 |
| Laravel バージョン | 7.0.8 | commposerを用いて導入 |
| MySQLバージョ
PHPの処理時間の計測方法
#はじめに
PHPで書かれたコードの処理速度を計測したい。
調べると[microtime](https://www.php.net/manual/ja/function.microtime.php)を使った方法が出てきたが、[マニュアル](https://www.php.net/)に>パフォーマンスの計測には、hrtime() を使うことをお勧めします。
と書いてあったので[hrtime](https://www.php.net/manual/ja/function.hrtime.php)を使って実施します。
#コードの実施例
“`php
“`#hrtimeについて
hrtimeはPHP7.3から新しく追加された関数です。
##説明
任意のタイミングから計測したシステムの高精
PHPのビルトインWebサーバを使ってみる。
[ターミナルでPHPコードを実行する
](https://qiita.com/yuskesuzki@github/items/040adc6e74af6bbec705) を使って、PHPのコードをざっくりと動かせるようにはなります。だけど、やっぱりネットに強いプログラミング言語・PHPですから、HTTPのGETとかPOSTで渡されたパラメータとか処理してみたくなるじゃないですか。
ターミナル起動のPHPではコードは動くけど、HTTPの通信をあれこれ処理することはできません。
そんな時、Apacheやnginx、mod_phpとかphp-fpmなどインストールしなくとも、ターミナルから
“`bash
$ php -S localhost:8000
“`と入力して実行すれば、PHPのビルトインWebサーバが起動します。
“`bash
Document root is /Users/hogehoge/projects/php_test
Press Ctrl-C to quit.
“`起動したディレクトリがドキュメントルートになるので、ここに `index.php`
【PHP】使用できるデータ型まとめと概要
まだ学習途中の型についてはタイミングをみて追記予定
## データ型とは
データの種類のこと以下、PHPで利用できる主なデータ型
– スカラー型
– 文字列型(string)
– 整数型(int,integer)
– 浮動小数点型(float,double,real)
– 論理型(bool,boolean)
– 複合型
– 配列型(array)
– オブジェクト型(object)
– 特殊型
– リソース型(resource)
– ヌル型(null)### PHPはデータ型に対して寛容
JavaやC#のような言語は、文字列を格納するための変数に数値を代入することはできない
だが、PHPでは最初に文字列を格納した変数に整数型を代入もしくは整数型を格納した変数に文字列を代入することができる“`php
Laravel6×MAMPで作る初めての掲示板アプリ
# こんにちは。油そばと申します。
今回はLaravel6を使って掲示板を作っていきたいと思います。
ぜひ手を動かして作ってみましょう。完全版はこちら→https://aburasoba.org/
# Laravelをインストールする
## ターミナルでcomposerを使ってinstall
[Laravel 6.x インストール](https://readouble.com/laravel/6.x/ja/installation.html)
composer create-project –prefer-dist laravel/laravel blog(←アプリ名) “6.*”
このコマンドを打つだけでLaravelがインストールできます!
cd blog
blogディレクトリに移動しましょう。
## Laravelの画面を出す
Lightning Syncの自前実装-GoogleカレンダーとSalesforceのEventオブジェクトの同期-
前回こんなのを書いたのですが、その続きです。
[SalesforceのApexでチームスピリットの出退勤情報からGoogleカレンダーに登録する処理](https://qiita.com/geeorgey/items/59de75ae7faf351743c1)SalesforceにはLightning Syncという機能が提供されており、それを使えばこんなことをしなくても同期できるのですが、__Einstein活動キャプチャという機能をONにしていると、Lightning Syncが使えない__ので、自前実装するしかありません。なんでそんな仕様なんだろう?
リポジトリはこちら
https://github.com/geeorgey/selfLightningSync## ToDo
– 第一部:GoogleCalendarの更新情報をSalesforceに同期する
– 第二部:SalesforceのEvent情報の更新をGoogleCalendarに同期する## 第一部:GoogleCalendarの更新情報をSalesforceに同期する
###必要要件
Googleから
PhpStorm 2020.1からの日本語化は純正のJapanese Language Packプラグインがいいみたい
# 先に結論
![phpstorm.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/104477/a9f6bd49-d736-9581-a85c-88a082c244e0.png)
もうタイトルがそのまま結論であまり語ることもないのですが、いままでPhpStormを日本語化する場合は、Pleiadesの日本語化プラグインを使っていた人がほとんどかと思われます。わたしもそうでした。
しかし、今はアプリケーション内から直接導入できるJetBrains純正の**「Japanese Language Pack」**を使うのがいいようです。
JetBrainsデスクトップ製品の日本語化
(現在アーリーアクセス版とのことですので、使用の際はご注意ください。)なんとすばらしい。安定性の向上や高速化も期待できます。まだ使い込んでいませんが、おそらく大きな問題はないでしょう。PhpStormに限らず、PyCharmやRub
FacebookのAPIを使って投稿内容(画像・テキスト)を取得する
初投稿がんばります!
タイトル通りFacebookのAPIを使って投稿内容(画像・テキスト)を取得する方法について
記事にしていきたいと思います。#1.開発者アカウントを作る
※既にアカウントを作成済な方は、まるっとこの章をすっ飛ばしてください※アカウントをもっていない場合は、
https://developers.facebook.com/
にアクセスして、facebook for developersの開発者アカウントを作成してください。ページのヘッダにある「スタートガイド(画像のオレンジ枠)」から開発者アカウントを作成します。
#2.新しいアプリを作成
新しくアカウントを作ると認証やらなんやら登録する部分があり、終わると下のような画面になります。
アプリIDの作成に「表示名」
PocketMine-MPをソースコードから起動~ビルドまで
##環境を整える
– [Git](https://git-scm.com/downloads)
– [Composer](https://getcomposer.org/download/)
– [PHP](https://php.net/) もしくは いわゆるPMMPの[bin](https://github.com/pmmp/php-build-scripts)
– [PocketMine DevTools](https://github.com/pmmp/DevTools/)各種Pathが通っていることを前提に説明しています
コマンドは環境に応じて置き換えてください。(例えば: composerのManual Download(composer.phar)を使用する場合や使用OSによって)###使用した環境
Windows10
他のOSであっても、環境が整っていれば問題ないはずです。##好きなディレクトリを作成して移動
“`bat
cd PMMP
cd ./PMMP
“`#ソースコードから起動
##PocketMine-MPのリポジトリからcloneする
`
10~70歳までのドロップダウン
## forとwhileの違い
Qiita投稿2回目。“`php:for.php
for年齢‘); ?>
“`
“`php:while.php
symfonyのchoiceTypeでplaceholderを消す方法(EC-CUBE4)
EC-CUBE4では配達日時や時間の初期値として、「選択しない」が選択されている。
しかし、日時を選ばせないのは都合が悪いので「選択しない」をそもそも表示しないようにしてみました。注文確認画面における配達時間選択画面を生成している部分が以下の通り
“`
$form = $event->getForm();
$form->add(
‘DeliveryTime’,
EntityType::class,
[
‘label’ => ‘front.shopping.delivery_time’,
‘class’ => ‘Eccube\Entity\DeliveryTime’,
‘choice_label’ => ‘deliveryTime’,
‘choices’ => $DeliveryTimes,
‘required’ => false,
‘placeholder’ => ‘common.select__unspecified’,
‘mapped’ =
php laravel blade 文字超過丸め方 (1分で読めます)
#やばい、、また詰まった、、、、
テキストの文字を丸めたい時ありますよね!
mb_strimwidth()を使うとできます。
ですが、文字数ではなく幅を考慮して**文字列をカット**しますのでご注意を!
指定の文字幅より長い場合にカットして最後に任意の文字列(…等)をつける事が可能に!!コード
“`mb_strimwidth(“おはようございます”, 0, 15, “…”);“`こんな感じで使えます!!
詳しくはマニュアルに載ってます!
↓
[公式マニュアル](https://www.php.net/manual/ja/function.mb-strimwidth.php)
Laravel マイグレーションファイルと一緒にモデルファイルも作成する
# 目的
– マイグレーションファイル作成時に一緒にモデルファイルを作成する方法をまとめる
# 実施環境
– ハードウェア環境(下記の二つの環境で確認)
| 項目 | 情報 |
| — | — |
| OS | macOS Catalina(10.15.3) |
| ハードウェア | MacBook Pro (16-inch ,2019) |
| プロセッサ | 2.6 GHz 6コアIntel Core i7 |
| メモリ | 16 GB 2667 MHz DDR4 |
| グラフィックス | AMD Radeon Pro 5300M 4 GB Intel UHD Graphics 630 1536 MB |– ソフトウェア環境
| 項目 | 情報 | 備考 |
| — | — | — |
| PHP バージョン | 7.4.3 | Homwbrewを用いて導入 |
| Laravel バージョン | 7.0.8 | commposerを用いて導入 |
| MySQLバージョン | 8.0.19 for osx10.13 on x86_64 | H
PHP TCPDFの使い方
TCPDFのサンプルでは$pdf->writeHTMLの例は多く有るが、通常のPDF出力例を色々な関数を使って投稿します。
特にテンプレートを作成する場合は、各表示項目を指定のロケーションに設定する為テストしてみました。![スクリーンショット 2020-04-16 3.35.18.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/101462/f96ff768-f527-7de1-1af0-6512212126b7.png)
“`php
include(“./TCPDF/tcpdf.php”);define(“MY_PDF_PAGE_ORIENTATION” , “L”); // P:Portrait, L:Landscape
define(“MY_PDF_FONT_NAME” , “kozgopromedium”); // kozminproregular
define(“MY_PDF_FONT_SIZE” , 10);
define(“MY_PD
Amazon Linux2 ec2にphp7.4 +laravel7+mysql8.0環境構築
# 概要
Amazon Linux2 ec2インスタンスに接続し、ec2-userの状態でphp7.4、laravel7、mysql8.0をインストールし環境構築します。
途中、必要に応じてapache、php-fpm、git、bitbucket、phpmyadminのインストール、設定も行っていますがこちらは必須ではありません。なお、Amazon Linux ec2インスタンスに接続した後、yumコマンドがうまく実行できない場合はAWS VPCのポリシーの編集が必要な場合がありますので注意してください。その場合、VPC から Amazon Linux AMI リポジトリをホストする S3 バケットへのトラフィックを許可する必要があります。
詳細は、[AWS公式ドキュメント](https://aws.amazon.com/jp/amazon-linux-ami/faqs/)を参照してください。“`
{
“Statement”: [
{
“Sid”: “Amazon Linux AMI Repository Access”,
“Principal”
ラズパイとpasoriを使って簡単な入退室管理システムを作ってみた
#はじめに
前回書いた「[ブラウザでnfcpyを使ってNFCタグのIDmを表示してみる](https://qiita.com/mono_taro/items/438e1d5f34f2893c642e)」と前々回書いた「[PHPでデータベースを使ってみるための備忘録](https://qiita.com/mono_taro/items/aa8265855a7e128e6f1d)」を組み合わせて簡単な入退室管理システムを作ってみました。####動機
以前から、大学のサークル/部活動などで部室は開いてるのか、誰がいま部室にいるのかわかることの出来るシステムがあったらいいなぁと思ってので、今回PHPの勉強を兼ねて作りました。
最初は在否を手動で登録する方法を考えたのですが、手間が多くてめんどくさそうなので、誰でも持っているような交通系ICカードのようなNFCカードのIDmでメンバーを特定して自動で在否を更新する方式にしました。これならリーダーにカードをかざすだけなので改札機通るのと同じ手間で済むのでそこまで面倒ではないと思います。##作品紹介
PCで制作してラズパイに実装し、同じL
初めてのMAMP【アプリ作成からサーバー起動まで】
## PHP学習時(主にlaravel使用)に利用しているMAMPのアプリデータ保存〜サーバー起動まで
MAMPのインストールについては **[公式サイト](https://www.mamp.info/en/mac/)** もしくは **[参照記事](https://qiita.com/kutarou197/items/9ea4c7539f869a2959d2)** をご参照ください。
### 作業一覧
1. MAMPにファイルを保存
2. Apachの設定(初回のみ) VScode使用
3. Apachの設定(新規アプリ追加時) VScode使用今回の作業では、以下のものを使用しています。
・テキストエディタ = VScode
・コマンドライン = ターミナル##事前準備
MAMPを起動しておきましょう。
一番右のアイコン「start servers」を押してサーバーを起動し、下図のように「stop servers」に変わったことを確認してください。右上のApache ServerとMySQL Serverも緑色