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

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

php 逆引き一覧

実際によく使っているphpの逆引きを掲載します

#【基本】
◆コメントアウト

“`
// コメント
/* コメント */
“`

◆phpの情報表示

“`
echo phpinfo();
“`

◆functionの引数に初期値を持たせる

“`
public static function getPresentList($sql, $userID, $viewType=array())
public static function getPresentList($sql, $userID, $viewType=true)
“`

◆linuxからphpを実行時に引数を指定

“`
php test.php ‘aaa’
echo $argv[1];
“`

◆コンスト(大文字アンダースコー区切り)

“`
const USER_DATA = ‘USER_DATA’;
self::USER_DATA
“`

◆複数に代入する方法

“`
$totalPoint = $totalPointBefore = ceil($damage/100);
“`

◆配列の

元記事を表示

sessionを使ったログイン管理まとめ

すぐに忘れて調べなおすことになるので自分用にまとめ

#ログインhtml画面
“`




“`

#チェック動作
“`php

$name = $_POST[‘name’];
$pass = $_POST[‘password’];

if( ){
//パスワード、名前のバリデーション
}else{
session_start();
$_SESSION[‘login’] = 1;
$_SESSION[‘name’] = $name;
header(‘Location: login_top.php’);
exit();
}
“`
#ログイン必須にし

元記事を表示

Moodle 3.9 マニュアル – 評定のインポート

