<?xml version="1.0" encoding="utf-8" ?>
<feed version="0.3" xml:lang="utf-8" xmlns="http://purl.org/atom/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/">
	<title>ＰＨＰと寝た男</title>
	<link rel="alternate" type="text/html" href="http://djred.blog.shinobi.jp/"/>
	<modified>2008-06-25T02:08:06+09:00</modified>
	<author><name>赤い人</name></author>
	<tagline>Web programing 初心者が試行錯誤しているのを遠くからみる感じ
</tagline>

	<entry>
		<title>MySQLの文字コード</title>
		<link rel="alternate" type="text/html" href="http://djred.blog.shinobi.jp/Entry/403/" />
		<id>http://djred.blog.shinobi.jp/Entry/403/</id>
		<issued>2012-05-04T05:16:24+09:00</issued> 
		<modified>2012-05-04T05:16:24+09:00</modified> 
		<created>2012-05-04T05:16:24+09:00</created> 
		<author>
			<name>赤い人</name>
		 </author>
		<dc:subject>Tips</dc:subject>
		<content mode="escaped" type="text/html" xml:lang="utf-8"> 
			<![CDATA[文字化け怖い。<br />
<br />
ＩＮＳＥＲＴやＵＰＤＡＴＥはもちろん、ＳＥＬＥＣＴする前にも<br />
<br />
$res = mysql_query(&quot;SET CHARACTER SET UJIS&quot;);
<div>
	<br />
	やっとかないと簡単に文字化けする。<br />
	もちろん、ＤＢのキャラセットの指定はして、それと同じキャラセットを指定する事。<br />
	<br />
	大喜利ＰＨＰの内部エンコーディングはＥＵＣ－ＪＰなのでＵＪＩＳにした。<br />
	世間的にはＵＴＦ－８が主流だとか。<br />
	<br />
	最初にＰＨＰ入門！的なサイトでＥＵＣで書けってかいてあったからＥＵＣにしたんだけどなぁ。</div>
]]> 
		</content>
	</entry>
	<entry>
		<title>変数</title>
		<link rel="alternate" type="text/html" href="http://djred.blog.shinobi.jp/Entry/402/" />
		<id>http://djred.blog.shinobi.jp/Entry/402/</id>
		<issued>2012-05-04T01:06:40+09:00</issued> 
		<modified>2012-05-04T01:06:40+09:00</modified> 
		<created>2012-05-04T01:06:40+09:00</created> 
		<author>
			<name>赤い人</name>
		 </author>
		<dc:subject>Tips</dc:subject>
		<content mode="escaped" type="text/html" xml:lang="utf-8"> 
			<![CDATA[$a = &quot;aa&quot;;<br />
<br />
$a[0] = $a;<br />
<br />
<br />
これだとダメ。あたりまえだけど３０分悩んだ。<br />
配列になってる変数名とふつうの変数名をなんで別物と思い込んでいたか不明。]]> 
		</content>
	</entry>
	<entry>
		<title>ＰＨＰのroundの不思議</title>
		<link rel="alternate" type="text/html" href="http://djred.blog.shinobi.jp/Entry/401/" />
		<id>http://djred.blog.shinobi.jp/Entry/401/</id>
		<issued>2012-05-02T13:00:21+09:00</issued> 
		<modified>2012-05-02T13:00:21+09:00</modified> 
		<created>2012-05-02T13:00:21+09:00</created> 
		<author>
			<name>赤い人</name>
		 </author>
		<dc:subject>未選択</dc:subject>
		<content mode="escaped" type="text/html" xml:lang="utf-8"> 
			<![CDATA[76/30の結果2.53333...<br />
をroundして2.53にして、100をかけて253にしたものをintvalすると252になる。<br />
<br />
+---+---+---+---+---+---+<br />
<br />
個人データ集計でずっと言われていた「特定の得票率がでない」という現象。<br />
そんなわけないだろってソースを見もしなかったし、個人データ集計を期ごとにソースをみたけど特に間違ってもいない。<br />
が、結果が確かにおかしい。今は直ってます。<br />
<br />
問題は、どうやって直したかを覚えてない。<br />
<br />
]]> 
		</content>
	</entry>
	<entry>
		<title>文字列の最後に特定の文字が入っていたら</title>
		<link rel="alternate" type="text/html" href="http://djred.blog.shinobi.jp/Entry/400/" />
		<id>http://djred.blog.shinobi.jp/Entry/400/</id>
		<issued>2012-05-02T11:02:02+09:00</issued> 
		<modified>2012-05-02T11:02:02+09:00</modified> 
		<created>2012-05-02T11:02:02+09:00</created> 
		<author>
			<name>赤い人</name>
		 </author>
		<dc:subject>Tips</dc:subject>
		<content mode="escaped" type="text/html" xml:lang="utf-8"> 
			<![CDATA[今回は名前の最後に]が入っていたら。<br />
<br />
ソース<br />
<br />
$a = &quot;赤い人&quot;;<br />
$b = &quot;青い人]&quot;;<br />
<br />
<div>
	$mes=&quot;NG&quot;;<br />
	$moji_length = mb_strlen($a) - 1;</div>
<div>
	$final_moji = mb_substr($a,$moji_length,1);</div>
<div>
	if ($final_moji==&quot;]&quot;) $mes=&quot;OK&quot;;</div>
<div>
	echo $a.&quot;：&quot;.$mes;<br />
	<br />
	echo &#39;&lt;br&gt;&#39;;<br />
	<br />
	$mes=&quot;NG&quot;;<br />
	<div>
		$moji_length = mb_strlen($b) - 1;</div>
	<div>
		$final_moji = mb_substr($b,$moji_length,1);</div>
	<div>
		<div>
			if ($final_moji==&quot;]&quot;) $mes=&quot;OK&quot;;</div>
		<div>
			echo $b.&quot;；&quot;.$mes;</div>
	</div>
</div>
<br />
結果<br />
<br />
赤い人：NG<br />
青い人]：OK<br />
<br />
<br />
mb_strlenは内部エンコーディングと出力文字コードが違うときは文字コード指定しないとおかしなふうになるっぽい。<br />
実際大喜利ＰＨＰでも文字制限チェックもおかしな風になったまんま。文字コード指定してるんだけどなぁ。<br />
<br />
+--+--+--+--+--+--+<br />
<br />
６０００件近くになっていた個人データはＲＤＢじゃなくシーケンシャルなので件数が増えれば増えるだけパフォーマンスの低下になるのでこの対応をしたんだけど、いまいち性能は改善してなかった。この個人データの集計を今後もやるのであればそろそろ本気でMySQLを入れなければ存続は難しいですね。<br />
]]> 
		</content>
	</entry>
</feed>
