PHP関連のことを調べてみた2021年02月10日

PHP関連のことを調べてみた2021年02月10日

PHP 簡易掲示板作成 表示編 #2

[PHP 簡易掲示板作成 データ保存編 #1](https://qiita.com/yuyawatanabe1028/items/94f2b503cee8b0170911#comment-ac8b90a30dae1cb2284d)の続き
データの保存内容

“`:test.txt
1<>yuya<>完成<>2021/2/8 10:13:16
2<>yuya<>完成<>2021/2/8 10:13:22
3<>yuya<>完成<>2021/2/8 10:13:25
“`
#目標
入力フォームのすぐ下部にテキストファイルの内容を表示する
1. ファイルを1行ずつ読み込み、配列変数に代入する
2. 配列の数だけ処理をする
3. 処理内容:区切り文字「<>」で分割して、それぞれの値を取得
4. 処理内容:上記で取得した値を表示する

#入力フォームのすぐ下部にテキストファイルの内容を表示する
1. ファイルを1行ずつ読み込み、配列変数に代入する
`file`関数:ファイルを読み込み行ごとに配列にして返す

“`php:PHP
$lines = file($filename,FILE_IG

元記事を表示

だいたいわかるPHPのコールバック関数のサンプル

しょっちゅう忘れるので、だいたいわかる感じで書いた。

## array_walkのサンプル

“`php:FizzBuzz.php

元記事を表示

laravel6 Carbonを使用して先月の月を取得する

# 目的

– 日付取得系ライブラリであるCarbonを使用して先月の月を取得する方法をまとめる

# 環境

– ハードウェア環境

| 項目 | 情報 |
| — | — |
| OS | macOS Catalina(10.15.5) |
| ハードウェア | MacBook Pro (13-inch, 2020, Four Thunderbolt 3 ports) |
| プロセッサ | 2 GHz クアッドコアIntel Core i5 |
| メモリ | 32 GB 3733 MHz LPDDR4 |
| グラフィックス | Intel Iris Plus Graphics 1536 MB |

– ソフトウェア環境

| 項目 | 情報 | 備考 |
| — | — | — |
| PHP バージョン | 7.4.11 | Homebrewを用いてこちらの方法で導入→[Mac HomebrewでPHPをインストールする](https://qiita.com/miriwo/items/cd54077aad7e139cf518) |
| Laravel バ

元記事を表示

初心者がdockerでphpの開発環境を整える#4 [レンタルサーバーでdockerが使えない?]

#レンタルサーバーでdockerが使えない?
前回、docker Composeを用いてphpを打てるだけのローカル開発環境を作りました。実はこの時、サーバーを借りて、docker Hubも使って環境を全て同じ状態にできるようにしたいと考えてたんです。
そして、学習用なので無料又は低額のレンタルサーバーを借りてデプロイ(公開)までしたいと思っていました。

結果から言いましょう。
##レンタルサーバーでdockerは使えません
なんでも、レンタルサーバーにdockerをダウンロードできないらしい
レンタルサーバー大手のLサーバーさん、Sサーバーさん、Xサーバーさんも全て同じ回答でした。
他のレンタルサーバーさんにも数社問い合わせてみたけど多分、同じ感じ。
~~難しいかもですが、自己責任で試してみれば? みたいな詐欺まがいな事言われたのは内緒~~
でもイニシャルであげた大手さんは返信早いし、回答も丁寧で好印象でした!
仕様的にレンタルサーバーは無理なのかな、残念…

##dockerが使えるサーバーは?
物理的なサーバーを借りるか、クラウドサーバーを借りるかだと思います。
というか、物理

元記事を表示

【PHP】三項演算子

知識を整理するための個人的な備忘録です。

#三項演算子の書き方
“`php:基本構文
(条件式) ? (真の式) : (偽の式);
“`
PHPの三項演算子では、条件式が`真`である場合と`偽`である場合の式を指定。
条件式が`真`である場合は`(真の式)`、`偽`である場合は`(偽の式)`の結果が式全体の値となる。

if文との違いとしては、if文のように条件によって処理が分岐するのではなく、結果によって`真の式`、`偽の式`を返す。

#使い方
“`php
= 0 ? print ‘numは0以上’ : print ‘numは0未満’;
“`
三項演算子を使ったこの式は、if文を使って次のように書き換えられる。

“`php = 0) {
echo ‘numは0以上’;
} else {
echo ‘numは0未満’;
}
“`
また、三項演算子の結果は**変数に代入**できる。

“`php
= 0 ? ‘numは0以上’ : ‘numは0

元記事を表示

『NHKニュース速報』を取得して表示する

#はじめに
この記事は、日本の公共放送NHKのニュース速報を取得し、PHPで表示する方法を掲載しています。
**過度な取得は、提供元のサーバに負荷をかけることとなりますので、絶対にしないでください。**
また、あくまで取得して表示するまでの方法を掲載しています。表示デザイン等は一切考慮しておりませんので、ご了承ください。

#仕組み
NHKのニュースサイト「NHK NEWS WEB」のバックグラウンドで動作している「sokuho_news.xml」にアクセスし、データを取得します。
その後、echoを使ってデータを表示します。

#ソースコード
“`php:BreakingNews.php

    report->line as $line): ?>

元記事を表示

初心者が躓くオブジェクト指向の理解方法とその使い方 【基礎】

オブジェクト指向とは概念である

そもそもオブジェクト指向とはどんなものなのか…

<オブジェクト指向(Object Oriented Programming : OOP)とは プログラムを手順ではなく、モノの作成と操作として見る考え方。オブジェクトとは「モノ」を意味する。

    オブジェクト指向を使うと…

  • プログラミングの全体像を把握しやすい
  • プログラミング全体の構造を把握でき、物をつくるイメージでプログラムを設計できる。

  • 分業や共同作業がとても捗る
  • 大きなプロジェクト(大人数)でも分業などとてもしやすい。

  • 改良や修正がとても簡単
  • 大部分が定義できていれば、改良も修正も小さな部分を増やしたり減らしたりするだけで一気に修正が可能。

クラス

クラスとは…オブジェクトを作るテンプレート(設計図)
クラスの中には変数や関数が含まれ、クラスを軸にオブジェクトを作っていく。
![image.png](https://qiita-image-store.

元記事を表示

OracleLinux8.3開発環境構築(php7.3)

VirtualBoxを使用してOracleLinux8.3+php7.3の開発環境を構築しました。
ゲストOSのIPは固定にしました。
#本記事の環境
ホストOS:Windows10 Pro 64bit 8GB
ゲストOS:ORACLE LINUX 8.3
Oracle VM VirtualBox:6.0.4
Apache:2.4.37
Tera Term:4.105
php:7.3(モジュール版)

#構築手順1(OracleLinux8インストールまで)
* 以下URLからOracleLinux8の最新のisoファイルをダウンロードする。
http://public-yum.oracle.com/oracle-linux-isos.html
※OracleLinux-R8-U3-x86_64-dvd.iso等
※ダウンロードは時間がかかります。

* VirtualBoxを起動し「新規」を選択する。

* 「名前とオペレーティングシステム」を以下のように選択し、「次へ」を選択する。
> * Name:任意
> * Machine Folder:変更しない
> * タイプ:L

元記事を表示

CentOS8.0開発環境構築(php7.2)

VirtualBoxを使用してCentOS8.0+php7.2の開発環境を構築しました。
ゲストOSのIPは固定にしました。
#本記事の環境
ホストOS:Windows10 Pro 64bit 16GB
ゲストOS:CentOS 8.0
Oracle VM VirtualBox:6.0.4
Apache:2.4.37
Tera Term:4.102
php:7.2

#構築手順1(CentOS8インストールまで)
* 以下でCentOS-8-x86_64-1905-dvd1.iso等をダウンロードする。
https://www.centos.org/download/
※ダウンロードは時間がかかります。
* VirtualBoxを起動し「新規」を選択する。

* 「名前とオペレーティングシステム」を以下のように選択し、「次へ」を選択する。
> * Name:任意
> * Machine Folder:変更しない
> * タイプ:Linux
> * バージョン:Red Hat (64-bit)

* メモリーサイズを2048MB(※任意)とし、「次へ」を選択する。

* 「仮

元記事を表示

cakephp newEntityでエラーがでる

“`hogecontroller.php
$notice = $this->Notices->newEntity();

$notice = $this->Notices->newEmptyEntity();
“`

これで解決!

公式
https://book.cakephp.org/4/ja/orm/saving-data.html

元記事を表示

【cakephp】icon付きボタンの作成

###cakephpでlinkボタンにiconを付けて実装したかったが、詰まったのでここに記載する

“`php4

“`

これでicon付きボタンが完成!!!

cssはごめんなさい。。

元記事を表示

*未完成の記事です

この記事は未完成です。
誤認のまま書いた記事なので参照しないでください

削除以外に非公開にすることができないので編集が終わるまでこのような状態になっています
ご了承ください

[お詫び] 僕が利用しているPCがmac book airのため、Windowsの操作感がお伝えできません。申し訳ございません。

本題に入りまして
前回の予告で「phpを動かしてみたい」と言ったな、あれは嘘だ。
と、ネタもここまでにしておいて、dockerの基礎であり、下絵になる部分のdocker imageの準備方法は(僕が調べた限りでは)3つもあって、どれもdocker使用時の方法として紹介されてるんですよ。
~~どの方法を選んでもdockerを準備できるんだから当たり前なんですが… ややこしい~~
今回はその3つの方法と簡単な紹介をしたいと思います。

#docker imageの準備しよう
docker: ![docker](http://cdn-ak.f.st-hatena.com/images/fotolife/p/portaltan/20150528/20150528170949.jpg “d

元記事を表示

PHPで文字列の中でハッシュタグから始まるワードを配列にして取り出す方法

“`php

元記事を表示

【Laravel】CSS/JavaScriptの読み込み

知識を整理するための個人的な備忘録です。

#方法
##CSS
`public/css`フォルダ内に`css`ファイルを作成。
`index.blade.php`ファイルで`index.css`ファイルを読み込む場合

“`php:index.blade.php “`
ヘルパーメソッドの`asset`は、作成したプロジェクトの`public`ディレクトリまでのパスを返してくれる関数ですので、`asset`を使うことで`public`フォルダの中身を自動的に判別してくれるという仕組みになっています。

“`php “`

##JavaScript
他にも方法はありますが、今回は`node.js`を使います。
まずは下記コマンドでインストール。

“`
$ npm install
“`
`resources/js/`内に任意のファイ

元記事を表示

CakePHPで2種類(会員/管理者)の認証を実装 [ Authentication ]

会員ページと管理者ページの認証を分ける実装を、Authenticationプラグインを使って行ってみました。

・会員ページは、Membersテーブルを参照し、emailとpasswordでログイン
・管理者ページは、Usersテーブルを参照し、usernameとpasswordでログイン

##1.teble作成

Membersテーブル
![スクリーンショット 2021-02-09 11.23.02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/52355/617915b2-d14e-dba8-6880-ee429294e1b2.png)

Usersテーブル
![スクリーンショット 2021-02-09 11.23.31.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/52355/57252d47-64bb-d5cd-e7e3-b954036b3d46.png)

##2.Authenticationプラグイン

元記事を表示

Phinxでwarning no environment specified, defaulting to: developmentが出る時の対処

## 結論
-eオプションで環境指定できたようです
https://book.cakephp.org/phinx/0/en/commands.html#the-migrate-command

“`
$ phinx migrate -e development
“`

当たり前すぎたのか情報が全然見つけられなくてハマったので一応…

元記事を表示

PHPの数値計算メソッドが物足りなかったため自作

#本記事の環境
ホストOS:Windows 10
ゲストOS:CentOS 7
VirtualBox + Vagrant
Tera Term
remiリポジトリ
php7.3

#前段:PHPの数値計算系メソッドとは?
PHPには四捨五入、切り上げ、切り下げのメソッドが存在します。
※四捨五入:round、切り上げ:ceil、切り下げ:floor

#要件1:数値の丸め方について
* 「四捨五入」「切り上げ」「切り下げ」と「切り捨て」がしたい。
* 有効桁数を指定したい。

###問題
* 他言語にある「切り捨て」がPHPにはなかった。
* roundは、有効桁数を指定できるが、ceilとfloorはできない。
※round([対象値], [有効桁数]);
  有効桁数:小数第一位が0、小数部はそこからインクリメント、
       整数部はデクリメント。
※ceil([対象値]);
※floor([対象値]);

###対処方法
* 「切り捨て」メソッドを作る。
* 有効桁数を指定できる「切り上げ:ceil」「切り下げ:floor」メソッド

元記事を表示

PHP 本格入門 ㊤

現場で本格的にPHPを書くことになったので、書籍をザッと読んで気になった箇所をまとめることにした。

![No Image](https://images-na.ssl-images-amazon.com/images/I/41zPn5lFAgL._SX394_BO1,204,203,200_.jpg)

#chapter 1 はじめてのPHP
+ WEBの基本的な仕組み
+ WEBクライアントとWEBサーバーの関係性
+ PHPの環境構築

などが記載されている。詳細は割愛。

#chapter 2 PHPの基本構文
####2-1-2 変数の命名規則
+ 変数名はスネークケース(アンダースコア)もしくは**キャメルケース**
+ 例) \$total_price, \$totalPrice
+ 近年一般的なのは後者のキャメルケース

####2-1-3 変数の値を出力する ー echo命令、print命令
+ 変数の値の出力は以下の通り

“`php:



`

元記事を表示

phpでdyld: Library not loaded: /usr/local/opt/openssl/lib/libcrypto.1.0.0.dylibが出た時の対処法

`brew switch openssl 1.0.2s`で直るという記事が多いが、2021年2月時点でのbrew(バージョン3.0.0)ではbrew switchコマンドは使えない

https://cmichel.io/how-to-install-an-old-package-version-with-brew/
を参考に1.0.2sのopensslをインストールして

phpを入れ直したら、直りました(`brew uninstall php`→`brew install php`)

元記事を表示

【PHP8】 PHP8技術者認定上級試験 ベータ試験を受けてきた

昔[PHP7技術者認定初級試験](https://qiita.com/rana_kualu/items/130fab56656c3e450d61)を受けて合格しましたが、先日それに引き続いて[PHP8技術者認定上級試験](https://www.phpexam.jp/2020/12/11/php8/)というものが発表されました。

> 一般社団法人BOSS-CON JAPAN(代表理事:吉政忠志、所在:東京都世田谷区、以下「BOSS-CON JAPAN」)は、BOSS-CON JAPAN内組織であるPHP技術者認定機構がPHP8技術者認定上級試験を2020年秋に実施することを発表しました。
> 本ベータ試験を2021年2月7日に東京で開催します。

このベータ試験を受けてきたのでその感想です。

# 試験内容

・問題数30問
・制限時間135分
・7割正解で上級、5割正解で準上級認定
・受験料金は税抜15000円、学割あり。
・β試験は5000円。合格認定は本試験と同じ。
・ほぼ3択。たまに4択があった。複数選べはなかった。

いきなり[公式](https://www.phpexa

元記事を表示

OTHERカテゴリの最新記事