[原文](https://docs.moodle.org/39/en/Grade_import)

# 評定のインポート

内容

[1 評定のインポート](#1-評定のインポート)
[2 CSVインポート](#2-csvインポート)
[2.1 評定マッピング](#21-評定マッピング)
[2.2 エンコーディング](#22-エンコーディング)
[2.3 曖昧なスケール](#23-曖昧なスケール)
[2.4 強制インポート](#24-強制インポート)
[3 スプレッドシートからの貼り付け](#3-スプレッドシートからの貼り付け)
[4 XMLインポート](#4-xmlインポート)
[4.1 リモートファイルのURL](#41-リモートファイルのurl)
[5 評定インポート機能](#5-評定インポート機能)
[6 関連項目](#6-関連項目)

# 1 評定のインポート

成績は、CSV または XML ファイルとして、またはスプレッドシートから貼り付けてインポートすることができます。

インポートファイルの形式は、対応するエクスポート形式と同じです。

注意1: 評定のインポートは[

元記事を表示

Moodle 3.9 マニュアル – 用語集の活動

[原文](https://docs.moodle.org/39/en/Glossary_activity)

# 用語集の活動

# グロサリー活動とは何ですか?

グロサリー活動では、参加者が辞書のように定義のリストを作成し、管理することができます。教師のみが設定して使用することができますが、主な機能は共同作業としての演習です。[用語集自動リンクフィルター:(翻訳準備中)](https://docs.moodle.org/39/en/Glossary_auto-linking_filter)は、コース内の用語集にある単語をハイライト表示します。
[![IMAGE ALT TEXT HERE](http://img.youtube.com/vi/ojTLv11p71U/0.jpg)](http://www.youtube.com/watch?v=ojTLv11p71U)
用語集の活動の概要

# どのように設定するのですか?

1. コースの編集をオンにした状態で、アクティビティの選択から「用語集」を選択します。
2. 用語集に名前を付け、必要に応じて説明を付けます。
3. 他のセク

元記事を表示

Moodle 3.9 マニュアル – カテゴリ:用語集

[原文](https://docs.moodle.org/39/en/Category:Glossary)

# カテゴリ:用語集

用語集モジュールに関連した記事のインデックスです。
カテゴリ「用語集」のページ

全25ページのうち、以下の25ページがこのカテゴリのものです。

[用語集の活動](https://qiita.com/intrajp/items/8acb84f3a889ed67ca02)

C

Capabilities/block/glossary random:addinstance
Capabilities/block/glossary random:myaddinstance
Capabilities/mod/glossary:addinstance
Capabilities/mod/glossary:approve
Capabilities/mod/glossary:comment
Capabilities/mod/glossary:export
Capabilities/mod/glossary:expo

元記事を表示

Moodle 3.9 マニュアル – データベース

[原文](https://docs.moodle.org/39/en/Database)

# データベース

このページは、同じタイトルに関連する記事のリストです。内部リンクがこのページを参照した場合、意図された記事を直接指すようにリンクを変更することを望むかもしれません。

以下のいずれかを選択してください。

・[データベース活動モジュール:(翻訳準備中)](https://docs.moodle.org/39/en/Database_activity_module) – 教師と学生が構造化された情報のバンクを構築することができます。
・[外部データベース認証:(翻訳準備中)](https://docs.moodle.org/39/en/External_database_authentication)
・[外部データベース登録:(翻訳準備中)](https://docs.moodle.org/39/en/External_database_enrolment)
・[Moodleのデータベーススキーマ開発者向けドキュメント:(翻訳準備中)](http://docs.moodle

元記事を表示

Moodle 3.9 マニュアル – カテゴリ:曖昧性の解消

[原文](https://docs.moodle.org/39/en/Category:Disambiguation)

# カテゴリ:曖昧性の解消

曖昧性の解消とは、曖昧性を解消するプロセスのことです – 2つ以上の異なるトピックについての記事が同じ “自然な “タイトルを持っているときに発生する競合を意味します。
カテゴリ内のページ “曖昧性の解消”

全10ページ中、以下の10ページがこのカテゴリに属しています。

[データベース](https://qiita.com/intrajp/items/84a005852719d67ea7e1)

A

Adding questions

C

Category
Cloze editor module

D

[Database](https://docs.moodle.org/39/en/Database) [(日本語訳:データベース)](https://qiita.com/intrajp/items/84a005852719d67ea7e1)

H

Help
HTML

I

IMS

R

Reports

T

Tes

元記事を表示

Moodle 3.9 マニュアル – フォーラムの活動

[原文](https://docs.moodle.org/39/en/Forum_activity)

# フォーラムの活動

# フォーラム活動とは何ですか?

フォーラム活動では、生徒と教師が「スレッド」の一部としてコメントを投稿することで、アイデアを交換することができます。画像やメディアなどのファイルをフォーラムの投稿に含めることができます。教師はフォーラムの投稿を評定したり、評価したりすることができます。また、生徒がお互いの投稿を評価する許可を与えることも可能です。
[![IMAGE ALT TEXT HERE](http://img.youtube.com/vi/mKLht1XCSnk/0.jpg)](http://www.youtube.com/watch?v=mKLht1XCSnk)

フォーラム活動の概要

# どのように設定するのですか?

1. コースの編集をオンにした状態で、アクティビティの選択から「フォーラム」を選択します。
2. フォーラムに名前を付け、必要に応じて説明を付けます。
3. フォーラムのタイプを選択し、疑問符(?)アイコンをクリックして、各タイプ

元記事を表示

Laravel8.0でPassportを動かしてみた

Laravel 8.0の[Laravel Passport](https://laravel.com/docs/8.x/passport) を簡単に読み解いてみるだけの内容

## 環境

| env | ver |
| —————– | —- |
| laravel/framework | 8.0 |
| laravel/passport | 10.0 |

## passportの導入

一旦はスタンダードっぽい方式でやる
(トークンをDBに持たない方式とかいくつかある模様)

1. passportの導入と構成

“`sh
composer require laravel/passport
php artisan migrate
php artisan passport:install
“`

2. `app/Providers/AuthServiceProvider.php`
1. `use Laravel\Passport\Passport;` を追加
2. `boot()` に `Passpor

元記事を表示

CentOS7.7にPHP7.4とSQLServerのドライバを入れる方法

実態としてはLaravel + SQLServerに必要な組み合わせです。
地味に条件が多いのに書いてあるところが見つからなかったので…

“`sh
sudo yum install -y epel-release
sudo yum install -y http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
sudo yum update
# これがないとSQLServerへの接続でコケる
sudo yum localinstall https://packages.microsoft.com/rhel/7/prod/msodbcsql17-17.4.1.1-1.x86_64.rpm
# Laravelが起動するのに必要な様々ないろいろ
sudo yum install -y php74 php74-php-common php74-php-cli php74-php-mbstring php74-php-gd php74-php-pear php74-php-pdo php74-php-mcrypt php74-ph

元記事を表示

Laravel 8.x Jetstreamのプロフィール画像が表示されない

## 概要
Laravel 8.xがリリースされ少し経過しましたが、やる事が溜まっていた為8.xに手が出せませんでした。そこで最近やっと触れる時間が確保できたのでLaravel 8.xと新パッケージのLaravel Jetstreamを触れる機会ができました。

## プロフィール画像が表示されない…
Jetstreamでは標準で自分のアカウントのプロフィール画像を設定する事ができます。まだコードを何も書いてないのにこのレベルまで実装されてるなんてすごい、、

しかし、マイページからプロフィール画像となる画像を選択し保存をしてみたのですが表示されません。なぜだ。。。

## Google先生に聞いてみる
何が原因か見ているとおそらく画像のパスが適切でない事が判明。では、何か同じ問題が起きてる人がいるかも!と思いGoogle先生に聞いてみることにしました。

> [Laravel 8.x 画像が表示されない – teratail](https://teratail.com/questions/295757)

あった。やはり同じ問題を抱えている方がいたようです。

## 解決方法

元記事を表示

WordPressの公式ウィジェットカレンダー末日がズレている?ので直した。

### 注意::私だけの事象かもしれません!!

WordPressの公式ウィジェットカレンダー末日がズレている?ので直した。直した箇所はこちら変数名に$ooooと書いている部分が今回修正した箇所です。修正したファイルはWordPressのインクルードフォルダにある。

“`
wp-includes\general-template.php
“`
このファイルを直しました。コアファイルなので次期UPDATEで修正されるかとは思いますが、それまではこちらの修正で!

因みに何故、$ooooにしたのかは、お~~~の~~~という土佐弁からです。ファイルの中にget_calendar(げっとカレンダー)という関数があるのでそちらを修正しています。原因は下記です。
gmdateというものを使用している所をローカルサーバーの時間で対応しました、さくらレンタルサーバーのタイムゾーンは日本時間を指しています。若干の誤差はあるけれど酷い誤差ではないのでdateで大丈夫そうです。

要は日付の末日が正確に取れていないことが原因みたいです?
はやく修正してくれることを願っています。

元記事(私用)[

元記事を表示

Laravel 本番環境でindexにアクセスするとエラーが発生してしまった話

### 概要
Laravelのプロジェクトディレクトリを`hogehoge`と仮定し、URL`hogehoge/public/`にアクセスすると`The GET method is not supported for this route. Supported methods: HEAD.`と表示されてしまった。

### 原因調査

今まではエラーなく普通に表示されていたが急にエラーが発生したので原因となるコードも検討がつかない。何か問題がないかルーティングファイルなどを確認してみるが特に問題はないようだ。

原因を調査するため過去に自分が打ってきたコマンドを`history`コマンドで確認し、再度`git clone`で正常に動いているもので1つずつ試していくと犯人を見つけた。。

“`
php artisan view:cache
“`

どうやらキャッシュ作成にこのエラーに関する問題があるらしい。。
(いまだ上記コマンドがどの様な影響によってこの問題が発生したかという根本的な理由はわかっていないので、分かる方は教えていただきたいです!)

### 解決方法
“`
php

元記事を表示

composerのプロジェクトをPackagistに公開して,composer require で利用できるようにする

packagist.org にパッケージを公開する方法について記載します.

下記の記事が非常に良いのですが,情報が古くなってきている箇所があるため新規に記事とします.

https://blog.monochromegane.com/blog/2013/06/02/development-php-composer-library-at-packagist-1/

一度やってみないとわからないよねということで,手順に従っていけば,サンプルプロジェクトのような自作パッケージを公開できる形で作成しました.

ただ,説明については元記事のほうが詳しいため,元記事を参照しつつ読んでいただければと思います.

## サンプルプロジェクト

https://github.com/tarohida/composer_publish_lib

上記のサンプルプロジェクトを作成し,公開するという形で説明していきます.

## 手順と解説

### 必要なディレクトリとファイルの作成

まずは前述の記事同様,サンプルプロジェクト用のディレクトリを作成します.

“`
mkdir MyLibrary
cd

元記事を表示

Composer2.0ついにリリース!

Original article:https://blog.packagist.com/composer-2-0-is-now-available/

もはやPHPには欠かせないパッケージマネージャである[Composer](https://getcomposer.org/)ですが、2020/10/24に[Composer2.0.0](https://github.com/composer/composer/releases/tag/2.0.0)がリリースされました。
2012年のリリース以来初めてのメジャーバージョンアップということで、多くの改善や新機能が盛り込まれており、そして互換のない変更点もわずかに存在します。
以下は[公式](https://getcomposer.org/)でもアナウンスされている、[Jordi Boggiano](https://blog.packagist.com/author/seldaek/)による紹介記事[Composer 2.0 is now available!](https://getcomposer.org/2)の日本語訳です。

#

元記事を表示

【PHP初心者】if else文をなくすガード節

### ガード節とは

`if else`文の入れ子構造を解消する方法です。

`if else`文の入れ子構造

~~~php
public function hoge($a, $b) {
if ($a > 0) {
$result = ‘fuga’;
} else {
if ($b > 0) {
$result = ‘piyo’;
} else {
$result = ‘piyopiyo’;
}
}
return $result;
}
~~~

ガード節で書き換えると以下のようになります。

~~~php
public function hoge($a, $b) {
if ($a > 0) {
return ‘fuga’;
}
if ($b > 0) {
return ‘piyo’;
}
return ‘piyopiyo’;
}
~~~

### メリット

*

元記事を表示

Moodle 3.9 マニュアル – カテゴリ:フォーラム

[原文](https://docs.moodle.org/39/en/Category:Forum)

# カテゴリ:フォーラム

フォーラムに関するドキュメントページのインデックス。

カテゴリー「フォーラム」のページ
全48ページ中、このカテゴリには以下のページがあります。

[フォーラムの活動](https://qiita.com/intrajp/items/2d17c808889473d447aa)

A
Announcements forum

C
Capabilities/block/news items:addinstance
Capabilities/block/news items:myaddinstance
Capabilities/block/search forums:addinstance
Capabilities/mod/forum:addinstance
Capabilities/mod/forum:addnews
Capabilities/mod/forum:addquestion
Capabilities/mod/forum:allowforce

元記事を表示

Moodle 3.9 マニュアル – 評定者レポート

[原文]()

# 評定者レポート

コース内の各学生のすべての成績は、コースの成績表、または「成績表」からアクセスできます。
[![IMAGE ALT TEXT HERE](http://img.youtube.com/vi/S0M3IooWIjI/0.jpg)](http://www.youtube.com/watch?v=S0M3IooWIjI)
評定表の概要

評定者レポートは評価されたMoodleのさまざまな部分から評定された[アイテム](https://docs.moodle.org/39/en/Grade_items)を収集し、あなたはそれらを表示したり変更したり、[カテゴリ](https://docs.moodle.org/39/en/Grade_categories)に並べ替えたり、さまざまな方法で合計を計算したりすることができます。あなたがMoodleコースに評価項目を追加すると、評点帳は自動的に評点用のスペースを作成し、システムまたはあなたによって生成された評点を追加します。

表示される評点は最初は評価自体からの生の評点として表示されますので、あなたがどのよう

元記事を表示

【Laravel】送信したメールの開封検知をする

Laravelから送信したメールが既読されたかどうか、開封検知機能を実装します。

# 注意点
メールを受け取った側のメーラーアプリが**HTMLメールを受信できることが前提**です。逆に言えばHTMLを受け取れない場合、自動でテキストメールに変換してしまう場合等は開封検知ができません。

また、この方法では開封されたかどうか正確に検知することができません。実際には開封していないのに「開封した」と判断するパターンや、開封したのに検知することができないパターンなどがあります。

# 仕様
「1×1の透明な画像をHTMLメールに埋め込む」ことで開封検知をします。
1×1画像用のルーティングを用意し、そのURLにアクセスがあった場合にDBに記録する、という形とします。

# 動作環境
・PHP 7.4.11
・MySQL 8.0.21
・Laravel Framework 8.10.0

全てローカルで動作させます

# 実装
### .envファイルの修正
メールのドライバはsmtpでmailtrapを使用します。

“`Env:.env
MAIL_MAILER=smtp
MAIL_HO

元記事を表示

PHPで簡単な掲示板を作る

# はじめに
`PHP`・`HTML`で簡単な掲示板を作成する方法です。
あくまでで簡易的なものなので、脆弱性は多いです。セキュリティを重視する方にはおススメしません。

# デモページ
完成品は[こちら](https://sekaino-usay.github.io/Qiita/Simple_Bulletin_Board/index.php)から確認できます。
※サンプルデモでは、セキュリティ等の都合上,書き込みができないような仕様になっています。ご了承ください。
[](https://sekaino-usay.github.io/Qiita/Simple_Bulletin_Board/index.php)

# ソースコード
“`PHP:index.php


掲示板

元記事を表示

OTHERカテゴリの最新記事