- 1. Docker x Laravel めちゃくちゃ遅い Docker for Mac を爆速化する
- 2. PHP開発環境を理解しながら構築!③
- 3. Moodle 3.9 マニュアル – コース
- 4. phpのissetの挙動のを確認する。
- 5. PHPをXdebugでデバッグする過程(MAMP)
- 6. PHP ~アウトプット用語集3~
- 7. php header http 受信
- 8. Laravel taskscheduleでClass ‘ZipArchive’ not foundとエラー出たがPHPの指定を間違えていたのが原因だった
- 9. PHPのエラーログに配列の中身をきれいに出す方法
- 10. 【laravel-admin】【grid】Custom Actions Class
- 11. LaravelにてDBから取得した画像をツイートする方法
- 12. PHPでもコンストラクタに限り、シグニチャーの違うオーバーライドができる!!
- 13. 【laravel-admin】【controller】javascript
- 14. CodeIgniter4のViewの基礎
- 15. ComposerのPHPパスを変更する
- 16. PHPにおける配列のループ処理における基本コード
- 17. EclipseのXdebugが勝手に起動してしまう
- 18. 【Unity】ガチャを実装してみました【PHP】
- 19. GMO-PGのリンクタイプPlusでセキュアなカード決済を実現する
- 20. 実務未経験者が初めての共同開発経験をまとめてみた
Docker x Laravel めちゃくちゃ遅い Docker for Mac を爆速化する
## Docker for Mac 遅い問題
– [Macのdockerが遅いストレスから解放されよう](https://qiita.com/ysKey2/items/346c429ac8dfa0aed892)
– [DXを大幅に低下させるDocker for Macを捨ててMac最速のDocker環境を手に入れる](https://qiita.com/yuki_ycino/items/cb21cf91a39ddd61f484)
– [MacのDockerが遅い原因と対処方法(公式)](https://wonwon-eater.com/mac-docker-performance/)
– [Docker For Macが遅い:対策の実験](https://qiita.com/FattyRabbit/items/bfb5a9a321718b7f2756)
– [Docker for Mac遅すぎる問題の解決](https://tech.ga-tech.co.jp/entry/2019/10/docker-vagrant)
– [Docker for Macでマウントしたvolumeの遅
PHP開発環境を理解しながら構築!③
#はじめに
[前回](https://qiita.com/kyo_suke/items/e6646662e70c5833bb9b)まででローカル環境でPHPを書く環境を整えたので、今回からは実際にPHPを書いてブラウザに表示する方法を忘れないようにまとめていきたいと思います。
###やること
・PHPを書いてみる
・ブラウザで入力内容確認
###環境
・Windows10 64bit
・XAMPP v3.2.4
・Apache v2.4.46
・PHP v7.4.10##XAMPPを使ってPHPをブラウザで表示
では早速PHPを書く前に、テスト用HTMLを書いていきましょう。XAMPPやVsCodeをなにそれ?って方は[前回](https://qiita.com/kyo_suke/items/e6646662e70c5833bb9b)の記事をお読みください。
大丈夫だよーって方はXAMPPのApacheを起動してからお読みください!
##①テスト用PHPファイルの作成
###ドキュメントルート
ドキュメントルートとはWeb上に公開
Moodle 3.9 マニュアル – コース
[本文](https://docs.moodle.org/39/en/Courses)
コースは、教師が生徒のために学習教材やアクティビティを追加するMoodleのスペースです。コースは、管理者、コース作成者、または管理者が作成できます。その後、教師はコンテンツを追加し、自分のニーズに応じてコンテンツを再編成できます。画像の下のリンクは、コースの作成、編成、および管理に関する詳細情報を提供します。
![600px-screenshotcourse.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/470368/bfac0c38-233e-e92b-33c0-f5df30c1db28.png)
A course using the Clean theme![600px-MoodleMountainBoost.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/470368/4956b6de-a7c9-2baf-0f23-d6
phpのissetの挙動のを確認する。
# issetの挙動
nullと”や0の挙動が違う
“`php
“`
PHPをXdebugでデバッグする過程(MAMP)
#開発環境
macOS Cataline 10.15.7
PHP7.4.2
xdebug2.9.8
mamp5.7#PHP Debugをインストール
vscodeでPHP Debugというプラグインをインストールします。
![スクリーンショット 2020-10-06 19.18.50.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/702435/e6473738-c307-d5d1-1353-d7b7d4aeef3f.png)#Xdebugをインストール
上記でPHP Debugをインストール後、下にスクロールすると
“`XDebug installation wizard“`というリンクがあるのでそこに飛びます。
![スクリーンショット 2020-10-06 21.14.48.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/702435/c46eb970-ec67-102a-56d6-c710b4bd41f9.
PHP ~アウトプット用語集3~
# isset
値が設定されているか確認してくれます。
下記の画像は、値がcolorに設定されていればcolorを
値が設定されていなければNone selectedを返します。
![スクリーンショット 2020-10-06 17.06.47.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/663122/95a19447-96e8-cd5e-392d-447bf95d31a0.png)
※issetで調べてnullだったら他の値を入れる事はよくあるので違う記述ができます。
下記の画像と上記の画像と同じ処理になります。
??の部分はnull合体演算子といいます。
![スクリーンショット 2020-10-06 17.16.32.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/663122/5cb2e5fe-712f-e75c-990a-2b549db3a306.png)# GET POST 違い
### GET
情報の取得
php header http 受信
http header 受信
https://so-zou.jp/web-app/tech/programming/php/network/http/header/get.htm
Laravel taskscheduleでClass ‘ZipArchive’ not foundとエラー出たがPHPの指定を間違えていたのが原因だった
初Qiitaです。足りない、誤りがある箇所についてはコメントから指摘いただけますと嬉しいです。
環境:MacOS Catalina, PHP 7.4.11, Laravel 7.28.3
■やりたかったこと
Laravelのタスクスケジュールの設定を行い自動実行できるようにしたかった。■問題
“`php artisan schedule:run“`をすると問題なく動くが、スケジュールを実行するとZipArchiveが見つからないと以下のエラーが出てしまう。
`local.ERROR: Class ‘ZipArchive’ not found {“exception”:”[object] (Error(code: 0): Class ‘ZipArchive’`■解決方法
使用したいphpの場所を
“`which php“`
で取得してcrontabで明示的に以下のような感じで書く。“`* * * * * cd /var/www/ && /usr/bin/php7 /var/www/artisan schedule:run >> /var/www/storage
PHPのエラーログに配列の中身をきれいに出す方法
## 何も考えずに配列をログに吐こうとするとこうなる
#### ソース
“`
“`
#### 実行したときのエラーログ
“`
[09-Jun-2007 03:44:20] Array
“`
「Array」しか出ない(´・∀・`)### print_r()をかませる。第2引数をtrueにする。
#### ソース
“`
“`
#### 実行したときのエラーログ
“`
[09-Jun-2007 03:44:20] Array
(
[0] => hoge
[1] => piyo
[2] => Array
(
[0] => 100
【laravel-admin】【grid】Custom Actions Class
##gridの\Encore\Admin\Grid\Displayers\ActionsをoverrideしてCustomActionsを作る
“`CustomActions.php
namespace App\Admin\Controllers;use Encore\Admin\Admin;
class CustomActions extends \Encore\Admin\Grid\Displayers\Actions
{
protected $actions = [‘edit’];
protected function renderEdit()
{
if(false !== strpos($_SERVER[“REQUEST_URI”], env(‘ADMIN_ROUTE_PREFIX’, ‘admin’).”/auth”)){
return <<LaravelにてDBから取得した画像をツイートする方法 ##はじめに
今回は認証済みでアクセス情報も取得している前提で進めますので、
まだの方は先にそちらを完了させて下さい!php.7.0
Laravel 7##本文
“`
composer require abraham/twitteroauth //twitteroauthをインストール
“`“`TweetController.php
use Abraham\TwitterOAuth\TwitterOAuth;//先程インストールしたのをuse
public function index(Request $request)
{
$api_key = //apiキーをセット;
$secret_Key = //シークレットキーをセット;
$access_token = //アクセストークンをセット;
$access_token_secret = //アクセストークンシークレットをセット;//インスタンスを作成
$twitter = new TwitterOA
PHPでもコンストラクタに限り、シグニチャーの違うオーバーライドができる!!
# タイトル変更しました
ご指摘いただき、勘違いが分かりましたので、タイトルを以下の通り変更させてもらいました。**PHPでも他のオブジェクト指向で言うオーバーロードができる!!(ただしコンストラクに限る)**
↓
**PHPでもコンストラクタに限り、シグニチャーの違うオーバーライドができる!!**# 概要
表題の通りですが、PHPでもコンストラクタに限り引数のシグニチャが異なるオーバーライド(他のオブジェクト指向で言うオーバーロード)ができるというのをマニュアルで確認したというだけのお話です。
PHPではオーバーロードができないという記事をよく見かけるのですが、コンストラクタだけは例外ということが明記されている記事を見かけなかったので(マニュアルにあるから当たり前!?)、残しておこうかと。[2020-10-06追記]
ご指摘によりオーバーロードはできないことが分かりましたので、以下の記事は、「PHPでもコンストラクタに限り、シグニチャーの違うオーバーライドができる!!」という内容になります。
@error_401 さんありがとうございます!# Manual
[PHP
【laravel-admin】【controller】javascript
##laravel-adminのController側でjavascriptを使う
ちょっとしたjavascriptのためにいちいちファイルを作って、とかviewを変更して、とかが大変な時は以下の方法でcontroller側にjavascriptを書いてページに埋め込むことができます。
viewの一部を変更したいけどviewには手を加えたくない…という場合などに便利です。“`SampleController.php
use Encore\Admin\Admin;class SampleController extends AdminController
{
/**
* sample
*/
public function sample(Content $content)
{
$script = <<