【PHP】質問スレッドpart18【php】
レス数が950を超えています。1000を超えると書き込みができなくなります。
0001nobodyさん
04/06/14 14:36ID:???・新規質問の方は上げてください。age進行でお願いします。
・質問する際には環境も明記。
・正しい日本語で分かりやすく。
・レスがつかないからって逆切れする厨お断り。
・解決しなくてもこたえてもらったら礼を。
■本家
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
抜けているものがあったら補足願います
0867名無し募集中。。。
04/07/11 21:56ID:/oo9N7Gmどれが一番いいの?
0868カポコン
04/07/11 22:50ID:???0869nobodyさん
04/07/11 22:59ID:???そんなもの存在しません。終了。
0871nobodyさん
04/07/11 23:20ID:???性能で言うならAPC, PHPA, MMCacheの中ではMMCacheが良いと思う。
対応しているアーキテクチャも多いし。
ただ現在は開発が停止中なので最新のPHPと組み合わせて使うにはちょっと不安がある。
まれにスクリプトを更新したとき期待通りに動かなくなって、
/tmp/mmcahe-*を削除したら直ったりするので。
開発再開を期待して待ちましょう。
>>869,870
知らないなら余計なことは言わない方が...
0872nobodyさん
04/07/11 23:21ID:???釣りか?
いっそ PHP 自体使うなと言いたい。
0873nobodyさん
04/07/11 23:24ID:???それ全部ライセンスで 「無料」 でなければならないとは定められていない。
メモリ上に直接キャッシングを行うのって、MMCache だけだと思ってたけど、
APCやPHPAもそうなの?
0874nobodyさん
04/07/12 00:49ID:qiJhhqFohttp://www.stackasterisk.jp/tech/php/apc01_01.jsp
0875nobodyさん
04/07/12 05:45ID:Q0IoRcBp<?php
print <<<EOF
古池や
蛙飛び込む
水の音
EOF;
?>
このソースで 古池や蛙飛び込む水の音 と一行につながって表示されてしまいます。
どの変が間違っているのでしょうか。php4.3.7です。
0876nobodyさん
04/07/12 06:49ID:c+JkP+leprint($aryCnt[1]);
の出力結果が
2 test2 title2 degree2 2004 7 10 23 40 mail2 home2 1 0 1 test2 uchi-mmkmldegej
なのですがこの文字列に対して
list($num[$j],$name[$j],$title[$i],$degree[$j],$year[$j],$month[$j],$day[$j],$hour[$j],$minute[$j],$mail[$j],$url[$j],$mem[$j],$lang[$j],$br[$j],$text[$j],$host[$j],$browser[$j])
=explode("\r",$aryCnt[1]);
以上の処理でここの変数に値を格納したいと考えているのですが何故かうまくいきません。
ファイルへの書き込み形式は
fputs($fl,$Cntary,$Cntarylen);
fputs($fl,"\r",2);
fputs($fl,$name,$namelen);
fputs($fl,"\r",2);
fputs($fl,$title,$titlelen);
fputs($fl,"\r",2);
fputs($fl,$degree,$degreelen);
fputs($fl,"\r",2);
・・・・・
出力結果は以下のとおりです。
print(count($title)); →1
print_r(array_values($title)); →Array ( [0] => )
どこに問題があるかご教示ください。よろしくお願いします。
0877nobodyさん
04/07/12 08:17ID:???ブラウザ出力のソースを表示させると、改行されてませんか?
textとして改行していても htmlとして解釈した場合には改行されません。
0878nobodyさん
04/07/12 10:20ID:ntR1QL+F<input type='text' name='hoge' value='foo2'>
一つのフォームで同じnameの値をPOSTでCGIに渡すと、受け取った値には
'foo1 foo2'と入ります。
これを<textarea>内に表示させてると'foo1 foo2'が表示されますが、
コピー&ペーストをすると'foo1'だけしかペーストされません。
foo1とfoo2の間に区切り文字が入っているのでしょうか?
これを一つの値としたいのですが妙案がありましたらご教授ください。
0879878
04/07/12 10:31ID:???散々調べた後に質問したのですが、検索を続けていたら解決方法を見つけました。
区切りに\0が入って値が渡されることを見つけました。
お騒がせしました。
0882nobodyさん
04/07/12 18:57ID:sEDp1Uf0日本語名のファイルが化けてしまいます。
日本語を使う方法ってなにかありませんでしょうか?
0883nobodyさん
04/07/12 19:03ID:???0884nobodyさん
04/07/12 19:22ID:???xws-core-0.3.4.zipがほしいのですがどこに落ちてますか?
ぐぐっても落ちてません。
0885nobodyさん
04/07/12 19:33ID:c+JkP+lefput長さ指定なしにしましたが何も変わりませんでした・・・・
0887nobodyさん
04/07/13 02:37ID:AiceQq3qformから入力したマルチバイト文字のデータをphpにとおすとき、
shift_jisの場合は、0x5cの関係で文字化けが発生してしまいますよね。
そのため、euc-jpでformに入力する必要があると思うのですが、
最終的には shift-jis でデータを送りたいのです。
この場合、一体どのような方法を取ればいいのでしょうか?
euc-jpでform入力後、jcode.php 等でeuc-jpからshift-jisに
変換するというのが一般的な方法なのでしょうか?
他に方法はありますでしょうか?
よろしくお願いしますm(__)m
0888nobodyさん
04/07/13 03:03ID:???http://jp.php.net/manual/ja/ref.mbstring.php
0889nobodyさん
04/07/13 04:38ID:???・mb_convert_encoding関数による方法
・jcode.phpを使う方法
・mb_output_handler関数による方法
・mbstring.http_outputの設定で行う方法
それぞれの利点/欠点を比較して採用を考えましょう。
0890nobodyさん
04/07/13 08:57ID:???こういう余計な前置きは嫌われるからヤメロ
0893nobodyさん
04/07/13 11:43ID:???0894nobodyさん
04/07/13 14:02ID:???ラム爺タソ、乙。
0895nobodyさん
04/07/13 14:34ID:???0896nobodyさん
04/07/13 14:34ID:???0.3.4 なら eclips のプラグインマネージャから直でインストール出来た気がする (うろ覚え
そっちからなら取れるかも知れないし、まぁ試してみては。
文字化けっていうのが表示が表\示となるようなものなのなら
stripslashesを通せばよろし。
変換については>889にあるとおりどぞ。
0898nobodyさん
04/07/13 21:25ID:???作ろうとしているところなのですが、
画像をDBに格納する際に、いったんファイルとして
保存しなければならない点が何となくいやなので
できればそのまま直接DBに格納したいと思っているのですが、
方法がよくわかりません。
どなたか教えてくだされ。
0901nobodyさん
04/07/14 05:11ID:???0902nobodyさん
04/07/14 09:50ID:???画像ディレクトリ作ってファイル名だけDBへ格納すりゃいいじゃん
0903nobodyさん
04/07/14 10:20ID:???画像ディレクトリを作ろうとすると
ユーザーに対してパーミッションの変更など
よけいな操作を強いることになります。
したがって、画像をDBで管理したいと考えています。
0904nobodyさん
04/07/14 10:31ID:???そのへん使わないといけないなぁ。
ラージオブジェクト使うと色々と面倒なことが起きる場合があるから
>>902のように普通に保存するようにすればいいと思うよ。
0905nobodyさん
04/07/14 10:53ID:???ob_get_contents()
ob_clear()
でできました。
0906nobodyさん
04/07/14 14:33ID:???0907nobodyさん
04/07/14 14:33ID:???0908nobodyさん
04/07/14 15:09ID:k/PvMH0Mchmod("./log".$datcountr.".dat",0777);
fopen("./log".$datcountr.".dat","a+");
//fputs("./log".$datcountr.".dat","\r\n");
上記のファイル作成から書き込みの流れでfputs部をコメントアウトするとエラーは出ませんが
コメント外すとエラーが出ます
ファイル作成まではできているのでパスの指定が間違っているわけではなさそうなのですが
よろしくお願いいたします。
0910nobodyさん
04/07/14 15:22ID:???とりあえずfopenで拾ったハンドルをfputsのリソースとして使ってみなさい
$handle = fopen("./log".$datc(略
fputs($handle,"\r(略
こんな具合に。
参考までに
http://www.php.net/manual/ja/function.fputs.php
0911nobodyさん
04/07/14 15:22ID:???fputsの行とマニュアルのfputsのページを穴が空く程よく見ろ
0912nobodyさん
04/07/14 15:33ID:???無理なのでしょうか?目標はデータベースとのやり取りを考えています
0913nobodyさん
04/07/14 15:37ID:???最終的にレンタルサーバかなにか知らないけど、他人に迷惑かける環境でのテストは感心しない
0915nobodyさん
04/07/14 15:41ID:???0916nobodyさん
04/07/14 15:42ID:???やってほしくないのは、
-全世界に公開しているサーバーでテストすること。
-共用サーバーでテストすること。
理由は自分で考えて。
別にサーバーに特化したマシンが無くてもテストはできる。
とりあえず、手元のマシンに PHP と httpd をインストールしてみたらどうか。
勉強するには十分。
0918nobodyさん
04/07/14 15:49ID:???以前手元のマシンにPHP(最新版)をインストールしたところ
特定のサイトでPHPの初期画面(?)が表示されるようになり
閲覧が出来なくなってしまったんです。
その際は確か簡単にインストールが出来るという、パッケージを使いました。
それからPHPは専用のサーバが無いと無理なのかと考えてしまってたんです。
もう少し調べてみようと思います。ありがとうございました。
0919nobodyさん
04/07/14 15:54ID:???PHPマニュアルのインストールの項を熟読しろ
http://www.php.net/manual/ja/getting-started.php
0920nobodyさん
04/07/14 17:06ID:???> 特定のサイトでPHPの初期画面(?)が表示されるようになり
> 閲覧が出来なくなってしまったんです。
ん?もうちょっと分かりやすく書いてくれ
0921nobodyさん
04/07/14 17:48ID:tmsEgaLNこういう命令を見ると、
ああ、phpって本当にキモイなぁ
と思う。
HTTPリクエストによるファイルの取得を
ファイルのコピー風にするなボケ言語。
0922nobodyさん
04/07/14 18:01ID:???こういうカキコを見ると、
ああ、アンチphpユーザって本当にキモイなぁ
と思う。
ファイル空間をHTTPまで拡張して一元化・隠蔽しただけなのに
利便性などのメリットを語らずキモイとかゆうな似非原理主義者。
0923nobodyさん
04/07/14 18:08ID:???嫌ならそんなロジックにしなければ問題ない。
0924カポンコ
04/07/14 18:15ID:???質問は無いのかー!!
0925nobodyさん
04/07/14 18:18ID:???0926nobodyさん
04/07/14 18:20ID:???0927nobodyさん
04/07/14 18:22ID:???0928nobodyさん
04/07/14 18:27ID:???0929nobodyさん
04/07/14 18:43ID:???0930nobodyさん
04/07/14 18:48ID:VoMOFkAb>あいうえお
>かきくけこ
って表示させて、実際にログに記録するときは
<blockquote>あいうえお<br />かきくけこ</blockquote>新規入力文章ほにゃらら
とさせるのは無理矢理なんとか出来るのですが、
>>あいうえお
>>かきくけこ
>新規入力文章ほにゃらら
と引用部分が、どんどん入れ子状態になると出来ません。
なにか良いアイデアないでしょうか?
0931nobodyさん
04/07/14 18:52ID:???0932nobodyさん
04/07/14 18:54ID:???ログに保存する時は
>>あいうえお
>>かきくけこ
>新規入力文章ほにゃらら
のままにして、htmlに展開する時に行頭の>を頼りに、
タグをくっつけていくのが賢いと思います。
0933nobodyさん
04/07/14 18:55ID:???0934nobodyさん
04/07/14 18:59ID:0gUuBq5Cスタイルシート使えば?
0935nobodyさん
04/07/14 19:01ID:???0937nobodyさん
04/07/14 19:22ID:???0938nobodyさん
04/07/14 20:29ID:???そんなことより4.3.8が
0939930
04/07/14 22:01ID:???アドバイスの通り、ログ保存は
>>>第一の引用>>>改行で続く>>第二の引用>第一の引用>改行で続く
みないな書式で、表示時に
<blockquote>
<blockquote>
<blockquote>
第一の引用<br />
改行で続く
</blockquote>
第二の引用
</blockquote>
第一の引用<br />
改行で続く
</blockquote>
としようとしたのですが、どうしても</blockquote>で閉じることが出来ません orz
0941930
04/07/15 01:52ID:???$value = "> > > てすと\n> > > 開業ですわ\n> > 2段目\n> 1段目";
$value_array = explode("\n",$value);
$flag = 0;
foreach($value_array as $value_line){
if(preg_match_all("/> /m",$value_line,$match)){
$match_num = count($match[0]);
if($flag == 0){
$line = substr($value_line,$match_num*2);
for($i=0;$i<$match_num;$i++){
$msg .= "<blockquote>";
}
$msg .= $line;
$flag = 1;
$match_num_oya = $match_num;
}elseif($flag == 1 && $match_num == $match_num_oya){
$line = substr($value_line,$match_num*2);
$msg .= "<br>" . $line;
}elseif($flag == 1 && $match_num < $match_num_oya){
$line = substr($value_line,$match_num*2);
$msg .= "</blockquote>" . $line;
$match_num_oya = $match_num;
}
}
}
$msg .= "</blockquote>";
0942nobodyさん
04/07/15 05:11ID:???0943nobodyさん
04/07/15 07:37ID:???0944nobodyさん
04/07/15 09:02ID:???0945nobodyさん
04/07/15 10:01ID:???使ってから文句イエーイ
私のもはりつけてみましょっかね。
昨日はろうとしたらアク禁でorz
0947nobodyさん
04/07/15 10:20ID:???php4が邪魔だぁ!!と文句を言われます;;
共存させる事は出来ないのでしょうか?
$value = ">>> てすと\n>>> 開業ですわ\n>> 2段目\n> 1段目";
echo block_quote($value);
function block_quote($v) { bq_match(); $v =
preg_replace_callback('/^(>*)(.*)$/m', 'bq_match', $v);
return str_replace("\n", '<br>', $v . bq_match()); }
function bq_match($m = false) { static $i; $i2 = $i;
return str_repeat('<' . (0 < ($i = strlen($m[1])) -
$i2 ? '' : '/') . 'blockquote>', abs($i - $i2)) . $m[2]; }
0950nobodyさん
04/07/15 15:05ID:???pg_connect が動作しなくなった
マニュアル見たら 引数が変ってる
なんてこったい _| ̄|○
0951nobodyさん
04/07/15 15:15ID:???0952nobodyさん
04/07/15 15:18ID:???4.3.8または5.0.0にバージョンアップするかmemory_limit機能を無効にしろだと?
うちは4.2系だから辛いなぁ・・・
ここは漢らしく一発memory_limit OFFでいくか?
誰か俺もmemory_limitで対処するぜっという仲間はいない?←と同志を募るあたり女々しい
0953nobodyさん
04/07/15 17:08ID:???DB関係の変更だけで済むのならいいんだが、順次対処していって、どつぼにはまるのは嫌嫌嫌嫌
>>952
> うちは4.2系だから辛いなぁ・・・
4.1系のおいらは もっと辛い
> ここは漢らしく一発memory_limit OFFでいくか?
うーむ・・・
0954nobodyさん
04/07/15 17:17ID:IpnLix62ちなみにPHPバージョンは4.3.7
削除してインストールし直さなきゃならないなら5.0.0にしようかな
0955nobodyさん
04/07/15 17:53ID:At3KjVK/make dist
make cleandist
した後に普通に上書きしていけば良いよ。
Linuxの話だが。
0956nobodyさん
04/07/15 17:57ID:IpnLix62すいません
Windowsの話でした_| ̄|○
0957nobodyさん
04/07/15 18:51ID:???windowsバイナリなら漏れはいつも上書きしてる
今まで問題起こったこと無いから多分大丈夫だ
ってか、削除後に上書きでも対して面倒じゃない気がするが
0958nobodyさん
04/07/15 19:19ID:IpnLix62d!
アパッチのサーバーモニターのバージョン表示では4.3.8になってるけど…
<?php phpinfo(); ?>で表示した画面のバージョンはまだ4.3.7…
う〜ん…アパッチでは4.3.8と認識してるからこのままでいいのかな
0959nobodyさん
04/07/15 19:21ID:???0960カポ
04/07/15 19:52ID:???net start apache
コレで十分だろ
0961nobodyさん
04/07/15 19:55ID:IpnLix62もちろんやりましたよ…
っていうか上書きはサーバーストップしないとできなかったですし
0962nobodyさん
04/07/15 20:57ID:+fR0HFAVプレビュー画面を表示させたいのですが
どうすればよいのでしょうか?
0963nobodyさん
04/07/15 21:03ID:???どう考えてもムリだろ
サーバにアップロードされなくてはPHPから手の出しようがない
どうしてもというならJavaか何かでクライアントサイド処理の話で板違い
0964nobodyさん
04/07/15 22:20ID:???checkdnsrrですかね?
使い方おしえてください
よろしくおねがいします
0965nobodyさん
04/07/15 22:29ID:???ちょっと待ってね、考えてみる。
レス数が950を超えています。1000を超えると書き込みができなくなります。