Qiitaのfeedを取得して表示するだけのコード。 #php

2022.11.05

Logging

おはようございます、土曜日の朝ですね😗。

今日は文化の日にQiitaにUPしたfeedを取得して表示するだけのコードを書きました。見た目はこんな感じでQiitaの雰囲気を取り入れたデザインにしています。デモ版として実際にサーバーで起動しているモノです、feedを取得しているユーザーは自分を入れて3人です。

表示する人数が多くなるとページを描画する時間が遅くなるので実質、10人が限度かも知れないです。もし何人ものユーザーを取得したいと考えている方は表示部分と処理部分を別けて、尚且つ処理部分は非同期処理で変更することを推奨します。

尚、明日には2つに別けたプログラムコードを別記事として記載しますので、しばしお待ち下さいませ🙇。

今回のソースコードはこんな感じになってます。

<?php
    function get_Qiitafeed(string $feedUrl){
        $xml = @simplexml_load_file($feedUrl);
        if(isset($xml->entry)){
            print("<ul class='qiita_feed-list'>");
            foreach($xml->entry as $key=>$val){
                print("<li><a href='{$val->url}'>".$val->title."</a></li>");
            }
            print("</ul>");
        }
    }
?>
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<meta name="Description" content="Enter your description here"/>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.6.0/css/bootstrap.min.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css">
<style>
    .qiita_feed-list > li{
        /* font-weight: bold; */
        color:aliceblue;
    }
    .qiita_feed-list > li > a{
        color:aliceblue;
    }
    body{
        background-color:#60b111;
    }
    .shadow-lg {
        box-shadow: 0 1rem 3rem rgba(255,255,255,.195)!important;
    }    
</style>
<title>Qiita-feed</title>
<?php
    require $_SERVER['DOCUMENT_ROOT'] ."/header_script.php";
?>
</head>
<body>
    <div class="container">
        <div class="row">
            <div class="col-12">
                <h1 class="text-light">Qiita-feed</h1>
            </div>
        </div>
    </div>
    <div class="container mt-2">
        <?php
            $Id_List = ["taoka-toshiaki","mpyw","suin"];
            foreach ($Id_List as $key => $id) {
            ?>
        <div class="row shadow-lg p-3 mb-5 bg-body rounded">
            <div class="col-12">
                🌿<span class="text-light">://qiita.com/<?=$id?>/feed :[引用]</span>
                <?=get_Qiitafeed("https://qiita.com/".$id."/feed")?>
            </div>
        </div>            
            <?php
            }
        ?>
        Copyright <?=date("Y")?>  <a href="https://358tool.com">358tool.com</a>
    </div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.1/umd/popper.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.6.0/js/bootstrap.min.js"></script>
</body>
</html>

タグ

10, 2, , feed, feedUrl, function, GET, lt, php, qiita, Qiitafeed, string, UP, お待ち, コード, こと, サーバー, ソース, デザイン, デモ版, プログラム, ページ, もの, ユーザー, 人数, 今回, 今日, 何人, 処理, 別記事, 取得, 同期, 土曜日, 変更, 実質, 実際, 感じ, 推奨, 描画, 文化の日, , 明日, 時間, , 自分, 表示, 見た目, 記載, 起動, 部分, 限度, 雰囲気,

某抽選でプレイステーション5購入権に応募しました。

2022.05.21

Logging

おはようございます、梅雨になるとお家から出たくない人もいると思います。

そんな中、自分は某抽選でプレイステーション5購入権に応募しました。結果、抽選が決まれば購入するつもりでいますので、それまでしばしお待ち下さい。たぶん、抽選すると思っています…😂。

Play Like Never Before | PS5

ファイナルファンタジー7リメイクもそろそろ終盤なのです。発売されてから一年は経過していると思いますが、時間の合間合間にプレイしているのでこういう感じになります。クリアしたらファイナルファンタジー7リメイク インターグレードを購入するつもりです。そのためにはPS5が必要www。これをクリアする頃にはFF16が発売されているだろうと思います。

FINAL FANTASY VII REMAKE INTERGRADE – PS5 Announcement Trailer

あとPS5VRも発売されたら購入し今あるVRは売るつもりでいます。ケーブル一本になるのはとても良いことです。いまのVRは配線がごちゃごちゃしていてプレイステーション周りがかなり大変なことになっていますので…😭。

