トップページ⇒php
1001コメント344KB

【PHP】質問スレッド Part5

レス数が900を超えています。1000を超えると表示できなくなるよ。
0001nobodyさん02/09/11 14:15ID:FWA0CpdU
レスは気長に待つのが良い感じかも。


■本家
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-10あたりにきっと誰かが……。
0809nobodyさん02/11/17 15:31ID:???
フォームからPOST形式で渡されたデータのタグ処理について良い方法はないでしょうか?
htmlspecialchars()を使えばいいと思いましたが、スクリプト中に数十個以上あるため
全部をいちいちやってられないのですが・・・
各変数に勝手に代入されちゃう前に文字列をまとめて処理する方法はないですかね?
0810nobodyさん02/11/17 15:34ID:???
入力時にエスケープするというアイディア自体
(・A・)イクナイ!! と思う。
0811nobodyさん02/11/17 16:04ID:YRaU2xF9
>>807
正直に申しますと
FFアドベンチャーがあまりに負荷が高いと書いてあるので
PHPにしようとがんばっているところです。

>>808
それをPHPで書く良い方法ないですか?
081280902/11/17 16:13ID:???
>>811
おいおい、俺も作ってるんだけど・・・

$_POST = array_map("htmlspecialchars", $_POST);
これで良いのかな。さすが俺。
081380802/11/17 16:27ID:YRaU2xF9
>>812
どのあたりよ?
こっちは250行目のあたりで
悩んでる。
それ以外は ほぼ完成してる
ここの部分ができれば、後はバクだしして おわりっす。
081480902/11/17 16:38ID:???
FFAv0.45か・・・
俺はma-tiさんの0.47使ってるからな。
クッキー関連とかロック関連とかまだまだだが。
まあ、まだPHP歴3日だし。
配布するつもりはあるのかな?それなら俺作るのやめようかな・・・
081580802/11/17 17:30ID:YRaU2xF9
>>814
公開できるような綺麗なものじゃない
スパゲティーだから
0.45と0.47って どう違うよ?
081680802/11/17 17:42ID:YRaU2xF9
>>814
EBS お願い
081780902/11/17 17:48ID:???
>>815
>ver.0.47: 2002年4月28日配布開始
>・ソースを最適化して75.2KB→63.1KBに成功!
>・若干早くなったと思います。本当に若干。。。気持ち程度。。。

つまりはあまり変わらないと思う。
俺は公開&配布予定だから、使うんだったら最新版のほうが良いし。
まあ、予定は未定だが。

EBSはプレイしたことないからよく知らん。
081880802/11/17 17:52ID:YRaU2xF9
>>817
ソース公開しますわー
まだ 作りかけのでよいかい?
というか 手伝って

それか ほかに有名どころのゲームをPHPお願いしたい
yomiサーチでもOK
できれば ebs
081980902/11/17 18:01ID:???
>>818
元々俺がPHP化しようとしてる理由は
『自分の改造しまくってるFFAが負荷やばいためPHP化しよう』と思ったが、
既にすごく汚くてとてもやる気がおきなかったため、
とりあえず軽量の原作版から作って
公開してそれから自分の改造したいように変えていこうって考えなわけ。
だからFFA以外は今のところする気はないな。設置してないし。
082080902/11/17 18:03ID:???
因みに最終的にはSQL使おうとまで考えてる。
0821nobodyさん02/11/17 18:06ID:FpRG38IL
こっちで汁!

++++FF ADVENTURE++++
http://pc.2ch.net/test/read.cgi/php/991910275/l50
082280802/11/17 18:06ID:YRaU2xF9
PHP化する理由は
無料HPを運営していて あまりにFFAとEBSの設置が多いので
負荷がすごくなり、他のユーザー様にご迷惑がかかるので
必要に迫られて作っています。

言わば逆の立場ですね。お互い。

