PHP7でGDを使う
ネットサーフィンしていたらPHPで画像を表示を試してるHPがあったので自分も試してみた
毎回、yumの仕方を探してる・・・
また、あちこちさがさないで済むようにメモしておく
GDのインストール
[vagrant@localhost ~]$ sudo yum -y install php-gd.x86_64 --enablerepo=remi-php70 Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: ftp.riken.jp * epel: ftp.riken.jp * extras: ftp.riken.jp * remi-php70: mirrors.mediatemple.net * remi-safe: mirrors.mediatemple.net * updates: ftp.riken.jp Resolving Dependencies --> Running transaction check ---> Package php-gd.x86_64 0:7.0.18-1.el7.remi will be installed --> Processing Dependency: gd-last(x86-64) >= 2.1.1 for package: php-gd-7.0.18-1.el7.remi.x86_64 --> Processing Dependency: libgd.so.3()(64bit) for package: php-gd-7.0.18-1.el7.remi.x86_64 --> Running transaction check ---> Package gd-last.x86_64 0:2.2.4-1.el7.remi will be installed --> Finished Dependency Resolution Dependencies Resolved ============================================================================================================================================================== Package Arch Version Repository Size ============================================================================================================================================================== Installing: php-gd x86_64 7.0.18-1.el7.remi remi-php70 69 k Installing for dependencies: gd-last x86_64 2.2.4-1.el7.remi remi-safe 131 k Transaction Summary ============================================================================================================================================================== Install 1 Package (+1 Dependent package) Total download size: 200 k Installed size: 606 k Downloading packages: (1/2): php-gd-7.0.18-1.el7.remi.x86_64.rpm | 69 kB 00:00:00 (2/2): gd-last-2.2.4-1.el7.remi.x86_64.rpm | 131 kB 00:00:00 -------------------------------------------------------------------------------------------------------------------------------------------------------------- Total 301 kB/s | 200 kB 00:00:00 Running transaction check Running transaction test Transaction test succeeded Running transaction Installing : gd-last-2.2.4-1.el7.remi.x86_64 1/2 Installing : php-gd-7.0.18-1.el7.remi.x86_64 2/2 Verifying : php-gd-7.0.18-1.el7.remi.x86_64 1/2 Verifying : gd-last-2.2.4-1.el7.remi.x86_64 2/2 Installed: php-gd.x86_64 0:7.0.18-1.el7.remi Dependency Installed: gd-last.x86_64 0:2.2.4-1.el7.remi Complete!
[vagrant@localhost ~]$sudo systemctl restart httpd
GDのインストールの確認
[vagrant@localhost ~]$ yum list installed | grep gd gd-last.x86_64 2.2.4-1.el7.remi @remi-safe gdbm.x86_64 1.10-8.el7 @anaconda php-gd.x86_64 7.0.18-1.el7.remi @remi-php70
phpinfoでの確認
GD SupportがenableになっていればOK
簡単なサンプルを試す
imagecreatetruecolorで高さ、幅を指定してイメージの作成をする
imagecolorallocateで上で作ったイメージと色を指定して色IDを取得する
ImageFilledRectangleで指定した範囲を色IDで塗りつぶす
<?php $img = imagecreatetruecolor(100,100); $white = imagecolorallocate($img, 0xF0, 0xF0, 0xF0); ImageFilledRectangle($img, 10,10, 20,20, $white); header('Content-type: image/png'); imagepng($img); imagedestroy($img); ?>
うまく表示できれば黒色の四角の中に10,10の白色の四角が表示される