Web言語のお勉強~ど素人が往く~

かつてVB6を1年くらい触った事があるだけのど素人がWeb言語に挑戦します。勉強結果を随時発表します。

Google Feed APIが復活している?

あれ?動いてる?

昨日は朝から「Google Feed API」が止まった影響で、RSS読込関連のサービスが軒並み影響を受けました(>_<)

ですが今朝になって改めて見てみると・・・

f:id:MoneyReport:20151204075604j:plain

「あわせて読みたいG」ウィジェットが動いてる!

もしや!?

f:id:MoneyReport:20151204075629j:plain

「カスタム相互RSS」すらも動いている!

出虹 (id:idenizi) さん良かったですね(^-^)w

「Google Feed API」がエラーを返したのはたまたまだったのかもしれません・・・。
昨日一日エラーを返していて、現在復旧したという事になるんでしょうかね?

うむむ。

池田仮名 (id:bulldra) さんにすぐに対応して頂いたのに、「実は対応不要だったかも?」なんて言える状況ではないような・・・。

bulldra.hatenablog.com

でも一応お知らせまで(^^;

その後の情報

昨日のエラーに付いては下記サイトが詳しく追ってくれているのでご紹介させて頂きます。

2015/12/03の1日だけの「たまたまのエラー」だと良いのですが(^^;

Twitterの検索機能が使えなくなっていますね(^^;

あれ?

今、メインブログの今日の記事のツイート数をチェックしてみたんですよ。

f:id:MoneyReport:20151114231341j:plain

ツイートの数字の所をクリックすれば、ツイッターで言及してくれた内容が分かるじゃないですか。
ところが2015/11/14 23:10頃に実行してみると・・・

f:id:MoneyReport:20151114231451j:plain

ほへ?
なんだこの画面は?
始めてみました(^-^;

書いてある内容をメモしておくと下記の様になっています。

技術的な問題が発生しています。
ご迷惑をお掛けしております。


العربية Dansk Deutsch English English UK Español فارسی Suomi Filipino Français עִבְרִית हिन्दी Magyar Bahasa Indonesia Italiano 日本語 한국어 Bahasa Melayu Nederlands Norsk Polski Português Русский Svenska ภาษาไทย Türkçe 简体中文


© 2015 Twitter About Help Status

言語表記が「どれほどツイッターが世界中で使われているのか」を表していますね(^o^;
凄い。

Twitter検索?

普通に自分のTwitterページとかは見られるので、現在使えないのはツイート検索機能の様ですね。

試しにTwitterの検索窓に「マネー報道」と入力して虫眼鏡をクリックしてみましょう。

f:id:MoneyReport:20151114232418j:plain

すると・・・

f:id:MoneyReport:20151114231451j:plain

ババン!
やはり「技術的な問題が発生している」との事。
世界中で24時間365日運用されているシステムのメンテナンスはシャレになりませんね~、やっぱり(^o^;
Twitter社の技術者の方達の苦労が忍ばれます(-_-;

PHPのお勉強「SQLiteを使ってみるも、『could not find driver』エラーで動かず・・・」

SQLite

仕事でSQLiteを使う場面が出てきた。
勿論、本番環境ではなくて開発環境で軽く動作検証するのに使うだけではあるのだが。

というか

「SQLiteって何?」

というのが正直なところ。
調べたところ下記の様なものを指すらしい。

SQLite
SQLite(エスキューライト、エスキューエライト)は、パブリックドメインの軽量な関係データベース管理システム (RDBMS) である。


概要
サーバとしてではなくアプリケーションに組み込んで利用される軽量のデータベースである。 一般的なRDBMSに比べて大規模な仕事には不向きだが、中小規模ならば速度に遜色はない。 また、APIは単純にライブラリを呼び出すだけであり、データの保存に単一のファイルのみを使用することが特徴である。バージョン3.3.8からは全文検索のFTS1モジュールがサポートされた。その後 FTS2 - FTS3 と強化を続けバージョン3.7.4からはFTS4モジュールがサポートされている。


SQLite - Wikipedia

ふむふむ。
DBサーバーを立てなくてもファイルで簡易的にRDBMSを利用できる様にしてくれる物らしい。
これは便利かも。

で、PDOを使ってみると・・・

<?php
    $dbh = new PDO("sqllite:hogedb");
?>

パスも合っているし、php.iniの設定も確認したが
下記のslqite関連のdllは読み込んでくれているようだ。

extension=php_pdo_sqlite.dll
extension=php_sqlite3.dll

phpinfoメソッドも読んで動作を確認した。

phpinfo();

動いているように見える。

f:id:MoneyReport:20150922143838j:plain

だのに何故か実行すると・・・

could not find driver

のエラーが吐き出されるばかり(-_-;
何故だ何がいけない(@o@)

ケアレスミス

色々とやっている中で、気が付いた・・・

sqllite・・・

SQL LITEになってる(`_`)

Lが2個になっている・・・。

綴りを「sqlite」に直すと・・・

<?php
    $dbh = new PDO("sqlite:hogedb");
?>

動いたーーーー!!!!

単純ミスでお恥ずかしや(^O^;

SQLite入門 第2版

SQLite入門 第2版

追記

SQLiteってカラムに型を持ってないの!?
DateTime型のカラムに「NOW()」ってクエリで指定したら怒られた(>_<)

SQLiteにはデータ型がないので、日付を扱うときには注意が要ります。


あと、SQLiteで現在の時刻を取得する場合


select datetime('now');


と実行するのですが、現在の時刻からマイナス9時間された値が返ってきます。
ロケールがうまくあっていないようなので、これを使って時刻を表示する場合は、以下のように実行して、9時間プラスします。


select datetime('now' ,'+09:00:00');


SQLiteで日付を扱うときに注意すること - public static void main

追記2

そういえば、SQLiteってユーザー名とパスワードがいらないんですね~。

SQLiteへの接続
PDOでSQLiteへ接続するには以下のようなDSNを指定し、PDOオブジェクトのインスタンスを生成します。


$dsn = 'sqlite:c:\test\sqlite.db';
$db = new PDO($dsn);


上記のように第一引数に指定するDSNは、
「sqlite:DBフルパス」
という表記で記載します。
SQLiteにはユーザやパスワードの設定がないので、PDOオブジェクトを生成する際には、
第二、第三引数は必要ありません。
PDO接続(SQLite,MySQL) | PHP入門~bituse~