タグ

16, 5, 7, FF, PS, Vr, www, あと, いま, インター, お家, お待ち, かなり, クリア, グレード, ケーブル, こと, これ, ため, つもり, ファイナルファンタジー, ファイナルファンタジー7, プレイ, プレイステーション, リメイク, , , , , 合間, 周り, 大変, 必要, 応募, 感じ, 抽選, 時間, 梅雨, 発売, 終盤, 経過, 結果, 自分, 購入, 配線, ,

今頃になってdocker(ドッカー)を勉強していたりしている。

2022.04.30

Logging

おはよう御座います。4月も今日が最後になってしまいました。

皆さんGW(ゴールデンウィーク)は何処か行きますか?、自分はしれっと仕事しているかも知れません。明日は休みですが・・・。

さて、今頃になってdocker(ドッカー)を勉強していたりしてします。dockerとはなんぞやという人はエンジニアでは恐らくないと思います😭。知らない方はググってくださいな。

今までdockerなんて使わなかった、バーチャルボックスがあれば何でも出来ると今でも思っていますが、まぁ一応、dockerも触らないといけないなとか思いましてdockerを始めました。

dockerでイメージを作ってdocker Hubで公開しようと思います。公開する内容は、PHP5系から8系までの環境を構築出来る提供するつもりです。

公開したら追記としてURLを記載しますので、しばしお待ち下さい。来月の半ばまでには構築出来る環境を提供するつもりです。

尚、dockerのCUIなどの操作方法はこちらを参照すると良いですよ。

追記出来ました(5月を待たずして):https://hub.docker.com/r/zip358com/rockylinux-php-56-81-apache

docker pull zip358com/rockylinux-php-56-81-apache
docker run -d -p 80:80 --privileged --name 任意のコンテナ名 zip358com/rockylinux-php-56-81-apache /sbin/init

cgi-binを見てください。PHP5.6からPHP8.1まであります😌。

Apacheの設定、php-cgiを使用する方法はこんな感じです😀

<Directory "/var/www/cgi-bin">
    AllowOverride All
    Options FollowSymLinks
    Order allow,deny
    Allow from all
</Directory>
Action php-cgi-7.1.9 /cgi-bin/php-cgi-7.1.9
<Directory "/var/www/html/xxxx.site">
    Options +ExecCGI
    AddHandler php-cgi-7.1.9 .php .html
    AddType application/x-httpd-php .php
</Directory>

タグ

4, 5, 8, docker, GW, Hub, php, url, イメージ, エンジニア, お待ち, カー, ゴールデンウィーク, しれっと, つもり, バーチャル, ボックス, , , 今日, 今頃, 仕事, 休み, 公開, 内容, 勉強, 半ば, 提供, , 明日, 最後, 来月, 構築, 環境, 皆さん, 自分, 記載, 追記,

自分のサーバーが落ちる原因がわからないのでとりあえず。

2022.03.17

Logging

自分のサーバーが落ちる原因がわからないのでとりあえず。増強しましたがこれは良い対策ではないと思っています。原因は一応Netで調べましたが調べ方がナンセンスです。本当はログ解析してそこからネットでググるなどの方法を行って原因を追求しないといけない所、ネットで検索して安易にサーバーを増強するなんて、何の問題解決になっていません。

そんぐらい毎日、忙しいので自分のサーバーに関われません。休日以外は目まぐるしく一日が経過するので当分は自分のサーバーは落ちたりすると思いますが対策はお待ち下さいませ…。

このサーバーが落ちる件でGさんからは、お叱りを受けていてSEO的に良くないよと教えていただきました…。サーバーに負荷がかかり「504 Gateway Timeout」が発生していることは分かっているものの、どうしてそうなっているのかは未だにわからないままなんですね。

もしかしたら、ロシアとウクライナとの戦争に関係しているのかもしれないなって・・・。

タグ

504, Gateway, net, SEO, timeout, ウクライナ, お叱り, お待ち, こと, これ, サーバー, そこ, そん, ナンセンス, ネット, まま, ログ, ロシア, , , 休日, , 原因, 問題, 増強, 対策, 当分, 戦争, , 方法, 未だ, 本当, 検索, 毎日, 発生, , 経過, 自分, 解析, 解決, 調べ, 負荷, 追求, 関係,