・XMLの読み込み2
以前、XMLファイルの読み込み関数をご紹介いたしましたが、今回はもっと簡単な
読み込み方法をご紹介いたします。
さっそく、サンプルです。まずはXMLファイルの中身が以下のような場合です。
▼サンプル----------------------------
<?xml version="1.0" encoding="UTF-8"?>
<books>
<book>
<title>テキスト1</title>
<author>テスト1</author>
</book>
<book>
<title>テキスト2</title>
<author>テスト2</author>
</book>
<book>
<title>テキスト3</title>
<author>テスト3</author>
</book>
</books>
▲------------------------------------
ファイル名はtext.xmlとします。読み込みは以下のようにします。
▼サンプル----------------------------
//XMLクラス
require_once("XML/Unserializer.php");
$base_url = "test.xml";
$xmldoc = join("",file($base_url));
$opt = array (
'complexType' => 'object',
'parseAttributes' => 'true',
'attribuesArray' => '_attributes',
);
$data = new XML_Unserializer($opt);
$data->unserialize($xmldoc, false);
$xml = $data->getUnserializedData();
for ($i = 0; $i < count($xml->book); $i++) {
print $xml->book[$i]->title . "<br>";
print $xml->book[$i]->author . "<br>";
}
▲------------------------------------
とりあえず、最後に出力していますが、これだけでXMLの中身をクラスに取得し、
取り出すことができます。
XMLのタグ名が、そのまま変数名として取得できます。属性も同じように変数名で
取得できます。
Unserializer.phpファイル内で、Parser.phpをインクルードしていますので、この
2つのライブラリが必要です。
多くのサーバでは、PHPエンジンに最初から含まれていますが、ない場合は、どこか
から持ってきて、クラスをインクルードすれば使用できます。
・PDF作成
今回は、PHPで簡単にPDF出力する方法をご紹介いたします。
HTMLタグで画面出力したものを、PDFで出力するというものです。
ここでは、TCPDFというPHP用ライブラリを使用します。
ライブラリをダウンロードしてインクルードすれば使用できますので、
インストールやサーバの設定変更などの面倒な処理は不要です。
さっそく、サンプルです。
▼サンプル----------------------------
//TCPDFライブラリ読み込み
require_once('tcpdf_php4/config/lang/eng.php');
require_once('tcpdf_php4/tcpdf.php');
//TCPDFオブジェクト生成
$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true);
//フォントを設定
$pdf->setFont("ipamp", "", 8);
//1ページ目追加
$pdf->AddPage();
//HTMLの作成
$html = "
<html>
<head>
</head>
<body>
ここに中身を記述
</body>
</html>
";
$pdf->writeHTML($html, true, 0, true, 0);
//1ページ目終了
$pdf->lastPage();
//PDF出力
$pdf->Output("PDFテスト", "I");
▲------------------------------------
TCPDFについては、検索してダウンロードしておいてください。
これだけでHTMLをPDFで出力できます。
TCPDFは、もちろんこれだけでなく、フォントの変更、文字の大きさや色の変更、
レイアウト変更、画像表示など、いろいろと自由にPDF出力ができます。
日本語が文字化けする場合は、フォントのインストールが必要になります。
上記サンプルでは、ipampというフォントを入れています。
また、注意点として、単独で使用するHTMLタグで、<br>のようなタグを書き方を
すると、エラーとなってしまいます。XML標準の<br />という記述をしなければ
なりません。
また、現在の最新バージョンでもvalignの指定ができませんので、HTMLのみで
作成している場合は、自分で調整する必要があります。ご注意ください。
あと、PHPエンジンのバージョンが古いと、真っ白なPDFが出力されることもある
ようです。その場合は、PHPのバージョンをアップするしかありません。
詳細は、マニュアルを参照してください。
・iPhoneメモ
今回は、iPhone向けWEBサイトで役に立つPHPやHTMLを色々とご紹介します。
私がメモしていたものを、ほぼそのまま書きますので、あまりまとまっていません。
分からない場合は、ご自分でネットなどで調べていただければと思います。
・iPhoneでのアイコン画像を指定
<rel="apple-touch-icon" href="images/template/engage.png"/>
・PHPでiPhoneもしくはiPod Touchを判定
if(strstr($_SERVER['HTTP_USER_AGENT'],'iPhone') || strstr($_SERVER['HTTP_USER_AGENT'],'iPod')) {
header('Location: http://yoursite.com/iphone');
exit();
}
・iPhone用のCSSを指定
@media screen and (max-device-width: 480px){
/* All iPhone only CSS goes here */
}
・電話やSMS用のタグを発行
<a href="tel:12345678900">Call me</a>
<a href="sms:12345678900">Send me a text</a>
・サイズの最適化
<meta name="viewport" content="width=device-width; initial-scale=1.0;">
|