PHP関連のことを調べてみた2020年04月18日

PHP関連のことを調べてみた2020年04月18日

Laravel 7.4でデバッグバーを使用する方法

* [barryvdh/laravel-debugbar](https://github.com/barryvdh/laravel-debugbar)というパッケージがあるのでこれを使用する。

## barryvdh/laravel-debugbarをインストール

* compose

“` console
cd your/laravel/project/path
composer require barryvdh/laravel-debugbar
“`

## config値を設定
### config/app.php

* config/app.phpの’debug’項目値をtrueに設定する。
* また、providersとaliasesに下記を追加

“` config/app.php

/*
|————————————————————————–
| Application Debug Mode
|——————

元記事を表示

【PHP】『メモ』3項演算子(長い恐竜名はどっち?)

###0.はじめに

この3項演算子、何かの暗号みたいですよね。
2つのプルダウンに表示される恐竜名のうち
各プルダウンで1匹を選んで、恐竜名の長さが長い方を\$max_strとする。
一つ目のプルダウンで選択した恐竜、2つ目のプルダウンで選択した恐竜、max_strを表示する
(中途半端な意味のない)プログラム。
3項演算子を使いたいために作成したプログラム。

“`
3項演算子の書式

(条件) ? (条件が真のときの処理) : (条件が偽の時の処理);
“`

###1.コード例(選択画面)

“`php:3kou_enzan.php



dinosor

3高演算子 恐竜選択

好きな恐竜を選んでね。


元記事を表示

DockerのMySQLとPHPを連携

自分用備忘録。

DB接続。

hostにはdocker-compose.ymlに記載のコンテナ名(今回はmysql)を指定。
ユーザー名、パスワードも適切なものを入力。

“`php

function dbConnect() {
//DBへの接続準備
$dsn = ‘mysql:dbname=mysql_database;host=mysql;charset=utf8’;
$user = ‘mysql_user’;
$password = ‘mysql_pw’;
$options = array(
// SQL実行失敗時にはエラーコードのみ設定
PDO::ATTR_ERRMODE => PDO::ERRMODE_SILENT,
// デフォルトフェッチモードを連想配列形式に設定
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
// バッファードクエリを使う(一度に結果セットをすべて取得し、サーバー負荷を軽減)
// SELECTで得た結果に対

元記事を表示

Laravel Authのusersテーブルの情報を別のテーブルで管理する

# 目的

– 本内容で非常に詰まったため記事としてまとめる

# 実施環境

– ハードウェア環境

| 項目 | 情報 |
| — | — |
| 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 | Homwbrewを用いて導入 |

# 実施するに当たっての

元記事を表示

Dockerのmysqlに接続する&Sequel Proから接続する

備忘録として書きます。自分用。

# 環境

を参考にDockerを用いてphpの開発環境を構築。

# Dockerのコンテナに入る
“`terminal
$ docker-compose up //Docker立ち上げ
$ docker exec -it [mysqlのコンテナ名] bash //DBコンテナに入る
# mysql -u [ユーザー名] -p
“`


の「その他使い方メモ」参照。

docker-compose.ymlに記載されている情報。

Host: 127.0.0.1
user: mysql_user
password: mysql_pw
Database: mysql_database

によってSequel Proと連携。

`show databases;` や `show tables;` で連携を確認。

元記事を表示

【Laravel】複数条件のキーワード&絞り込み検索フォームを作る。(複数テーブルから取得)

はじめに。出来上がりはこんな感じ。
![スクリーンショット (18).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/574195/87867c6e-722c-689d-fde1-47b94516f42f.png)

##`やりたいこと`##

– laravelで検索フォームを作る
– 曲名とアーティスト名を入力したらキーワード検索&絞り込みしてDBから取得する

##`前提`##
– データベースは作成済みとして進めます

##`進めかた`##
– テーブルの作成
– Controllerの作成
– viewの作成

テーブル構成

####artistsテーブル

|id|name|
|—|—|
||||
||||
||||
####songsテーブル

|id|name|artist_id|
|—|—|—|—|
||||
||||
||||

Controller

“`php:SongController.php

元記事を表示

【Laravel】bladeで変数の存在確認する方法

「0」,「null」,「””」 をどうとらえるか↓↓↓

|関数 / 項目|$a = 未定義|$a = NULL|$a = ””|$a = 0|array();|
|—|—|—|—|—|—|
|$a == Null|true|true|true|true|
|$a == “”|true|true|true|true|
|$a == 0|true|true|true|true|
|$a === Null|true|true|false|false|
|$a === “”|false|false|true|false|
|$a === 0|false|false|false|true|false|
|is_null($a)|true|true|false|false|false|
|isset($a)|false|false|true|true|true|
|empty($a)|true|true|true|true|true|
|!empty($a)|false|false|false|false|false|

$textがnullの場合Helloが表示される

元記事を表示

今月の日付を出す。

来月の日付を出すにはどうしらしいんだろう?

“`php:output2.php
puts ‘code with syntax’

日にち

“`

元記事を表示

さくら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の画面を出す

スクリーンショット 2020-04-16 14.44.20.pngLightning 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デスクトップ製品の日本語化

JetBrainsデスクトップ製品の日本語化


(現在アーリーアクセス版とのことですので、使用の際はご注意ください。)

なんとすばらしい。安定性の向上や高速化も期待できます。まだ使い込んでいませんが、おそらく大きな問題はないでしょう。PhpStormに限らず、PyCharmやRub

元記事を表示

FacebookのAPIを使って投稿内容(画像・テキスト)を取得する

初投稿がんばります!
タイトル通りFacebookのAPIを使って投稿内容(画像・テキスト)を取得する方法について
記事にしていきたいと思います。

#1.開発者アカウントを作る
※既にアカウントを作成済な方は、まるっとこの章をすっ飛ばしてください※

アカウントをもっていない場合は、
https://developers.facebook.com/
にアクセスして、facebook for developersの開発者アカウントを作成してください。

ページのヘッダにある「スタートガイド(画像のオレンジ枠)」から開発者アカウントを作成します。
FB開発者ページ

#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する
`

元記事を表示

OTHERカテゴリの最新記事