【PHP】質問スレッド Part8
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
03/04/14 00:52ID:???http://www.php.net/
■日本 PHP ユーザ会
http://www.php.gr.jp/
■PHP マニュアル
http://www.php.net/manual/ja/
■PEAR マニュアル
http://pear.php.net/manual/ja/
過去スレ, 関連スレ及び注意事項等は、アフォが居なけりゃ >>2-4
.forwardなどからなら当然勝手に走るよ。普通ならcli版を使うことになると思うけどね。
imap,pop受信ならcronで定期的にまわしてやるしかないかな。タイムラグが生じるけど。
007570
03/04/22 15:57ID:qcHE+gS2cli版?
ググってきます。ほんと、ありが�d
あぁ、余計なこと書いたかな。別にcgi版でもいいよ。
いざとなりゃ、モジュール版でも... って、やったことないけどなぁ。
0077nobodyさん
03/04/24 21:05ID:???どうしてますか?
SSLはほとんど対応してないみたいだし
クッキーも対応してない場合が多いみ
たいだし、apacheの認証モジュールも
然りです。
今のところはPHPで認証して、URLに
セッションIDを埋め込むのが無難ですか?
パスワードを平文で流すのはかなり
不安なんですが。。
第一線で働いてるあなたに聞いてみました。
0078nobodyさん
03/04/26 01:46ID:cOpB+yiK第一線でもなんでもないけど、無難にセッションIDのhidden埋め込みかな。
>パスワードを平文で流す
まあ、セッション最初の一度だけだし。
ケータイで端末固有IDが使える機種・キャリアがもうちっとあっても良いと思うんだが。
ケータイで喜んで"インターネットする"輩に、プライバシーとかどうでもいいじゃん(暴論)
#流石に昔みたいに電話番号そのままはマズイけど。
0079nobodyさん
03/04/26 02:01ID:94JUYZ66紹介した人が紹介した人、つまり孫だな。
そいつが広告メールもらっても1円。 メールは大体毎日一通くらい。
つまりな、自分が10人に紹介する(登録させる)
↓
そいつらが10人ずつ紹介する(登録させる)
↓
つまり、自分の子供と孫が110人になる。 んで広告メールが送られるたびに110円。
しかも子供と孫は半永久的に増え続ける。
一つわかってほしい。それは…怪しくない!
孫以下は収入にならない→つまりネズミ講じゃない。
メールもらって現金返還。このシステム知ってるだろ?
それのおいしい話だよ。
んじゃ、ここから登録してくれ。がんがれ。
http://www.we-love.to/paid/index.pl?id=kura0613
0081nobodyさん
03/04/26 04:40ID:XP2ZIx8iceil(-2/3)
ってやると、普通0を返してくると思うんですが、なぜかあるサーバーが
-0って返してきやがるんです。
設定とかでなんとかなるものなんでしょうか?
0082nobodyさん
03/04/26 22:33ID:???pg_close関数は当然効きませんし。
どなたかご教授願えますと幸いです。
なお、環境は
OS:RedHat8.0
PHP:4.3.2
Postgres:7.3.1
です。
>ケータイで端末固有IDが使える機種・キャリアがもうちっとあっても良いと思うんだが。
使えないのってJ-PHONEだけじゃ?
AU/TUKAはサブスクライバID拾えるし、
DoCoMoもutn(製造番号のようなもの)拾える。
ただし、こちらは相手に確認メッセージがでて、
そこで送信OKにしないと流れてこない。
FOMAの場合は移動機本体、FOMAカードそれぞれの
utnがとれるので、認証に使っても問題なさそう。
// 端末情報拾うクラス作ったけど、会社に行かないとない(苦笑
>>81
PHPのバージョンは?
バージョンが違うなら同じ動作するとは限らない。
というか、-0と返るのがバグで修正された可能性が。
0084nobodyさん
03/04/27 01:07ID:???よく調べてみたら今の端末だと勝手サイトでも固有ID結構拾えるんだね。
ケータイ持ってないくせにiアプリは作ってるという香具師なんで
余りにも古い知識で喋っててスマン。(言葉の意味どおりの"香具師"だな)
因みにJ-PHONEもパケット対応機は拾えるみたいです。
http://www.dp.j-phone.com/jsky/user.html
私の常用しているH"は「pdxfrom」で拾えます。
0086nobodyさん
03/04/27 17:56ID:???もうひとふんばり♪
0087nobodyさん
03/04/28 19:31ID:???1バイトと2バイトの文字が混ざった動的な文字列$unkoから、
substr()を使って$unkoの頭をヘッドラインみたいに切り取りたいのですが、
$unko = "abcdあいうえお";
$unko = substr($unko, 0, 7);
みたいに2バイトのところで1バイトでカットしちゃうと文字化けみたいな感じになってしまうのですよね。
これを上手く文字数ごとでカットしたいんですが、何とかならないですかね?
マルチバイトの宿命なのかな(´・ω・`)
0088nobodyさん
03/04/28 19:47ID:???0089nobodyさん
03/04/28 19:55ID:???( ゚д゚)ポポカーン
mb_hogehoge()ってマルチバイト関数だったんですな(´・ω・`)
mb_strsub()でいとも簡単に解決しますた(´・ω・`)
ありがとうございました、、精進しまつ(´・ω・`)ノ
0090>>88>>89
03/04/28 20:02ID:???mb_substr()
だ
0091nobodyさん
03/04/30 13:17ID:???■本家
http://www.php.net/
■日本 PHP ユーザ会
http://www.php.gr.jp/
■PHP マニュアル
http://www.php.net/manual/ja/
■PEAR マニュアル
http://pear.php.net/manual/ja/
過去スレ関連スレ及び注意事項等 >>2-4
0092nobodyさん
03/04/30 16:54ID:hVWaacez.、:'':::::::::::::::::``:...、
/::::::::::::::::::::::::::::::::::::::\
i::::::::::::::::::::::::::::::::::::::::::::::::::ヽ
!::::::::::::::::::::::;‐、:::::::::_::::::_::::';
|::::::::::::::::::::::| :: ̄ ``!
r''ヾ'::::::::::/ :: |
l r‐、\::/ _..、ii_;;_、 _...l、
ヽヾ〈 ::= -r:;;j_;、`/ :;'ィ;7
!:!_.、 :: ` ー : |: `´/
../ヽ | 、_ :: .: 'r' :i |: /
.../ `ヽ;_ i | ''、_:::__`:'‐'. /
/ ``'ー 、_\ ! `::` ̄''`チ`シ
/ー 、_ `\:、_ :: ` ̄/ なんかもう必死でしょ
/ ``ヽ、 ヽ`'7‐--'゛
/ `ヽ、 `/
00931
03/05/01 23:32ID:???0095nobodyさん
03/05/02 03:18ID:???でもどちらにしてもフレームワークと呼ぶようなものは無いような気がするな。
ライブラリとかはあるけど、型に填め込むようなのはね。
大体PHPで「パターン」というのも余り聞かないでしょ。
0096nobodyさん
03/05/02 09:17ID:???PHPではデザパタが適用できないと。そう言いたい?
この考え方はこの言語の中だけ。みたいな狭いこと考えてると設計能力のびないぞ。
0097nobodyさん
03/05/02 13:05ID:NXr20aw7享受できるのかと言えば微妙なところではあるが。
0098nobodyさん
03/05/03 14:12ID:???質問させてくんさい。
ezweb用のコンテンツをphpで出力したいんですが、
日本語上手く表示できません。
header("content-type: text/x-hdml;charser=shift_jis");
print <<<EOF
<hdml version="3.0" public="true" markable="true">
<display name="main" markable="true" title="テスト" bookmark="./index.php">
テスト
</display>
</hdml>
EOF;
0099nobodyさん
03/05/03 14:12ID:???httpd.confには
AddType text/x-hdml;charset=Shift_JIS .hdml
AddType text/x-hdml .hdml
AddType text/vnd.wap.wml;charset=Shift_JIS .wml
AddType application/x-pmd .pmd
AddType audio/vnd.qcelp .qcp
AddType application/x-smaf .mmf
を追加。SDK3.3.1ってやつでテストしてます。
http://developer.openwave.com/ja/download/331doc.html
文字化けはしてるものの、一応表示は出来てます。
あとテストとして http://ezseek.infoseek.co.jp/index.hdml
なんかは問題なく日本語表示出来ました。
長文失礼。
0100nobodyさん
03/05/03 21:56ID:???header("content-type: text/x-hdml;charser=shift_jis");
の「charser」はここへコピペする時のtypo?
0101nobodyさん
03/05/04 13:42ID:???PHPでゲーム作ろうかなって思っているものですが、
更新処理が多発するケースだと、MySQLとPostgreSQLとどっちがいいのでしょうか?
MySQLだと早いけど、更新時にテーブルロックをかけなければならず、結局速度が低下する可能性がありで、
PostgreSQLだと重いけど、更新時にレコードロックで済むので速度が一定に保てそうな予感です。
もしかして、DB系の話をしているスレに書くべきことかもしれませんが、だれか連続更新処理に適したものを教えてください。
0102nobodyさん
03/05/04 14:44ID:???自分で作る前にもしPHPでお勧めなモノがあれば教えて下さい。
0103nobodyさん
03/05/04 14:59ID:???0105nobodyさん
03/05/09 01:36ID:???0106nobodyさん
03/05/10 09:35ID:C7lpqUaM借りてる鯖、NOTICEレベルまでログにはき出すから(要は怪しいのも全部)
エラーログがたまって仕方ない。だからNOTICEレベルまでデバッグしてる。
未定義変数がどうとかでごちゃごちゃ怒られるのは面倒きわまりないんだが。
エラーハンドリングするといちいち無駄な処理が増えるしやりたくない。
みなさんはどのくらいまでデバッグしてる?
0108nobodyさん
03/05/10 10:10ID:???そんなん仕様上あたりまえのことやと思うで。
0109nobodyさん
03/05/10 13:31ID:???http://fitness.s7.xrea.com/2ch/
このスクリプトで、自動リンクを他の板みたいなhttp://ime.nu/〜〜〜
にしたいのですがどこを改変すればいいか分かりません。
phpリファレンスを見たけどさっぱりです
どうか教えてください。
0111nobodyさん
03/05/10 16:45ID:???勿論ログの話であって、ユーザ側にはエラー表示はしない。
関数にもデバッグ後には@つけちゃってるし。
自分で作って使うもんはE_ALLのまんまだよ。一部の他人のスクリプトを
流用してる場合でそっちを変えるのが面倒なときはそれなりにレベルを下げるけど。
>>107
Apacheならhttpd.confとか.htaccessで
php_value error_reporting 2039
とかする手もあるな。
E_ALLとかが未定義なのでリテラルで書くしかないけど
(PHP4なら2039がE_ALL^E_NOTICEと同値)
011295
03/05/11 04:10ID:???うーん、勉強不足だった。今月のphp|architectに記事があったのだが、
MVCフレームワークだけでも
Ambivalence - based on Maverick (http://amb.sourceforge.net/)
Eocene (http://eocene.net/)
php.MVC (http://www.phpmvc.net/)
Phrame - based on Struts (http://phrame.itsd.ttu.edu/)
後はもっとアプリケーションレベルのフレームワークでは
CMF(Content Management Framework)のMidgardなどもある。
http://www.midgard-project.org/
こっちはチョロチョロと触ってるけど、基底モジュールをCで書く必要が
あるので、PHPだけでやるフレームワークではないです。
>>96
いや、そゆこと言ってる訳ではないのだけど。ならばGoFのデザパタは
Javaにも適用できない(だってあれはC++)…なんてことは無いのは明らか。
無論PHPにもGoFは適用できるしメリットはある。ただGoFのパターンは
プログラミングデザインのパターン寄りなので言語制約は大きいけどね。
言いたいのは「PHPの文化圏ってパターン、パターンって(余り)言わないでしょ」ってこと。
これは歴史的な言語制約によるもの"だけ"とは思えないんだよね。
Perlなんかも似たような気がするけど。
#うん?やっぱ単純に歴史的経緯か
0113nobodyさん
03/05/11 23:51ID:LWSkYdbj単純に「パターンって何よ、ウワーン」となった奴がPHPに
逃げ込むような図式が多い、ということでは。
0114?*?
03/05/12 17:37ID:???ピラピラしててエティイなパンティー
の略??
0115nobodyさん
03/05/12 17:44ID:???( ,,)┌─┴┴─┐
/ つ.キチガイ警報|
〜′ /´ └─┬┬─┘
∪ ∪ ││ _ε3
゛゛゛'゛゛'゛゛'゛'゛゛'゛'゛゛゛゛'゛゛゛'゛゛
0116nobodyさん
03/05/13 01:18ID:Adz4yPCgログが次のような1行1書き込みだったとして、
aaaa,あ,1
bbbb,い,3
cccc,う,2
3列目(1,3,2の列)でデータをソートするには
どうしたら良いんでしょうか。
0117_
03/05/13 01:35ID:???http://www.yoshiwara.susukino.com/moe/jaz08.html
http://yoshiwara.susukino.com/moe/jaz10.html
http://www.yoshiwara.susukino.com/moe/jaz03.html
http://yoshiwara.susukino.com/moe/jaz09.html
http://www.yoshiwara.susukino.com/moe/jaz06.html
http://yoshiwara.susukino.com/moe/jaz05.html
http://www.yoshiwara.susukino.com/moe/jaz01.html
http://yoshiwara.susukino.com/moe/jaz02.html
http://www.yoshiwara.susukino.com/moe/jaz07.html
http://yoshiwara.susukino.com/moe/jaz04.html
0118nobodyさん
03/05/13 05:57ID:???そういう時はusort関数を使うらしい。
http://php.s3.to/man/function.usort.html
配列中の要素を2個づつ比べて、大きいか小さいか等しいかに合わせて数値を
返せばソートしてくれる。数値を返すのもstrcmp()がやってくれるので、こちらは
比較する要素だけ指定すれば勝手にやってくれるようだ。
下のサンプルでは、$lien[]を丸ごと渡して、関数内で$line[]を分割し、
3つ目の要素だけを、strmpc()に渡す因数に指定してみた。
これが常道かはわからないけど。
function Sort_by_ThirdValue ( $a, $b ) {
$a2 = explode ( ",", $a ) ;
$b2 = explode ( ",", $b ) ;
return strcmp ( $a2[2], $b2[2] ) ;
}
$line = array ( "bbb,いいい,2", "aaa,あああ,1", "ddd,えええ,4", "ccc,ううう,3" ) ;
foreach ( $line as $presortVal ) {
echo $presortVal . "<br>" ;
}
print "<br><-presort<br> sorted-><br><br>";
usort ( $line, "Sort_by_ThirdValue" ) ;
foreach ( $line as $value ) {
echo $value . "<br>" ;
}
0119118
03/05/13 06:28ID:???脳内読みが文字に出てしまった・・。
0120nobodyさん
03/05/13 12:54ID:dKtUOSWv漢字の「愛」に変換する事ってできますか?
chrだとマルチバイトに対応してないんで困っています。
0121120
03/05/13 13:03ID:???$code="88a4";
$a1 = substr($code,0,2);
$a2 = substr($code,2,2);
eval("\$a1=0x$a1;");
eval("\$a2=0x$a2;");
$a = chr($a1).chr($a2);
なんかスマートじゃないですよね。
もっといい方法あったら是非教えてください。
0122120
03/05/13 13:41ID:???$ai = pack("H*","88a4");
0123nobodyさん
03/05/13 17:01ID:???ImageTTFText関数で画像を吐きたいんですけど、
日本語を吐かせようとすると、かならず化けます。縦棒イパーイな感じで。
どなたかヒントだけでもお教え願えないでしょうか。
0124nobodyさん
03/05/13 19:26ID:1AS9m43x3.524E-06
と変換するような関数ってありますか?
0125nobodyさん
03/05/13 19:28ID:1AS9m43x0126nobodyさん
03/05/13 19:28ID:???0127nobodyさん
03/05/13 19:33ID:1AS9m43x0128nobodyさん
03/05/13 19:40ID:???0129nobodyさん
03/05/13 19:45ID:1AS9m43x0130nobodyさん
03/05/13 19:45ID:wSvG+vhm●騙された・裏切られた・弄ばれた・逃げられた・捨てられた・
相手に誠意が無い・異性問題・家庭内暴力・不倫疑惑解明・人間関係・金銭トラブル★
● http://www.blacklist.jp/i
別離工作・情報収集・トラブル対策・ボディガ―ド・等々!
●真剣にお悩みの方、安心してご相談下さい。解決へ導きます★
□■各種データ・電話番号調査・住民票・戸籍謄本など調査■□
● http://www.blacklist.jp/i ●別れさせ屋・特殊工作・調査全般
● http://www.blacklist.jp/ ●復讐代行・人生相談・駆け込み寺
--------------------------
リンク⇒ http://315.teacup.com/asocokit/bbs 凄い・必見!!!
0131nobodyさん
03/05/13 19:51ID:1AS9m43xeregeregeregeregereg
eregなんてきらいだぁぁぁぁ
0132nobodyさん
03/05/13 19:53ID:???var_dump();
0133nobodyさん
03/05/13 19:55ID:???0134nobodyさん
03/05/13 19:56ID:1AS9m43xphpinfoみたけどさっぱりでしたよそれ・・・
ていうかeregつかってできましたよ。
力技ですが・・
0135nobodyさん
03/05/13 19:58ID:???0137nobodyさん
03/05/13 20:05ID:1AS9m43x$a=0.03524とかになると
うまくいかないんです。
ていうか、できたと思ったら
うまくいってなかったー。
0138nobodyさん
03/05/13 20:38ID:???echo e(0.00003524)."<br>";
echo e(0.0003524)."<br>";
echo e(0.003524)."<br>";
echo e(0.03524)."<br>";
echo e(0.3524)."<br>";
echo e(3.524)."<br>";
echo e(35.24)."<br>";
echo e(352.4)."<br>";
echo e(3524)."<br>";
function e($in){
$a=0;
while($in>=10||$in<1){
if($in>=10){$in/=10;$a++;}
if($in<1){$in*=10;$a--;}
}
return $in."E".$a;
}
やみくもに計算してみるというのはどうか?
0139私大文系
03/05/13 21:06ID:???しかし、せっかく見やすい 0.03524 をE-表記にするのは無駄だな。
function intstr( $i ) {
$k = $m = 0 ;
$n = 0 ;
while ( $k < strlen($i) ) {
$l = substr ($i, $m, 1 ) ;
if ( preg_match("/0/",$l) || $l == "." || $l == "," ) {
$n += 1 ;
}
$k = $m += 1 ;
}
$i *= pow( 10, ($n-1)) ;
$i .= "E-" . ($n-1) ;
settype( $i, "string" ) ;
return $i ;
}
0140私大文系
03/05/13 21:14ID:???0以外の数字にぶつかったら while を抜けるように書き換えてくれ。
0141nobodyさん
03/05/13 21:17ID:1AS9m43xとおもったら>>139が・・
139よりよっぽど力技ですわ。
0142nobodyさん
03/05/13 21:19ID:1AS9m43xif(ereg("E",$time[$i])){ //1E-4未満の数は勝手にEがつくので回避
print("$time[$i]<BR>");
}else{
ereg("[1-9]",$time[$i],$atime); //小数点以下のはじめの数字GET
ereg("[1-9]{1}[0-9]+",$time[$i],$btime);
$ctime=substr($btime[0],1);
if($ctime=="") $ctime="0";
print("$ctime ctime<BR><BR><BR>");
ereg("0.0+",$time[$i],$dtime); //小数点以下
$keta=strlen($dtime[0])-1;
print("$keta keta<BR><BR>");
printf("%d.",$atime[0]);
print("$ctime");
printf("E-%03d",$keta);
}
}else {
print("変。");
exit;
}
0143nobodyさん
03/05/13 21:24ID:1AS9m43xif(ereg("E",$time[$i])){ //1E-4未満の数は勝手にEがつくので回避
print("$time[$i]<BR>");
}else{
ereg("[1-9]",$time[$i],$atime); //小数点以下のはじめの数字GET
ereg("[1-9]{1}[0-9]+",$time[$i],$btime);
$ctime=substr($btime[0],1);
if($ctime=="") $ctime="0";
print("$ctime ctime<BR><BR><BR>");
ereg("0.0+",$time[$i],$dtime); //小数点以下
$keta=strlen($dtime[0])-1;
print("$keta keta<BR><BR>");
printf("%d.",$atime[0]);
print("$ctime");
printf("E-%03d",$keta);
}
}else {
print("変。");
exit;
}
0144文
03/05/13 21:57ID:???つか、こういうのって何に使うの?
0145nobodyさん
03/05/13 22:00ID:1AS9m43x0146nobodyさん
03/05/13 22:00ID:1AS9m43x3時間もかけてしまった・・・・
0147nobodyさん
03/05/13 23:36ID:1AS9m43x<?
print <<< HERE
abc
HERE;
?>
</HTML>
これでエラーがでるのはなぜなんでしょう・・
Parse error: parse error, unexpected $end in test.php on line 9
0148nobodyさん
03/05/13 23:42ID:???0149nobodyさん
03/05/13 23:50ID:1AS9m43x0150文
03/05/14 00:25ID:???なるほど。
説明してもらってもさっぱり分からねえ(笑
漏れも結局正規表現で拾うことにしたよ。
しかし正常に動作しているのか自分では確認できない体たらく。
function EStyle ( $i ) {
if( !preg_match ("/^0\.(0*).+/", $i, $n) || ereg ("E", $i) ) {
return preg_replace ("/-0*/", "-", $i) ;
}
$n[0] *= pow( 10, strlen($n[1])+1 ) ;
$n[0] .= "E-" . ( strlen($n[1])+1 ) ;
return $n[0] ;
}
$floa = 0.00453 ;
echo EStyle($floa) ;
0152nobodyさん
03/05/14 12:06ID:OQIpVsQ01越えたらOKという考え方おもしろいですね。
自分には思いつかなかったですよ。。
0153nobodyさん
03/05/14 13:39ID:MJNSMXYH送るメールに送った人の名前、返信先アドレス、などを
付加することは可能ですか?
0154mind
03/05/14 16:01ID:jMW3weXwフォームから「あいうえお」と書いておくると
書き込んだtxtファイルの中身が
、、、ヲ、ィ、ェ
となります。
どうすれば
あいうえお
と書き込むようになるのでしょうか?
ご指導ご鞭撻下さい
/*html*/
<form method="POST"action="write.php">
<textarea name='memo' cols='80' rows='20'></textarea><br>
<input type="submit" value="write">
</form>
/*php*/
<?php
$filename = "write.txt";
$handle = fopen($filename, 'w');
fwrite($handle, $memo);
fclose($handle);
?>
ちなみに
/*php*/
<?php
$filename = "write.txt";
$dat = "あいうえお";
$handle = fopen($filename, 'w');
fwrite($handle, $dat);
fclose($handle);
?>
とするとちゃんとTXTファイルに書き込まれます。
0155nobodyさん
03/05/14 16:25ID:dQbZoEQeお前ら二人ともマニュアルのマルチバイト文字列関数をよく嫁。
0157nobodyさん
03/05/14 16:41ID:???http://www.dvd-yuis.com/
0158パピポ
03/05/14 19:20ID:gInQ8eeuリンクになる掲示板というのを作りたい。
つまり「単語:2ch/意味:巨大けいじばん」という単語が辞書に登録さ
れていたとして
投稿文が『2chって面白いよね。』の場合。
『<a href="dic.php?word=2ch">2ch</a>って面白いよね。』となる。
dic.phpはwordの単語を検索して意味を含めてページとして吐き出す。
辞書はDB使ってやるのでdic.php自体は問題んないんだが、
投稿文の登録単語をリアルタイムに調べてリンクに変換するのに
辞書が増え出すと恐ろしく時間がかかりそうな気がする。
なんかイイ方法はないだろうか?
0159パピポ
03/05/14 19:29ID:gInQ8eeuしいる方法。
つまり変換してほしい単語が辞書に登録してある事を事前に
知っているならば、その単語の前後に規定の文字列で挟んで
もらう。
例)2ch → %_2ch_%
この方法だと%__%で囲まれている文字列を抜き出して検索す
ればいいので、処理時間の問題は解決されるが、投稿者は
辞書に登録されている単語を事前に知っていなければならない。
ので、この方法はできれば回避したい。
0160nobodyさん
03/05/14 20:10ID:kYMeLGsChttp://www.dvd-yuis.com/
豊富な品揃え!新品アダルトDVDが税込み900円〜!
http://www.dvd-yuis.com/
最速発送!!すぐ届く!!
http://www.dvd-yuis.com/
よろしくね!!!
0161nobodyさん
03/05/14 20:20ID:QtBrZTEg辞書を配列にすることができれば、preg_replaceの/e修飾子を
使ってどうにかなりそうだけど。
0162161
03/05/14 20:21ID:QtBrZTEgWikiみたいに「半角英数字からなる単語」のみを対象とする、
くらいしか方法なさそう。
0163nobodyさん
03/05/14 21:02ID:???しかも変なとこでリンクを張らないように(たとえば前後文で「昨日12chでさぁ〜」を排除)配慮
するわけだし、DB使うといえども大変そうだね。
ひとつは特定のカテゴリーに特化したBBSにして、マニアックな単語にだけ辞書リンクを
つけるとか、辞書なしで google に投げちゃうとか、、本末転倒か。
運用面で支障がでるくらい書き込みが多いなら、そっちを制限して処理に余裕をもたせる
ようなことも考えないと。あるいはリアルタイム変換を捨てるか。
「辞書が増えだすと」ってことはユーザーに辞書を作らせることを考えてるんだと思うけど、
たとえば運用に現実的ではないロスがでる登録数にいたらないように、長い間使われて
いない用語やgoogleでの検索結果が一定値以下の用語を削除していく保守スクリプトを
動かすようなことも必要になるのかな、と。
実際どんなスクリプトで検索とリンク張りをやろうとしてるのかとても興味アル。
0164nobodyさん
03/05/14 21:14ID:???日本語だと「分かち書き」が無いから難しいね。
漢字や仮名や半角文字の間に単語の繋ぎ目を仮定して辞書にあるかどうか調べるとか。
品詞の特徴で分けるなら人口無脳が参考になると思う。
もっと凝るならWnnやCannaに文節を探させて、文節の先頭から辞書を検索するとか(手間かかりそうだが)。
0165nobodyさん
03/05/14 21:37ID:???<言語>として扱おうとすればするほど処理はかさむし例外対応にリソースもってかれると
思うんだが、、。
よほど大きな辞書を作るなら、簡単なクラスタ化くらいは必要かも知れないけど根。
して辞書検索し、ヒットした文字列だけreplaceするしかないかもな。
0167nobodyさん
03/05/14 22:00ID:???検索速度が気になるならインデックスを実装してみたら?
0168nobodyさん
03/05/14 22:21ID:???textエリアで書き込んだ内容がECUの文字コードで保存しているはずが
Shift_JISにかってに変わってしまい、困っています。
また、改行コードも反映されません。
今は値をgetで返しているのですが、postだとその現象はおきませんでした。
何か原因のわかる方がいましたら、お願いします。
0169nobodyさん
03/05/14 22:23ID:???そうなの?
0170nobodyさん
03/05/14 22:51ID:???ECUだからダメなのかなw
0172nobodyさん
03/05/14 22:56ID:???0173nobodyさん
03/05/14 22:59ID:???根拠を示せ
>Shift_JISにかってに変わってしまい
ほんとにShift_JISになってるのか?
>改行コードも反映されません
どうやって確認した?
>今は値をgetで返しているのですが、postだとその現象はおきませんでした
それ以外に違いはないのか?
0174nobodyさん
03/05/15 01:31ID:???171が言ってるようにGETなのにURLエンコードしないで渡してるから、
マルチバイトが"規定どおりに"扱われて、望むように扱われないだけ
じゃないのかい。
>改行コードも反映されません
ともあるし
>EUCの文字コードで保存しているはず
ってどこに?ブラウザで入力してる時に保存されてるものは
OSやブラウザの実装に依存するんじゃないの。
それかPOSTなりGETなりでサーバのPHPのプログラムを介して
サーバ上のファイルとして保存してるなら、そのファイルの
エンコードをちゃんと自分で確認してください。
またPHP上の変数に保持されてる場合もファイルに書き出すなりして確認。
んじゃないと本人が「筈」なんて言ってる事を、赤の他人なら尚更判らんでしょ。
■ このスレッドは過去ログ倉庫に格納されています