[メモ]PHP8.3.xでlibxlを使えるようにする

かなり久しぶりです。。
PHP8.3.xでlibxlのphpのextension(excel.so)が上手く入らないというのがあって、少し調べて入るようになった時のメモです。

curl -O https://www.libxl.com/download/libxl-lin-4.2.0.tar.gz
tar zxvf libxl-lin-4.2.0.tar.gz
git clone -b php7_with_pulls https://github.com/Jan-E/php_excel.git php_excel_php7_with_pulls
cd ./php_excel_php7_with_pulls
phpize
./configure --with-libxl-incdir=../libxl-4.2.0/include_c --with-libxl-libdir=../libxl-4.2.0/lib64
make
make install

早くphp8以上でも正しく入るようになって欲しい・・・

スポンサーリンク

[メモ]CentOS6にPHP8.1.xをいれる[覚書]

おひさしぶりです。

PHP7.4.10をいれてからのPHP8.1.2のインストール
主にやったこと
libxml2のバージョン2.9.12を別にinstallしてそれを使うようにした。

結局PKG_CONFIG_PATHは、以下のようにしてconfigureを実行
PKG_CONFIG_PATH=:/usr/local/lib/sqlite-3.33.0/lib/pkgconfig:/usr/local/lib/oniguruma-6.9.5/lib/pkgconfig:/usr/local/openssl/1_1_1h/lib/pkgconfig:/usr/local/lib/pkgconfig:/usr/local/libxml2/2_9_12/lib/pkgconfig

libxml2.9.12を入れるときにzlib1.2.11を利用してconfigureを実行
./configure --prefix=/usr/local/libxml2/2_9_12 --with-zlib=/usr/local

スポンサーリンク

[memo]uuidv4生成クラス[メモ]

連日投稿でっす。
某Apiでuuidv4を推奨ってことで、uuidv4の生成クラスをメモっておきます。

class Uuid
{
    public static function v4() {
        return sprintf('%04x%04x-%04x-%04x-%04x-%04x%04x%04x',
            // 32 bits for "time_low"
            mt_rand(0, 0xffff), mt_rand(0, 0xffff),

            // 16 bits for "time_mid"
            mt_rand(0, 0xffff),

            // 16 bits for "time_hi_and_version",
            // four most significant bits holds version number 4
            mt_rand(0, 0x0fff) | 0x4000,

            // 16 bits, 8 bits for "clk_seq_hi_res",
            // 8 bits for "clk_seq_low",
            // two most significant bits holds zero and one for variant DCE1.1
            mt_rand(0, 0x3fff) | 0x8000,

            // 48 bits for "node"
            mt_rand(0, 0xffff), mt_rand(0, 0xffff), mt_rand(0, 0xffff)
        );
    }
}

何気にこちらの記述のメソッドを500万回ループし重複しないか配列にいれて確認したところ。。
1.6秒くらいで実行がおわりました。
メモリ使用量は1.8G
結局重複はしなかったです。

他にも上記以外の書き方をしている方のコードで100万ループしてみましたが
53秒くらいかかり
メモリは100Mくらいだったと思います。
こちらも重複はしなかったです。
※500万やろうと思ったけど実行時間考えてもういいかなって思ってやらなかった。。

スポンサーリンク