カテゴリー
SugiBlog Webエンジニアのためのお役立ちTips

xml形式の文字列からxmlオブジェクトを生成する

$xmlstr = file_get_contents("[XMLファイル名]");
if(!$dom = domxml_open_mem($xmlstr))
{
    echo "Error while parsing the document\n";
    exit;
}
$root = $dom->document_element();
$childnodes = $root->child_nodes();
foreach ($childnodes as $value)
{
    $nodeArray[$value->tagname] = $value->get_content();
    $chnode = $value->child_nodes();

    foreach($chnode as $v)
    {
        echo $v->tagname . " : " . $v->get_content() . "<br />";
    }

    echo "<br />";
}
1,332 views

TCPで外部からの接続待ちうけをしているか調べる

以下のコマンドを実行

# netstat -tlpn

出力例)

0.0.0.0:3306 ~ LISTEN xxxx/mysqld

※netstatの-pオプションはroot権限のみ

1,632 views

PHPで外部サーバーの画像を取得・保存

php.iniがallow_url_fopen=Onになっていれば可能

// データを取得
$data = file_get_contents("http://URL/To/Filename", FILE_BINARY);
// データを任意の場所に保存
file_put_contents("/PATH/TO/FILENAME", $data);
5,423 views

ACCESSでMDBにファイル参照を組み込もうとして失敗

MSACCESSでMDBにファイル参照を組み込もうとした。
調べたら「Microsoft Office Access 2007 Runtime」をインストールするとできるということだったので、インストールした。
すると、MDBを最適化するため、新規作成しインポートすると「ファイルへのアクセスでエラーが発生しました。ネットワークへの接続が切断されている可能性があります。」というエラーメッセージが出て起動できなくなった。

「ツール」-「解析」-「データベース構造の解析」で調べたら、「未定義関数 ’IsNull’があります」とアラートが出た。

【原因】
調べた結果、VBE6.DLLが新しいバージョンになったことが原因のようだ。
【解決方法】
以下のフォルダー内にあるVBE6.DLLを削除してから、ACCESSを実行
するとOfficeを修復する。その際にVBE6.DLLが再作成され、本来入っていたバージョンに戻る
C:\Program Files\Common Files\Microsoft Shared\VBA\VBA6

ちなみにこの時は、バージョン「6.0.87.14」から「6.5.10.40」にアップデートされた。

5,510 views

クエリ式で数値の小数点以下切り捨て

小数点第2位で切り捨てしたいとき

Fix関数を使う
しかし、Fix関数は整数を返すので、値×(残したい小数点以下の桁数×10)の値をFixし、(残したい小数点以下の桁数×10)で割る

例)

fix(値*10)/10
7,371 views