【PHP】質問スレッド Part9
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
03/07/12 03:18ID:???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-3ぐらい
0219nobodyさん
03/07/25 04:41ID:???0221nobodyさん
03/07/25 14:49ID:n0rGriHyありがとうございます。procmailで調べてみます!!
0222あぼーん
NGNG0223あぼーん
NGNG0224あぼーん
NGNG0225nobodyさん
03/07/25 18:39ID:???違うものがあったらエラーにしたいのですが
if($a1 == $a2)と1つずつチェックするしかないでしょうか?
一度に比較するのは無理ですか?
0226nobodyさん
03/07/25 19:13ID:5Frmg0qV最初から配列にしときゃ楽なのに
for ($i = 1; $i < 8; ++$i) {
$val = "a$i";
$a[$i] = $$val;
}
if (count(array_unique($a)) == 1) {
echo "Equal.\n";
} else {
echo "Different.\n";
}
0229nobodyさん
03/07/26 00:11ID:???0230nobodyさん
03/07/26 01:51ID:???これは、gzfopenを使ってファイルを開いたときに、
そのファイル全部が解凍されてしまうのでしょうか?
それともgzfgets等を使って読み込むときに逐一
解凍されるのでしょうか?
インターネット上にあるファイルを扱うため
ダウンロード時間を節約したいと思っています。
よろしくおねがいします。
0231nobodyさん
03/07/26 01:52ID:???○ gzgets
0232nobodyさん
03/07/26 03:07ID:???別の端末(というか本稼動用マシン)で試したら無事上手くいきました。
ずーっとPHPのデバッグモードか何かが変更してるのかと思ってました。
ありがとうございました。
0233nobodyさん
03/07/27 00:47ID:npgEG66c深いネストからの脱出とかめんどくせぇな〜。
0234nobodyさん
03/07/27 00:49ID:???0237あぼーん
NGNG0239nobodyさん
03/07/27 02:06ID:???0241241
03/07/27 13:14ID:dJWoBMBZ$a内の『7月27日』を『7/27』に換えたいんですが、
$data =~ s/7月27日/7/27/g;
と、すると区切りのスラッシュがダブってしまいますよね。
こんなときの対処方法がご存知でしたら、
御教授お願い致します。
0242nobodyさん
03/07/27 13:16ID:59cmaD5D$data =~ s/7月27日/7\/27/g;
0243241
03/07/27 13:56ID:dJWoBMBZうまくいきませんでした。。。
0244nobodyさん
03/07/27 14:17ID:???これはPHPの書式じゃない。
正規表現スレにもマルチしているみたいだが、PHPだとちゃんと伝えておいたほうがいいぞ。
0245板違いですかね?
03/07/27 14:48ID:xxX8c2Bzしかもパスワード変えられちゃって、どうしようもない状態ですTT
常連さんの話によると、ブルートフォースアタッカーが関係しているようで、なにやら言っていました
何ですかそれ?検索してみても、POPとかFTPとかのパスワード破るのはあったんですけど、
それで破られたとは考えにくいです。
フロームのパスワードを破る奴なんて存在するんですか?
0246nobodyさん
03/07/27 14:50ID:???0247245
03/07/27 14:51ID:xxX8c2Bz0248241
03/07/27 15:08ID:dJWoBMBZ誤爆スマソ
0249nobodyさん
03/07/27 15:11ID:???英数字36文字(a-z,0-9)でパスワードを設定したとすると、
平均試行回数 = (36^n)/2 = (36*36*...*36)/2 回で破られることになる。
4文字だと、(36*36*36*36)/2 = 839808 回ってところか。
1秒に一回試行するとして、約233時間 ≒ 10日。
... 結構かかるんだな。。。
レンタル掲示板なら管理者の人に連絡して対処してもらうべし。
フロームのパスワードって何なんだろう?PHPとどんな関係があるんだろう。わけわか。
0250nobodyさん
03/07/27 15:19ID:???0251nobodyさん
03/07/27 15:27ID:???多分、管理モードに入るためのフォームのパスワード、と言いたいのでは無いだろうか。まさかgetじゃ…
>>245
パスワードは英大小文字数字記号全て混在させて10文字以上が割に安心。
でも何でここなの? 漏れも奴隷ですか?
0252nobodyさん
03/07/27 17:50ID:???後、内部犯の可能性も高いので敵を作らんような性格になれるよう努力しろ。
0253nobodyさん
03/07/27 20:47ID:D+yphSrQラージオブジェクトの格納、引出(表示)、削除、などのやり方について
詳しいサイトあったら教えて下さい。
自分なりに探したのは、
ttp://homepage2.nifty.com/~chairo/html/installation/webapp/webapp.html
や
ttp://www.geocities.co.jp/SiliconValley-Sunnyvale/2287/doc/funto13.html
↑ここくらいですが、削除のやり方とかのってないす。
※別スレにも書いたのですが、反応が無くて。。。
重複すいません
PHP + PostgreSQL
http://pc2.2ch.net/test/read.cgi/php/983128806/
0254nobodyさん
03/07/27 20:56ID:???一冊本買った方がいいかと。
0255あぼーん
NGNG0256253
03/07/28 00:08ID:pa0vp2x9一般本は、3,4冊持っているのですが、
ラージオブジェクトの削除は特殊らしくて。。。
それを解説しているような本も見つからなくて。。。
0257nobodyさん
03/07/28 00:14ID:???これちがうんか?
0258nobodyさん
03/07/28 01:50ID:???gotoを否定する馬鹿はプログラム組まなくていいよ。
深いネストからの一発脱出はgotoが無いとめんどくさくてしょうがない。
gotoなくすならPerlのbreak ラベルのように代替策を提示しろよな。
0260nobodyさん
03/07/28 02:09ID:???ほう〜。
じゃあ以下の例(gotoは使えないけど仮に使ってる)を
ラベル使わずにエレガントに書いて見てよ。
for($i=0;$i<10;$i++)
{
for($j=0;$j<10;$j++)
{
if(条件)
goto LABEL;
}
}
LABEL:
0261nobodyさん
03/07/28 02:10ID:???さすがにそんな椰子が実在するとは思えない。
0262nobodyさん
03/07/28 02:12ID:???0263nobodyさん
03/07/28 02:13ID:???gotoは使いどころを分かってるなら有効な命令なんだよ。
盲目的にgoto嫌ってる阿呆は意味も分からずに
遠回りして汚いコードを書き散らす。
0264nobodyさん
03/07/28 02:16ID:???えっ何?それが答え?
どこぞの香具師の受け売りで盲目的にgoto嫌って
直感的じゃないソースを書く奴はただの能無しだからさ。
もう偉そうに回答しなくていいや。
あーあっと。
0266nobodyさん
03/07/28 02:21ID:???http://jp2.php.net/manual/ja/html/control-structures.break.html
0267nobodyさん
03/07/28 02:25ID:Og/nq0Tf{
for($j=0;$j<10;$j++)
{
if(条件)
break 2;
}
}
0268nobodyさん
03/07/28 02:29ID:???「gotoが無くて困ってます。助けて下さい」
って書けないのはなんでだろ〜
0269nobodyさん
03/07/28 02:48ID:GMEyhxNP複数の場所で使用している関数でエラーが起きた時に
どのパターンの時にエラーが起きているか分かりにくくて困っています(T.T)
全て行数をくっつけて送るしかないのでしょうか?
0270nobodyさん
03/07/28 03:14ID:???0271nobodyさん
03/07/28 04:26ID:???0272nobodyさん
03/07/28 06:21ID:???0273nobodyさん
03/07/28 06:40ID:???10 print "goto無いの?"
20 goto 10
0274nobodyさん
03/07/28 12:22ID:???0275nobodyさん
03/07/28 13:06ID:???1001以降もまだ書き込みできている模様。
1001 名前: 1001 投稿日: Over 1000 Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
1006 名前: マロン名無しさん 投稿日: 03/07/28 06:42 ID:Z0CeMHS7
何これ
1014 名前: マロン名無しさん 投稿日: 03/07/28 06:42 ID:AxlwdY4A
お〜い、まだ書けるぞ?
書き込みは1300レスを過ぎた今も続けられている。
http://live4.2ch.net/test/read.cgi/mmonews/1059166935/
0276nobodyさん
03/07/28 15:27ID:???でも例外用の構文がないのでgotoあってもいいとおもう。
do/break/while(0)でもいいけど。
0277nobodyさん
03/07/28 18:50ID:???0278nobodyさん
03/07/28 18:56ID:???<?xml version="1.0" encoding="EUC_JP"?>
と記述すると
Parse error: parse error in /home/httpd/hoge.php on line 1
というエラーが発生します。
xhtmlとphpを共存させるにはどうしたらいいんですか?
0280nobodyさん
03/07/28 19:10ID:???PHP タグの短縮型 (<? ?>) を使用 可能にするかどうかを設定します。
PHPをXMLと組み合わせて用いる場合は、<?xml ?>をファイル中で用いるために
このオプションをオフにする必要があります。
オンにした場合にPHPでXMLを出力するには、例えば、次のようにします。
<?php echo '<?xml version="1.0"'; ?>
これをオフにした場合、長い方の形式のタグ (<?php ?>)を使用する必要があります。
注意 このディレクティブは、<? echoと同じ形式の ショートカット<?=も影響を受けます。
このショートカットを使用するには、 short_open_tagをonとする 必要があります。
0281nobodyさん
03/07/28 21:23ID:???Windows + PHP4.3.2 で GD2 を使うと文字化けしまつ。
下記のコードを実行すると GD (php_gd.dll) の場合はきっちり表示されますが、GD の代わりに GD2 (php_gd2.dll) を有効にすると化けます。
Unicode から他の文字コードに変更されたのかと思い EUC-JP や SJIS を試してみましたがやっぱり化けてまつ。
GD2 に拘る必要が無いので取り敢えずは無問題でつが、何故 GD2 で化けるのか気になって気になって集中力を欠き大魔界村は3面で全滅する始末。
解説してくれませんか、エロい人。
<?php
Header("Content-type: image/jpeg");
$im = imagecreate(400,30);
$block = ImageColorAllocate($im,0,0,0);
$white = ImageColorAllocate($im,255,255,255);
$txt = "Test kanji 漢字";
$txt = mb_convert_encoding($txt, "UTF-8", "SJIS");
ImageTTFText($im,20,0,10,20,$white,"C:\WINDOWS\Fonts\MSGOTHIC.TTC",$txt);
ImageJpeg($im);
ImageDestroy($im);
?>
0282nobodyさん
03/07/28 22:31ID:CcP+Vvas0285nobodyさん
03/07/28 22:48ID:???GD2 で Unicode から EUC-JP に変わったんだよ、というご指摘でしょうか。
一応試したのですが化けたままです。
>>281 Unicode から他の文字コードに変更されたのかと思い EUC-JP や SJIS を試してみましたがやっぱり化けてまつ。
0286nobodyさん
03/07/28 23:03ID:???$x = preg_replace('/^(>|(>)\S.*)$/','<q>\\1</q>',$x);
だと上手くいかないです。
しかも「$」が文末の改行に反応しない模様
あと2ch互換のトリップを造りたいのですが、
半角カナなどの置換も上手くいかないのですがどすればよいでしょうか。
ちなみにmbは使えない環境です。
0287nobodyさん
03/07/28 23:51ID:???$y = split("\n|\r|\r\n", $x); //配列に展開
$y = array_map('rtrim', $y); //行末ホワイトスペース削除
$y = array_map(create_function('$z', 'if (preg_match("/^(>|>)/", $z)) { return "<q>" . htmlspecialchars($z) . "</q>"; } return htmlspecialchars($z);'), $y); //説明省略
$x = implode('<br />', $y); //文字列に戻す
$x = str_replace('</q><br /><q>', '<br />', $x); //必要に応じて引用箇所をつなげる
0289nobodyさん
03/07/28 23:59ID:???0290nobodyさん
03/07/29 00:05ID:???つづき。
たぶんどっかのスクリプトのトリップ生成ルーチンを参考にしていると思うんだけど
半角カナは事前に文字コードをSJISにしておかないと期待どおりの結果は得られませんよ。
jcode.phpsを使いませう。
参考までに僕が使っているルーチンを書いときます。
$m = array(':',';','<','=','>','?','@','[','\\',']','^','_','`');
$n = array('A','B','C','D','E','F','G','a','b','c','d','e','f');
$salt = substr($key . 'H.', 1, 2);
$salt = preg_replace('/[^\.-z]/', '.', $salt);
$salt = str_replace($m, $n, $salt);
$id = substr(crypt($key, $salt), $o); //$oはトリップ桁数 x -1(10桁のとき、-10)
0291nobodyさん
03/07/29 00:11ID:???>>286の'/^(>|(>)\S.*)$/'を'/^(>|(>)\S.*)$/m'に変えたらうまくいくんじゃないかと思ふ。
でも掲示板での利用を考えているみたいだからあえて配列にしてから
コールバック関数を使うやり方を書きますた。
僕は複雑な処理をしたいときはarray_mapの代わりにpreg_replace_callbackを使ってまつ。
0292nobodyさん
03/07/29 00:22ID:???/^(>|>\S.*)$/m でも上手くいきました
けど改行が挙動不振なので最初のほうがよさそうですね。
トリップはperlのルーチンを読み替えて実装しようとしてました。
SJISに変換しておかないといけなかったのですね。意外な盲点。
ルーチン参考にさせて頂きます。
どうもありがとうございました。
0293あぼーん
NGNG0294の
03/07/29 15:32ID:AcfIX73pLinux 上で試したが UTF-8 で漢字も出たよん。
> ImageTTFText($im,20,0,10,20,$white,"C:\WINDOWS\Fonts\MSGOTHIC.TTC",$txt);
ファイルの指定の \ をエスケープしなくていいの?
0296あぼーん
NGNG0297あぼーん
NGNG0298あぼーん
NGNG0300nobodyさん
03/07/29 16:33ID:???0301nobodyさん
03/07/29 16:34ID:???キーボードからの入力を取り込むにはどうすればいいんでしょうか。
perlでの
$var = <STDIN>
みたいなやつです。
ヒントだけでも・・・。
もう疲れました・・・。
0303nobodyさん
03/07/29 16:59ID:???まぬあるに そのまんま「PHPをコマンドラインから使用する」てのがある。
>>302
「添付ファイル メール php」でググる。
0304nobodyさん
03/07/29 17:32ID:???RFC 読もうよ… メールのフォーマットを理解すれ。
いつも思うけど何で安易に答を求めて一次情報に当たったり基礎理解を深めようとしないのか。
0305nobodyさん
03/07/29 18:28ID:???疲れたんだったら金払う?
自分は他の労働でもして、PHPは得意な人に任せるほうがいいと思うよ。マジで
0306nobodyさん
03/07/29 18:31ID:???はdocomoなんですがちゃんと表示されてましたが。
0308nobodyさん
03/07/29 18:47ID:???携帯のブラウザの仕様に合ってれば大丈夫だと思う。
ちなみにEZはS-JISじゃないと読めないぽい。
0309あぼーん
NGNG0311nobodyさん
03/07/29 19:52ID:???安心するなよ(w
ユーザーとしての立場から質問投げてるならスレ違いだし、
趣味ならもっと腰落ち着けてゆっくり勉強しろよって思うし、
仕事ならさっさと辞めるか必死こいて基礎から勉強しろって思うyo!
0312nobodyさん
03/07/29 22:59ID:???0314nobodyさん
03/07/29 23:11ID:???どうなってるんだよ・・・
↓
291 名前:nobodyさん[sage] 投稿日:03/07/29 16:59 ID:???
>>301
まぬあるに そのまんま「PHPをコマンドラインから使用する」てのがある。
>>302
「添付ファイル メール php」でググる。
0315nobodyさん
03/07/29 23:13ID:???0316nobodyさん
03/07/29 23:22ID:???改行による単語の分割等は気にせず大雑把に。
以下のような力技は思いつきますがもっとスマートな方法がありそうなので相談に来ました。
適当な関数が見つからないでつ、、
> mb_strpos -- 文字列の中に指定した文字列が最初に現れる位置を見つける
等で行の先頭から検査を行い、マッチした場合、カウント処理を行って、次の文字列から検査を再開する。
これを行の終わりまで行う。
0317nobodyさん
03/07/29 23:30ID:???preg_match_all
>パターンがマッチした総数を返します。または、マッチしなかったか、 エラーが発生した場合にFALSEを返します。
ttp://search.net-newbie.com/php/function.preg-match-all.html
0318nobodyさん
03/07/30 01:53ID:T6SL3iv+セッションのキャパシティーの限界ってどのくらいなのでしょうか?
■ このスレッドは過去ログ倉庫に格納されています