で どうするよ?
082380902/11/17 18:13ID:???
[email protected]
作りかけでもいいから送ってくれれば俺が作ってる奴も
送り返すよ。俺もランキングの部分はまだ出来てないけど(汗
0824nobodyさん02/11/17 18:34ID:n7xO86Z7
>>822
完成の暁には漏れに適価で売ってはくれまいか?
0825PHP初心者02/11/17 19:18ID:yD7j6+V5
なんだかプロジェクトが始まったようですね。。
皆さん、がんがって下さい(≧∇≦)ノ
0826808(さるる)02/11/17 19:47ID:YRaU2xF9
>>824
完成したら
http://cgi.aaacafe.ne.jp
ここで、簡単に設置できるようにする予定なので
がんばります
082780902/11/17 19:54ID:???
俺は普通にソース公開で配布する予定です。
FFAは改造して何ぼですからね。
FFA推奨委員会も寂れているようなので
どんどん推奨していきたいです。
0828nobodyさん02/11/17 21:11ID:???
>778
それは知ってるよ……。
とりあえずPECLのmailparse拾ってきて入れてはある。

で、公式サイトmailparse関数下部のスクリプトを走らせたら
signal 11吐いてapacheの小プロセスが死ぬ。
コマンドラインから実行するとphpがcore吐いて死亡。

諦めるかな……。
0829nobodyさん02/11/18 01:56ID:???
>>822
FFAは負荷もだが、転送量も問題なのだが。
PHPにしようがダメなモンはダメ。
0830nobodyさん02/11/18 17:18ID:???
PHPは内部では、
関数名、クラス名、メソッド名の大文字小文字の区別をしないようなのですが、
これを区別させるようにする事は出来ないのでしょうか?
0831nobodyさん02/11/19 03:59ID:GvT3tsAV
内部というか言語仕様だと思うけど、
区別できれば何かメリットあるの?
自分で読みやすいようにdoSomething(hanyan)みたいにするけど。
083278002/11/19 11:50ID:9dfDoISG
どなたか>>780の質問に答えていただけないでしょうか・・・
催促して申し訳ありませんが、よろしくお願いします。
0833nobodyさん02/11/19 12:28ID:9zdIs68p
PHP-4.2.2−DSOモジュール版とCGIバイナリ(コマンドライン版)−をコンパイルして使用しています。
ブラウザ出力するスクリプト中、shell_exec関数を使ってバイナリ版用のスクリプトを呼び出しました。

<html>
<?php

$envs=array("QUERY_STRING","REQUEST_METHOD");
for($i=0;$i<count($envs);$i++) {
putenv($envs[$i]."=".getenv($envs[$i]));
}

$str=shell_exec("sample");

?>
</html>

#!/usr/local/bin/php -q
<?php
echo "こんにちは";
?>

ここで上記$strには「こんにちは」が格納されると思ったのですが、
「X-Powerd-By: PHP/4.2.2 Content-type:text html No input file specified.」
という文字列が格納されてしまっています。なぜなのでしょうか?
($envsからの行を加えたとたんに、このエラーが出力されるようになりました)

Webで調べたのですが、解決策として示されていた--enable-discard-pathでも解決しません
0834nobodyさん02/11/19 16:03ID:???
GDで半角カタカナを出す方法はありますか?

ImageString ($im, 11, 10, 10, "オマエモナー", $color);

とすると、イメージ内の文字が化けて出てきます。
どなたか宜しくお願いします。
0835sage02/11/19 23:29ID:aA08ojgX
初心者な質問ですいません。
ファイルが存在するかを調べるfile_existsというのがありますが、
ディレクトリが存在するかを調べるものはないのでしょうか?
よろしくお願いします。
0836nobodyさん02/11/20 08:24ID:???
>>835
オープン出来るか出来ないかで判断できるだろ
0837nobodyさん02/11/20 08:28ID:???
>>835
file_existだとディレクトリも含まれる。
一般のファイル is_file()
ディレクトリ is_dir()
シンボリックリンク is_link() #Winでは使えない。
0838nobodyさん02/11/20 10:37ID:???
落穂拾い...

>>832
スレッド使うのが常套手段ですが、PHPではアタリマエのようにスレッドが
使えないので基本的に厳しいです。

ので、シェルを使ってバックグラウンドで走らせるしかないでしょう。「色々な処理」
が何なのかわからないので、もっとメタな解決方法はあるかもしれませんが。

というわけで
$pid = getmypid();
foreach ($urls as $url) {
`curl $url > /tmp/$url.$pid &`;
}
とかして後はリダイレクトされたファイルを処理する、くらいでしょうか。どうやって
個々のcurlが終了したかを判断するのもまた面倒ですが、とりあえずファイルサイズ
見るとかでもいいんじゃないでしょうか?とりあえず、ですが。

最後にファイルを消すのもお忘れなく。register_shutdown_function()とか。

>>830
どーしても、どーしても、とおっしゃるのでしたらパッチ書いて差し上げますが、あんまり
うれしいこと無いと思いますよ。Zend Engine2ではCase Sensitiveにしよう、という話も
あったのですが、後方互換性的に問題ありありということで却下になりました。

メリットとしては
(1)関数やオブジェクトテーブルのlookupが早くなる(今はtolowerして処理してます)。
(2)普通の言語っぽくなる(笑)
くらいしか思いつきませんが。
0839nobodyさん02/11/20 11:59ID:GqTHpGaW
PHPファイルをアップロードした時に、
パーミッションは644との認識なのですが、
Hファイルや、INCファイルも644としてよろしいのでしょうか?
また、PHP、H、INCファイルをアップロードするには
転送モードはバイナリ?テキスト?どちらなのでしょうか?
0840gn355my002/11/20 13:21ID:???
>>839
ご自身で試すわけにはいかないのですか?
0841nobodyさん02/11/20 13:26ID:???
>>839
テキストエディタで開いてテキストファイルだったらテキストモード。
パーミッションは、拡張子だけじゃ分からん。
そのスクリプトでどう扱われているのかによる。
READMEを嫁
0842sage02/11/20 14:18ID:???
>>837
助かりました。ありがとうございます!
>>836
パーミッションによってはオープンできない物もあると思うのだが、
違うかな。。
0843nobodyさん02/11/20 18:27ID:eNXAFipW
PHP4.2.2でFastTemplateを使おうと思ったのですが、
サーバに入っていません。

http://www.thewebmasters.net/php/FastTemplate.phtml
ここから取ってきたモノをincludeしてやろうと思うのですが
誰か他に試した方いませんか?

class.FastTemplate.php3
3が付くのが気になります...
084484302/11/20 19:09ID:???
自己レス
http://ns1.php.gr.jp/pipermail/php-users/2001-August/001489.html
この辺を参考にしてみます。
0845nobodyさん02/11/20 22:56ID:???
>>831,838

何を意図していたかと言うと、
メソッドのオーバーロードが実装されるまでのつなぎとして、
function func(&$val)
{
  $classname = get_class($val);

  switch ($classname) {
  case strtolower("MyClass1"):
.
.
  case strtolower("MyClass2"):
.
.
  }
}

とする時に、strtolower()がちょっと邪魔だっただけなので…
0846nobodyさん02/11/20 23:33ID:1jUBHxNp
こんばんは〜( ・∀・)
今日ウチも自宅サーバーに挑戦しようと思い、
とりあえずWindows-Apache環境でPHP入れて、php動くようになったんですが、
一つ気になることがあるんです。
Apache側の設定で、
LoadModule php4_module c:/php/sapi/php4apache.dll
AddModule mod_php4.c
AddType application/x-httpd-php .php .phps
PHP側の設定で、
;include_path = ".;c:/php/includes;c:/php/pear"
doc_root = "C:/Program Files/Apache Group/Apahce/htdocs"
extension_dir = "c:/php/extensions"
の3行を設定した末、phpinfo()による動作確認でページの表示は認められたんですが、
変数の受け渡しなどが全くできないのです。
たとえば
http://localhost/index.php?query=hoge
のqueryが受け渡されないんです。

Apache環境に変えた理由は和製のAn Httpdを使用していたところ、
同じような現象がありまして困ってます(´・ω・`)

Apacheの.incが認識されていないかとアホなことを考え、
使わない環境も考えたんですが変数の受け渡しだけがどうもうまくいきません。

php.ini側の設定に問題があるのでしょうか。
それとも他に何か設定が必要なのでしょうか?
説明不足かもしれませんが・・・ご教授お願いします( ・∀・)ノ

ApacheのバージョンはApache 1.327です。
0847nobodyさん02/11/20 23:41ID:???
$_GET
084884602/11/20 23:58ID:9aYPHyGQ
どうも~
言い忘れてましたが、現在もレンタル中なんですが、
そちらの方では変数の受け渡しは出来ましたヽ( ´¬`)ノ
084984602/11/21 00:06ID:XBf4tF8P
どうも~
言い忘れてましたが、現在もレンタル中なんですが、
そちらの方では変数の受け渡しは出来ましたヽ( ´¬`)ノ
0850nobodyさん02/11/21 00:30ID:???
>>847
気付いてもらえないようで...
085184602/11/21 00:35ID:XBf4tF8P
>>847
ありがとうございます。
extract($_GET);
ですね〜
085278002/11/21 01:07ID:???
>>838
ありがとうございます。
正直、何を言われているのかサパーリなのですが(;´Д`)
頑張って勉強します。
やっぱスレッド使えないのは痛いですねえ。
ちなみに「いろいろな処理」というのは簡単に言えば
「配列に入れてソート」です。
データが複数のページにまたがっているので全部まとめてしまおうと。
0853nobodyさん02/11/21 01:15ID:???
PHPを使えば掲示板が作れると聞いたのですが
どうすればいいのでしょうか?
プログラミングとか初心者なんです。
昨日、店に行ってVisualStudioっての買ったのですが
これからどうして良いのか分かりません。
お店の人はこれがあればプログラミング出来るとの事なんですが・・・
0854nobodyさん02/11/21 01:27ID:???
VisualStudio買っちゃったんだ……。すげぇな。
掲示板を作りたいんなら、メモ帳でいいとおもうよ、うん。
0855nobodyさん02/11/21 01:33ID:???
Visual P# ですか?
0856nobodyさん02/11/21 03:04ID:???
ネタネタ。
0857nobodyさん02/11/21 10:45ID:???
これを機にC言語で作ってみるとか。
0858nobodyさん02/11/21 10:53ID:???
JavaScript にすべきです。
0859nobodyさん02/11/21 12:03ID:???
>>858
何をJavaScript にすべき?
0860nobodyさん02/11/21 14:05ID:???
>昨日、店に行ってVisualStudioっての買ったのですが
>これからどうして良いのか分かりません。

これがホントならこの人は間違いなく・・・モゴモゴ

普通はPHP関連のHPを収集してPHPの環境等を調べて
PHPをインストールして、HPにあるサンプルで2時間ぐらい遊ぶ
そして、初心者に評判のいいPHP本を調べて購入して勉強

構文を覚え、これをするには何が必要かが分かるようになって
初めて市販の開発ソフトを購入→管理・運用が楽→ウマー
0861nobodyさん02/11/21 21:49ID:YPJ0mbwG
セッションを飛ばすところまでは何とかいったのですが、
一度飛ばして、そこから次のページへ飛ばそうとしても上手く飛びません。
また、FORMによるデータの受け渡しもまったくできない状態だと判明しました。
原因の心当たりがある方はいらっしゃりませぬか?
0862nobodyさん02/11/21 22:29ID:???
>>4
0863nobodyさん02/11/21 22:35ID:???
しかし、マニュアルに堂々と書いてあることを聞く奴らって
どういう神経してるんだろうね?
0864nobodyさん02/11/21 23:19ID:1XZhJXxJ
こういう神経です
086586102/11/21 23:21ID:YPJ0mbwG
一度はセッションも飛ぶのですが、それ以降が上手くいきません・・・
勿論>>4も設定しました
0866nobodyさん02/11/21 23:36ID:???
>>865
ソースは?PHPのバージョンは?
もし自分が質問するほうじゃなくて
答えるほうの立場だったらその説明で十分だと思う?
0867nobodyさん02/11/21 23:49ID:???
>>866
>原因の心当たりがある方はいらっしゃりませぬか?
だから『俺は無い』とでも答えておけばいいんじゃねーの?
0868nobodyさん02/11/21 23:56ID:???
>867
無ければ答える必要ないんじゃねーか?
あるやつが答えりゃいいだけだろ?
086986102/11/22 00:03ID:6zsUquR2
言葉足らずですいません
今回はLinux環境で動かしているのですが、まったく同じソースでWindows版においたときの動作確認はとっています。
PHP4.2.2です
0870nobodyさん02/11/22 10:04ID:HEeXMk8V
imap_setflag_full($mbox,"1","\\Deleted");
上記で削除フラグがつけられると思ったんですが、だめでした。
ためしに既読のフラグをつけようと
imap_setflag_full($mbox,"1","\\Seen");
をやっても新規のフラグのままでした。
一度フラグを削除してからでないとだめなのかと思い、
imap_clearflag_full($mbox,"1","\Recent");
imap_setflag_full($mbox,"1","\\Seen");
とやってもだめでした。
マニュアルもあまり詳細がのってないので前に進めません。
どなたかご教授ください。

0871>>87002/11/22 10:06ID:HEeXMk8V
環境を書くのを忘れました。
OSはRedhat7.3
接続は
{localhost/pop3:110/notls}INBOX
でしています。
PHPのバージョンは4.2.3です。
よろしくお願いします。
0872 ◆Kiss.FX29M 02/11/22 10:17ID:???
>>870
imap_datele で削除マーク
imap_expunge で削除
としてたよ俺は。
0873>02/11/22 10:21ID:HEeXMk8V
>>872
削除ができるのは私も確認しました。
でも、
imap_datele($mb,"1");
$overview = imap_fetch_overview($mb, "1");
foreach($overview as $value){
$flag = $value->deleted
}
echo $flag;
imap_expunge($mb);
で、途中のフラグを表示してから削除してみても、
なぜか、新規フラグがたってました。
0874 ◆Kiss.FX29M 02/11/22 10:29ID:???
>>873
pop3での接続じゃむり...ってか、反映しないのではなかったかなぁ。それ。
最近使っていないので、ほとんど忘れてる。

0875>>87002/11/22 10:31ID:HEeXMk8V
以下みたいにわかりやすくして、みてみましたがNGでした。
$mb = @imap_open($host, $user, $pass);
$overview = imap_fetch_overview($mb, $msg_no);
imap_clearflag_full($mb,1,"\\Recent");
imap_expunge($mb);
print "<pre>";
print_r($overview);
print "</pre>";

pop3だとフラグつけられないのかな?


imap_close($mb);
0876>>87002/11/22 10:33ID:HEeXMk8V
imapで接続したらあっさりフラグが変わりました。
ありがとうございました。
0877>>87002/11/22 12:50ID:HEeXMk8V
でも、一度メールのヘッダを取得すると、Recentのフラグが消えてしまう。
プラス、Recentのフラグだけつけることができない。
なんで?
使用なの?
0878nobodyさん02/11/23 12:58ID:???
最新版で直ってないバグ。
gmdate()で漢字が文字化けする。
関数内でstaticを使い、同時に複数の同じスクリプトを走らせると
異常に重くなる。globalだと問題ない。
0879nobodyさん02/11/23 20:34ID:twAAlTTS
フォームから配列をhiddenで渡したいんですが。
配列はこんな感じで
$val[0]=array("a","b","c");
$val[1]=array("d","e","f"); あって
<input type="hidden" name="val[]" value="<? print serialize($val); ?>" >
やってもうまくいきません。

目的はフォームで確認のために$valを表示させ、OKならPHPで$valを処理。
ヘルプお願いいたします。
088087902/11/23 21:06ID:???
自己解決致しました。
0881nobodyさん02/11/23 21:11ID:nnNnwbKG
>>879
自己解決したら解決法も書いておくと他の人に親切。
まだここ見てたら書いておいてみてくださいな。
0882880=87902/11/23 21:37ID:twAAlTTS
ttp://php.joeysmith.com/manual/ja/function.serialize.php
にあるユーザーのレスにあるpropogateというファンクションで済ませました。
ひたすらval[0][0]からval[1][2]をアウトプットしてます。

でもserialize()で簡単にできそうな気がするんですが。
なぜか、879でHTMLソースはvalの値が化けていました。
0883nobodyさん02/11/24 15:09ID:rESUx17L
「goto ラベル」でラベルの位置までジャンプさせるようなものは
PHPにはありませんか?
088488302/11/24 15:29ID:???
調べてみたのですが、どうもなさそうですね……。
エラー処理で使うわけではないので諦めます。
0885nobodyさん02/11/24 16:22ID:???
gotoなんて使い道あるのか?
0886PHPさん02/11/24 19:32ID:???
PHPでホスト名を取得する環境変数がわかりません。
教えてください。

ちなみに PHP Version 4.0.6 で、Apache で CGI 動作しています。
$REMORT_HOST では取得できませんでした。。
0887の02/11/24 20:58ID:2iDKmUF0
phpinfo(INFO_VARIABLES);
とかやって見るのがよろし。
---
俺的ポータルサイトを作ろう
http://mysite.ddo.jp/
0888nobodyさん02/11/24 21:16ID:???
Uxxxx.ppp.dion.ne.jpみたいな、fusianasan的なこの文字列は
phpから取得できないの?
>>886 とかぶってるのかも
0889nobodyさん02/11/24 21:31ID:???
マニュアルぐらい調べてください。
4.0.6で動くかは知りませんがさっさとバージョンアップすべきです。
借りているならそんな所さっさとやめるべきです。
http://www.php.net/manual/ja/ref.network.php
0890nobodyさん02/11/24 23:19ID:???
echo gethostbyaddr( trim( $REMOTE_ADDR ));
trimしなくてもいいのかな?
0891nobodyさん02/11/25 01:15ID:TRGgbFwY
>>890
とりむさんいらないよ
0892PHP ◆DQN/AO/IPw 02/11/25 01:50ID:???
>>686
PEAR使え
0893nobodyさん02/11/25 20:09ID:MbgdCRNZ
phpでhtmlファイルの中身の書き換えを行いと思ってます。

AAAA.html
--------------
<html><body>
AAAA
</body><html>
--------------
↓
AAAA.html
--------------
<html><body>
BBBB
</body><html>
--------------

こんな感じの事がしたいのですが、スクリプトの書き方が途中までしかわかりません。。

<?php

$fp = fopen("./AAAA.html" , "w");
fwrite($fp , "test");
fclose($fp);

?>

これだと、AAAA.htmlは
--------------
test
--------------
になってしまいます。。良い書き方を教えていただけませんでしょうか。。
0894nobodyさん02/11/25 20:14ID:???
読み込んで
置き換えて
書き込む
0895nobodyさん02/11/25 20:16ID:???
         ,,.. -──- 、,      あはははははは!あはははははははは!
      ,. ‐'":::::::::::::::::   ....:``'-、       >>893 って本物のアホだな!あはははははは!
    ,/::::::::::::::::::: ....::::::::::::::::::::::::ヾ:、      ,....,   
   /::::::::::::::: ..:::::::::::::::i、::::::::::::::::::::'、':,.    /  ヽ  
  /::::::::::: ....:::::::::::::::::::::i:::!`、:ト、::::::::::::i i!   /     i
 i   ...::::::|'、ヽ;::::::::::::::|,!:!__リ,,'iヽ::l''、:'、  /     /
 | ..::::::::;:::i!:i ヾ:、ヽ:::::::::| リ , -─ リ i;il:ヽ, i    /
 l:::::::::::::::i',i ':i ,メ、 \;:l '゙    `、 !::::/l ...::::::/``ヽ
 l::ヽ:::::ヽ:i,レ',.゙-‐''''         ',/'/..::::::::::/    l'ヽ;、  
  i:::::>、:ヾ,' /     _,.. -‐'ヾi    ,レ'::::::::::;r':..   /  i_\
  i:::i. `'‐,ゝ    i"     '! ,.‐''" :::::::::::i゙::::::::.../.  ノ 'i\
   !::\ `ヽ    ':,     l{   ..:::::/::L,. ‐'":::::;/  !  l
   l::::::::`''‐r\    ヽ.,__,.ノィ'‐-‐''"'ォ‐--,゙弋''''"::::::;.ノ   l
   |::::::::;ィ:::}、 ``'''─--、-‐ニ┤ ___ハ,`''ーヽ-'=‐''":::   ,,/
   !::::::/ i:::|、\     ヾ´. i  ヽ   、''‐-、_::::::::::::::::: /
  i:::::/ i:::ハヽ`''‐、/l__\,| /    ヽ--、,.ニ=‐--‐'"
089689302/11/25 20:25ID:MbgdCRNZ
>>894
置き換えの部分がわかりません。。
どんな感じなのでしょうか。。
0897nobodyさん02/11/25 21:23ID:???
>>896 
ふつうに置換えれば・・・。
つか何みてやってん? マニュアルみろよ。
eregあたりからしれらべてみ。
http://jp.php.net/manual/ja/
089889302/11/25 21:36ID:???
exec ("touch ./AAAA_2.html");
$fp = fopen("./AAAA.html , "r");
$fp2 = fopen("./AAAA_2.html" , "w");
while (!feof($fp)){
$okikae = fgets($fp , 4096);
$after .= ereg_replace("AAAA" , "BBBB" , $okikae);
}
fwrite ($fp2,$after);
exec ("mv ./AAAA_2.html ./AAAA.html");
こんな感じでできました。スイマセン。
0899nobodyさん02/11/26 00:39ID:???
わざわざ exec 使うこと無いだろ
PHPにも、touch rename は用意されてる
0900nobodyさん02/11/26 01:42ID:???
900
0901nobodyさん02/11/26 08:55ID:???
>>898
正規表現使わないんだったら
str_replace
の方が良いようです。
0902nobodyさん02/11/26 15:40ID:???
phpは、これからの言語です。必ず正規表現で・・・
0903nobodyさん02/11/26 18:49ID:???
名前が日付のファイルを作りたいんだけどどうやったらいいの?
20021126.txtってみたいなの
いい初心者サイトって無いかな?
0904nobodyさん02/11/26 20:10ID:???
ある晴れた昼下がり 市場へ続く道
荷馬車がゴトゴト >>903 を載せてゆく
可愛い >>903  売られてゆくよ
悲しそうな瞳で観ているよ
ドナ・ドナ・ドナ・ドーナ  >>903 を載せて
ドナ・ドナ・ドナ・ドーナ 荷馬車が揺れる
0905nobodyさん02/11/26 20:19ID:???
>>903
$hizke.txt ただ日付を入れればいいと思うけど。
0906nobodyさん02/11/26 20:31ID:???
>>904
ありがとう
http://jp.php.net/manual/ja/でfopenを見ろという事ですね

>>905
$hizke = gmdate("Ymd", time());
ってしろと言うことですね
0907ぽぽんた02/11/27 17:46ID:32F4cqjQ
ちょこちょこ質問で見かける fsockopen についてなんですが・・・
fsockopen でデータを取得すると、どうも(低い確率ですが)
一部文字化けしませんか?私の取得方法がおかしいのかとか
考えましたが、サンプルとかと比べてもそれほどおかしなやり方は
していないと思うのですが・・・・。
過去ログや、googleで調べても出てこないのですが、他の人は
こういう現象が起きたりしていないのでしょうか。

【手順】
・fsockopenで目的のURLをオープン。
・各種パラメーターを fputs で送る。
・while でループして fgets でデータを取得
・ソケットをクローズする。

ってな感じです。

$sock = fsockopen( "www.xxxxx.xxx", 80 );
fputs( $sock, "xxxxxxx\n" );
fputs( $sock, "xxxxxxx\n" );
fputs( $sock, "xxxxxxx\n" );

while( !feof( $sock ) ) {
$str = fgets( $sock, 4096 );
echo $str;
}

fclose( $sock );

ちなみに、一度ソケットを利用すると再び同じPG内で
ソケットを利用しようとしてもオープンできません。
後片付けが悪いのでしょうか?
よろしくお願いします。
0908nobodyさん02/11/27 18:48ID:???
>>907
HTTPヘッダの改行コードは
\r\nでおながいします。
レス数が900を超えています。1000を超えると表示できなくなるよ。