| ページ一覧 | ブログ | twitter |  書式 | 書式(表) |

MyMemoWiki

PHP

提供: MyMemoWiki
2021年3月7日 (日) 15:53時点におけるPiroto (トーク | 投稿記録)による版 (→‎定数)
ナビゲーションに移動 検索に移動

| FuelPHP | XAMPP |

PHP

インストール

Ubuntuへのインストール

Apacheと同時にインストール

  1. $ sudo apt install php libapache2-mod-php

CentOSへのインストール

https://weblabo.oscasierra.net/centos7-php71-install/

  1. # yum -y install epel-release
  1. # yum -y install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
  2. # yum -y install httpd php74 php74-php
  3. # systemctl enable httpd.service
  4. # systemctl start httpd.service
  5. # vi /var/www/html/info.php
  6. <?php
  7. phpinfo();

phpMyAdmin

  1. $ sudo yum install php-mysqlnd

/etc/yum.repos.d/remi.repo に追記

  • emi リポジトリからインストールする必要のないパッケージが上書きされないよう限定
  1. [remi]
  2. :
  3. includepkgs=phpMyAdmin php-phpmyadmin-sql-parser php-phpmyadmin-motranslator php-phpseclib php-google-recaptcha php-twig-extensions php-symfony-polyfill php-samyoul-u2f-php-server php-pragmarx-google2fa
  1. sudo yum-config-manager --enable remi
  2. sudo yum install phpMyAdmin

phpMyAdmin のインストールが依存関係で失敗する場合PHPのバージョン全体の入れ直し

  1. yum info installed php*
  2. yum remove php*
  3. yum install -y --enablerepo=remi-php74 php php-gd php-intl php-json php-mysqlnd php-mbstring
  4. yum install -y --enablerepo=remi-php74 phpMyAdmin

/usr/share/phpMyAdmin/sql/create_tables.sql の編集

  • 以下コメントアウト
  1. --
  2. -- Privileges
  3. --
  4. -- (activate this statement if necessary)
  5. GRANT SELECT, INSERT, DELETE, UPDATE, ALTER ON `phpmyadmin`.* TO
  6. 'pma'@localhost;

MySQL

  • ログイン
  1. # mysql -u root -p
  2. mysql> create user 'pma'@'localhost' identified by 'パスワード'
  3. mysql> source /usr/share/phpMyAdmin/sql/create_tables.sql

Httpd

  • /etc/httpd/conf.d/phpMyAdmin.conf
    • どこからでもアクセス可能にするには、Reuire all granted

0957 phpmyadmin01.png

Composer

  • https://getcomposer.org/
  • PHPプログラミング言語向けのソフトウェアおよび必要なライブラリの依存関係を管理する標準形式を提供するアプリケーションレベルのパッケージ管理システム*
  • composer.jsonがあるディレクトリ上でcomposer installとするだけで、依存しているライブラリを取得。
  • composer.lockはcomposer.jsonにあるライブラリを取得するのに、実際にどのファイルを入手したかをまとめたもの

PHP Archive (PHAR)

必要な依存コンポーネントがすべて (オプションのコンポーネントの一部も含めて) ひとつのファイルにまとめられています。

PHPUnit

マニュアル

  • HPプログラミング言語用の単体テストを行うためのフレームワークである。 SUnitを起源としてJUnitで一般的になった、xUnitの設計を元にした単体テストのフレームワーク
  • PHPUnitはプロジェクト単位でローカルな依存として管理すべき
  • Composerを使っているならそのプロジェクトで必要とするPHPUnitのバージョンを composer.json に書く

Composerを利用したインストール

  • composer.json に追記
  • composer update でインストール
  1. $ php composer.phar require --dev phpunit/phpunit 9.3
  • composer.json の追記内容
  1. $ git diff composer.json
  2. diff --git a/composer.json b/composer.json
  3. index 61a9404..e7a9b8a 100644
  4. --- a/composer.json
  5. +++ b/composer.json
  6. @@ -16,7 +16,8 @@
  7. "fuelphp/upload": "2.0.6"
  8. },
  9. "require-dev": {
  10. - "fuel/docs": "1.8.*"
  11. + "fuel/docs": "1.8.*",
  12. + "phpunit/phpunit": "9.3"
  13. },
  14. "suggest": {
  15. "dwoo/dwoo" : "Allow Dwoo templating with the Parser package",
  • version確認
  1. $ fuel/vendor/bin/phpunit --version
  2. PHPUnit 9.3.0 by Sebastian Bergmann and contributors.

oilコマンドから利用可能にする

  1. $ cp fuel/packages/oil/config/oil.php fuel/app/config/
  2. $ vi fuel/app/config/oil.php
  3. :
  4. 'autoload_path' => 'PHPUnit/Autoload.php' ,
  5. 'binary_path' => VENDORPATH.'bin/phpunit' ,

プログラミング

基本


  • <?php 〜 ?> に処理を記述
  • 文末はセミコロン
  • 命令文の大文字小文字は区別しない
  • コメント
    • 単一行: // , #
    • 複数行: /* 〜 */

変数


  • $名前形式
  • 名前の先頭は英字か_
  • 大文字/小文字は区別される

可変変数


  • 先頭に$を2つ重ねることで、変数の内容を変数名によって決定する
  • 可変部分を{}で括ることもできる
  1. <?php
  2. $name = 'yagi';
  3. $age = 49;
  4.  
  5. $x = 'name';
  6. echo $$x;
  7. $x = 'age';
  8. echo ${$x};
  9. ?>
  • 結果
  1. yagi49

定数


  • const 定数名 = 値
  • 先頭に$は不要
  • 全て大文字で命名