まあ。ほとんどないとおもうが。。

このエントリーをはてなブックマークに追加
1マチコ先生
わがらねぇごどは、
おらにまかせろ!!
クソ質問から性の悩みまで
PHPに関するお問い合わせはここにきやがれ。
即効埋もれる自信はあるぞ。
2マチコ先生 : 2001/02/19(月) 19:25 ID:fo9D3ojw
速攻だ。。。
鬱だ。。
=======このスレは終了しました=====
3名無しさん@お腹いっぱい。 : 2001/02/19(月) 19:37 ID:???
>>1
おいおい、どうしたんだ一体??
何があったの?
4名無しさん@お腹いっぱい。 : 2001/02/19(月) 22:57 ID:VMbn6RF2
欝だ
51 : 2001/02/20(火) 13:58 ID:rBDM2OcE
>3
速攻を即効と。。。
ああ、、、説明までしてしまったよ(TT)
サヨウナラ
6名無しさん@お腹いっぱい。 : 2001/02/20(火) 15:42 ID:???
仮にもマチコ先生を名乗ったのなら「<? echo "イヤーン魔一珍具〜"; ?>」と
タオル1枚に任意のポーズで叫ぶべし。
7名無しさん : 2001/02/21(水) 00:41 ID:d4tOHtXs
初心者用スレがないので、ここで聞きます。(スレッドたてて叱られると困るので)
<INPUT TYPE="checkbox" NAME="pref[]" VALUE="1">北海道
から47個あります。
次のページで検索結果を表示させるのですが、そこでまた同じような
検索フォームも表示させて、前のページで選択したチェックボックスに
チェックを付けた状態で表示させたいのです。
こういう場合、どのようにすればよいのでしょうか。
今は、
if ($pref[1] !=""){
echo "<input type=checkbox name=\"pref[1]\" value=\"1\" checked >北海道";
} else {
echo "<input type=checkbox name=\"pref[1]\" value=\"1\">北海道";
}
と延々47個書いてます。
どう考えてもダサすぎると思うので。
8ねたろ : 2001/02/21(水) 02:06 ID:hkHYI4/Y
$prefname = array("北海道","青森県", (以下省略));
for ($i = 0; $i < count($prefname); $i++) {
print("<input type=checkbox name=pref[$i] value=1");
if ($pref[$i] == 1) {
print(" checked");
}
print(">$prefname[$i]\n");
}

でどうよ。
9ねたろ : 2001/02/21(水) 02:08 ID:hkHYI4/Y
インデントやり直し。スマソ。

$prefname = array("北海道","青森県", (以下省略));
for ($i = 0; $i < count($prefname); $i++) {
  print("<input type=checkbox name=pref[$i] value=1");
  if ($pref[$i] == 1) {
    print(" checked");
  }
  print(">$prefname[$i]\n");
}
107 : 2001/02/21(水) 03:20 ID:d4tOHtXs
>>9
ありがとうございました。
$prefname = array("","北海道","青森県", (以下省略));
for ($i = 1; $i < count($prefname); $i++) {
  print("<input type=checkbox name=pref[$i] value=$i");
  if ($pref[$i] == $i) {
    print(" checked");
  }
  print(">$prefname[$i]\n");
}
で思い通りにいきました。他の処理でも参考になりそうです。
11ねたろ : 2001/02/21(水) 03:45 ID:SFBBSOT6
>>10
こんな時間までお仕事ご苦労様です。
12名無しさん@お腹いっぱい。 : 2001/02/22(木) 22:58 ID:xBiEl826
わかってる人はこうします。可読性は落ちるが。
printfよりechoの方が早い。同じくforよりwhileの方が早い。
フォームで与える値はchecked/selectedをダイレクトに与えると
フォーム再表示時に吉。
あと、クオーテーション内で変数を展開させるのはご法度。
-----
$prefname = array("","北海道","青森県", (以下省略));
$i = 1;
while ( $i<=count($prefname) ) {
  echo "<input type=checkbox name=".$pref[$i]." value=chekced" ".$pref[$i].">;
  echo $prefname[$i]."\n";
  $i++;
}
137 : 2001/02/23(金) 02:33 ID:67fmt352
>>12
whileでもやってみました。

>あと、クオーテーション内で変数を展開させるのはご法度。

これはどういう意味ですか?
14ねたろ : 2001/02/23(金) 03:24 ID:???
>>13

print("Value is $hoge\n");
の用に、 ””のなかに変数書くこと。
僕は面倒だからよくやっちゃうけど
print("Value is " . $hoge . "\n")
とするのがいいのかもね。
ちなみにphp3ではクオーテーション内の変数は展開してくれるけど、
多次元の配列は展開してくれない
print("Value is $hoge[3].\n"); はオッケーだけど、。
print("value is $hoge[3][4]\n"); はだめだね。
15名無しさん@お腹いっぱい。 : 2001/02/23(金) 03:56 ID:/dSWLOBk
>>14
厨は逝ってよし。
${}
16名無しさん@お腹いっぱい。 : 2001/02/23(金) 13:05 ID:b.rfriYw
押しつけがましいこと言わないでも
別に好みじゃねえの?
17名無しさん@お腹いっぱい。 : 2001/02/23(金) 15:08 ID:bPbixCBU
純粋に好みの問題だ。だがな、速度は違うぞ。
どっちが速いか考えてみ。
18名無しさん@お腹いっぱい。 : 2001/02/23(金) 15:43 ID:???
>>17
どっちが早いんですか? 
1912 : 2001/02/23(金) 16:23 ID:er8hDHwc
だから、echoで変数を展開しないのが一番早いんだってば。
printは関数、echoはコマンドでしょ?
内部のリソースの食いが全然違う。
パフォーマンスチューニングとはこういうもんだよ。
20名無しさん@お腹いっぱい。 : 2001/02/23(金) 16:44 ID:???
echo "a" . $a ; がはやくて
print("a$a"; が遅いと言うことですね。

そんなにかわるもんですか?
2112 : 2001/02/23(金) 17:04 ID:er8hDHwc
個人でほそぼそやってるサイトならどっちでもいいけど、
1日1万ユーザー以上を捌くようなサイトなら、大違い。
22名無しさん@お腹いっぱい。 : 2001/02/23(金) 18:22 ID:b.rfriYw
なるほどリン
23名無しさん@お腹いっぱい。 : 2001/02/23(金) 20:07 ID:kxwRI9Lg
PHPで吐いたクッキーをJAVAスクリプトで取得すると日本語が化けるんだけど
なんででしょ?
24名無しさん@お腹いっぱい。 : 2001/02/23(金) 20:31 ID:LFdQYqsI
>21
<?
echo (time()."<br>");
for($cnt =1 ;$cnt <= 500000;$cnt++)
{echo ("a");}
echo ("<br>".time()."<br>");
for($cnt =1 ;$cnt <= 500000;$cnt++)
{print ("a");}
echo ("<br>".time()."<br>");
?>
で実験してらほとんどかわらなかったんんだけど・・・・・?
なお当方PHP4のmod_php4-4.0.3-moduleつかってます。

25電動ナナシ : 2001/02/23(金) 22:41 ID:???
microtime() でどう?
time() だと秒単位だよね。

あと for と while とか(for が遅いってのは PHP/FI->PHP3 への移行
ドキュメントに書いてあったけど、Zend Engine になった時点でこの情報は
もう古いような・・)、echo "$a<br>\r" と echo $a . "<br>\r" を
比較したらどう?

今職場なので試せない・・・。
26名無しさん@お腹いっぱい。 : 2001/02/23(金) 23:34 ID:3CcBfQsU
>>24
for の速度計ってどうする。
echo だけ10万行書けよ
27名無しさん@お腹いっぱい。 : 2001/02/23(金) 23:46 ID:hcsqrtx2
>>23
JavaScriptでの日本語環境はウルトラ問題ありまくりだから
解決は大変だぞー。特にねすけは最低。4.5ぐらいから突如unicode
意識し始めてバグまみれ。
PHPだと鯖設定によりEUCで吐いてる可能性あるから php.ini を
疑ってみよ。
28名無しさん@お腹いっぱい。 : 2001/02/24(土) 00:52 ID:BWmDvvaE
>19
詳細きぼーん。
>24
>26
もっと使いやすいベンチマーク考えてん。
29ねたろ : 2001/02/24(土) 01:17 ID:???
>>27
クッキー問題、小生も文字化け問題で、結局全部JavaScriptでかきました。

internal_encoding 、http_output ともに UTFにしても、化けました。
30名無しさん@お腹いっぱい。 : 2001/02/24(土) 01:47 ID:wczkl5o.
>>28
厨は逝ってよし
31ねたろ : 2001/02/24(土) 01:53 ID:???
>>25
それぞれ1万回ずつ、3セットやったらブラウザが死んでしまいました。
32名無しさん : 2001/02/24(土) 02:25 ID:???
>>30
逝ってよしヴァカうざい
3312 : 2001/02/24(土) 11:44 ID:TMAe/vso
>>31
CGI版を作って、1行目にset_time_limit(0);と書いて試してみて。
ps auxでメモリ+CPUの負荷を見れば、どっちが軽いか分るはず。
34print派 : 2001/02/24(土) 16:31 ID:8NrK7RQ6
>>12
PHPプログラム入門にはechoよりprintだと書いてあったんで
僕はprint派で逝っちゃいますね.
35電動ナナシ : 2001/02/24(土) 22:18 ID:???
性能の確保が最重要事項でなければ、書きやすさを優先していいでしょ。

でも >>12 の前提となっているのは、性能が最重要事項であるような環境だと
思うぞ。そういうところでは、ほんのわずかな無駄ももったいないという話に
なる。なんでデータベースで永続的接続 (pConnect 系の関数で実現) なんて
機能が求められているか分かる?

# 本来はコネクションプーリングとかってのは TP モニタ等のミドルウェアの
 任務だったけど、その意味を理解して使っている人って今は減っているんだろうな・・。
 別にそれの良し悪しを問うわけではないよ。
3612 : 2001/02/25(日) 12:42 ID:MVnTrEag
>>35
でもさぁ、PHPのなかでpg_pconnectとか書いてるとなんか鬱になる。
「アプリケーションサーバがやって」って感じ。
Cacheだけじゃものたりないよねぇ〜。
電動ナナシさんはプロっぽいから、そこら辺は分ってるぽいけど。
37名無しさん@お腹いっぱい。 : 2001/02/25(日) 14:53 ID:BPYwYYjE
なんか文字列比較の仕様がおかしくない?
文字列先頭で一致すると0が返ってしまうのはまずいと思うんだけど。
38名無しさん@お腹いっぱい。 : 2001/02/26(月) 04:19 ID:5V63qlVI
それはFAQ
39名無しさん@お腹いっぱい。 : 2001/02/26(月) 15:43 ID:WMoQ17m6
ここにもいたか、パフォーマンス厨房が(ワラ
40名無しさん@お腹いっぱい。 : 2001/02/26(月) 15:55 ID:Uk3SauUI
パフォーマンスもバカにできんぞ。
特にi-mode用鯖。
41名無しさん@お腹いっぱい。 : 2001/02/26(月) 18:24 ID:WMoQ17m6
■変数展開にかかる時間の考察

□環境
PHP4.04
Turbo Linux 6.1 Server
Pentium 500MHz

<?
&nbsp;&nbsp;$start = time();
&nbsp;&nbsp;$s = "";
&nbsp;&nbsp;for ($cnt = 1; $cnt <= 1000000; $cnt++) {
&nbsp;&nbsp;&nbsp;&nbsp;$s .= "a";
&nbsp;&nbsp;}
&nbsp;&nbsp;echo time() - $start . "<br>\n";
&nbsp;&nbsp;$start = time();
&nbsp;&nbsp;$s = "";
&nbsp;&nbsp;$a = "a";
&nbsp;&nbsp;for ($cnt = 1; $cnt <= 1000000; $cnt++) {
&nbsp;&nbsp;&nbsp;&nbsp;$s .= "$a";
&nbsp;&nbsp;}
&nbsp;&nbsp;echo time() - $start . "<br>\n";
?>

□結果
5
9

□考察
差が5sだとして、変数展開一回あたりの処理時間は、
5 / 1000000 = 0.000005 (5μsec)

□結論
俺はやっぱり気にせず、バリバリ変数展開を使う。
42名無しさん@お腹いっぱい。 : 2001/02/27(火) 14:03 ID:DairPmxM
俺の考察に、誰かケチつけてくれよ。
43初期不良 : 2001/02/27(火) 17:08 ID:4m12ylW2
2倍も違うのね。
じゃあ変数展開は避けるようにしよ。
どっちにしろ変数のあとに文字が続くときとかあるし。
44初期不良 : 2001/02/27(火) 17:29 ID:nA5qaP4c
と言うか変数展開するかしないかを比較するなら、
$s .= "$a";
$s .= $a;
を比較するべきでは?
45名無しさん@お腹いっぱい。 : 2001/02/27(火) 17:46 ID:fO7.zH8U
■ echo とprint 及び変数展開に関する考察

□ 環境
PHP4.04
Turbo Linux 6.1 Server
Pentium 500MHz

□ 調査対象
$s = "DEF";
のとき、

(1) echo "ABCDEFGHI";
(2) echo "ABC" . $s . "GHI";
(3) print("ABCDEFGHI");
(4) print("ABC{$s}GHI");

のそれぞれを100万回ループで実行した時の時間を計測する。
ただし、出力は、ob_start() 〜 od_end_clean()で破棄する。

□ 結果
(1) 4027.88ms
(2) 7244.46ms
(3) 4184.21ms
(4) 9924.15ms

□ 考察
さらに、さまざまなパターンでの計測が必要だが、それぞれの
関数コールにかかる時間は数μsecであることを考えれば、書き
やすいものを選択するのが良いと思う。

それ以上の考察は、私にとって不要なのでしない。
46初期不良 : 2001/02/27(火) 23:58 ID:nA5qaP4c
>>45
いやだからオーダーが重要なんでは?
繰り返さない処理ならその通りだけど。
47名無しさん@お腹いっぱい。 : 2001/02/28(水) 02:38 ID:7JL8XSEA
>と言うか変数展開するかしないかを比較するなら、
>$s .= "$a";
>$s .= $a;
>を比較するべきでは?
$s .= "z$a";
$s .= "z".$a;
48名無しさん@お腹いっぱい。 : 2001/02/28(水) 13:41 ID:???
>>46
オーダーとは、ページへの同時アクセス数のことでしょうか?
例えば、あるページにechoなりprintなりの出力系関数が
100個使われているとして、そこに同時アクセスが100あったと
します。
この場合に、echoを使っている場合とprintを使っている場合
に、レスポンスが大きく変わってくるという話ですか?

それは、いったい、どれくらいの違いがあると予想され、どうすれば
検証出来るとお考えですか?
49名無しさん@お腹いっぱい。 : 2001/02/28(水) 13:45 ID:???
>>46
それとも、オーダーとは、同一ページ内で使われている出力系
関数の呼ばれる回数のことでしょうか?
5048 : 2001/02/28(水) 13:51 ID:???
最近ちょっと忙しくて、いろいろ試す時間がなかなか取れない
のですが、時間が出来たら、Siegeでストレステストをするつもりです。

# siege - An HTTP regression, stress testing and benchmarking application

もっと気の利いたストレステストツールを持ってる人がいたら、
それで試してくれるとうれしいんだけど。

ちなみに、私の予想は、「なにをやってもそれほど変わらない」です。
それほどというのは、10ms未満くらいの違い、と思っています。
まぁ、Siegeでそこまで測れるかどうかというのが問題ですね。
5148 : 2001/02/28(水) 14:06 ID:???
ちなみに、テストに使用したコードはこれ。
-- debug.inc -------------------------------
<?php
function printd($msg)
{
nbsp;nbsp;printf("<!-- %s -->\n", $msg);
}

class dbgTime {
nbsp;nbsp;var $s = "";

nbsp;nbsp;function dbgTime() {
nbspnbsp;nbsp;nbsp;$this->s = gettimeofday();
nbspnbsp;}

nbsp;nbsp;function reset() {
nbsp;nbsp;nbsp;nbsp;$this->s = gettimeofday();
nbsp;nbsp;}

nbsp;nbsp;function printDiff() {
nbsp;nbsp;nbsp;nbsp;$now = gettimeofday();
nbsp;nbsp;nbsp;nbsp;$diff = ($now[sec] * 1000 + $now[usec] / 1000) - ($this->s[sec] * 1000 + $this->s[usec] / 1000);
nbsp;nbsp;nbsp;nbsp;printd($diff);
nbsp;nbsp;}
}
?>

-- test.php -------------------------------
<?php
&nbsp;&nbsprequire("debug.inc");

&nbsp;&nbsp$times = 1000000;

&nbsp;&nbsp$s = "";
&nbsp;&nbsp$t = new dbgTime;
&nbsp;&nbspfor ($i = 0; $i < $times; $i++) {
&nbsp;&nbsp&nbsp;&nbsp// put test code here
&nbsp;&nbsp}
&nbsp;&nbsp$t->printDiff();

?>
5248 : 2001/02/28(水) 14:07 ID:???
あー、変換に失敗してる。
鬱氏。
53名無しさん@お腹いっぱい。 : 2001/02/28(水) 17:22 ID:.g9DxqG.
siege だって、プ。遅くて使い物にならんよ。子供のおもちゃ。
5448 : 2001/02/28(水) 18:08 ID:???
>>53
子供のおもちゃでもさ、何もやらないよりはましでしょ?
で、あなたは何を使ってるの?
55名無しさん@お腹いっぱい。 : 2001/03/01(木) 07:04 ID:Gil5gQ1Q
php3.0.15のmail関数は自動でヘッダとか本文をJISにエンコードしてくれたりしますか?
5655 : 2001/03/01(木) 07:04 ID:Gil5gQ1Q
もち、国際化版ね
57ねたろ : 2001/03/01(木) 09:13 ID:???
>>55
本文はなにも言わなくてもJISに変換してくれるほか、対応したヘッダをふかしてくれます。
ASCII
58ねたろ : 2001/03/01(木) 09:14 ID:???
失礼、途中でポストしてしまいました。
ASCII文字以外がヘッダに含まれる場合は明示的にMIMEエンコードしてあげる必要があります。
59名無しさん@お腹いっぱい。 : 2001/03/01(木) 23:50 ID:Y7nlNi2I
おっす!おら悟空(さぶー)

ところでみなさんはPHPでオブジェクト指向訃露倉民具死手魔須華?
わたしは地道に構造化プログラミングして増す世。
60名無しさん@お腹いっぱい。 : 2001/03/02(金) 09:04 ID:aREvpzL6
>>59
OOもどき(class)はよく使いますよ。
でも、コンストラクタをオーバーロードできないのがいや。
あと、マンモス本なんかで、変数をオーバーライド(?)して、
「カスタマイズ」などと称するのがいや。
61名無しさん@お腹いっぱい。 : 2001/03/02(金) 10:24 ID:???
classよくわかんねー
62名無しさん : 2001/03/02(金) 13:14 ID:???
同じく、よくわかんねー。
マンモス本見ても意味わからん。
なんでこんなに理解力がないんだろうと思います。
63電動ナナシ : 2001/03/02(金) 16:16 ID:???
>>60-62
オブジェクト指向的な書き方については以下のコラムが参考になるよ。
"Object Oriented Programming in PHP: The way to large PHP projects"
http://www.phpbuilder.com/columns/luis20000420.php3

クラス変数が定義できないとか、カプセル化が弱い(全部 Public!)とかいった
制限はちょっときついけどね。ちなみにクラスメソッドは
Class::Method()
で呼び出せるって知ってちょっとうれしい。ドキュメントになくって、Pear の
ソースコードを見ていて発見した。
64名無しさん@お腹いっぱい。 : 2001/03/02(金) 17:18 ID:diq0AjCk
>>63
うーむ、マンモス本でアクセッサをほとんで(全然?)使ってない
というのも痛いが(つーか、OOP解ってないに、48000ペリカ)、
http://www.phpbuilder.com/columns/luis20000420.php3?page=5
もかなり痛いね。
オーバーロード位使わせろよ。
65電動ナナシ : 2001/03/02(金) 17:41 ID:???
>>64
> http://www.phpbuilder.com/columns/luis20000420.php3?page=5
> もかなり痛いね。
あー、それは見ててなんだそりゃって思った。痛いねー。
でも PHP には型がないってのがすべての元凶じゃない?
これ以上は言語仕様の見直しの話になると思うよ。

あとマンモス本の著者はオブジェクト指向には全然詳しくない人たちでしょ?
というか彼らに限らず日本の PHP のリーダーの OO 度が凄く低いんだと思う。
サンプルコードはアクセサ以前に分析自体おかしいと思う(その話はまたそのうちに)。

例えば、Pear のソース見てると Factory 使ってうまく実装の詳細を抽象化してるのに
日本だと "PostgreSQL だとこう書け" レベルだからね。やっと PHPLib が日本でも
それなりに認知されてきたけど、開発は Pear ほど盛んじゃないし、Pear に吸収?
統合?なんて話が出るようなものを今から広める意図が理解できない。
66超絶初心者 : 2001/03/03(土) 16:23 ID:n.OCJQfA
プログラム板でも質問していたPHP歴1週間のドビギナーです。
半角文字と全角文字の判別をつけるプログラムが分かりません!
現在、マンモス本片手に格闘中です・・・
67電動ナナシ : 2001/03/04(日) 12:44 ID:???
文字コード表見ればいい。

で、判別してどうするの?
判別する以外にもっといい機能があるかもしれないのに。
置換するなら strtr($string, "アイウエオ", "アイウエオ") とかね。
68超絶初心者 : 2001/03/04(日) 18:48 ID:vm9J//FA
>67
レスありがとうございます。
判別して、「半角文字が入力されていたならエラー画面を表示する。
という風にしたいのです。
置き換えも必要だったので助かりました。
6964 : 2001/03/05(月) 09:27 ID:???
>>65
> あー、それは見ててなんだそりゃって思った。痛いねー。
「みてみて、これ。ほら、すごいでしょ」
などという痛い人たちのテクニックが、人口に膾炙しないことを祈る。

> でも PHP には型がないってのがすべての元凶じゃない?

型が違う場合のオーバーロードは望まないんだけど、
引数の個数によるオーバーロード位は実装してほしいなぁ。

> 例えば、Pear のソース見てると Factory 使ってうまく実装の詳細を抽象化してるのに

まだ、PHP暦10日くらいなので、「Pear」が何なのか(今書いてる時点では)
知りません(^^;
ちょい、調べてみますね。
7064 : 2001/03/05(月) 09:47 ID:???
ちょっとPEAEについてしらべたら、PerlのCPANのようなものだと
判明。で、日本PHPユーザ会のPHPLibとPEARに対する取り組み
(見解)などを調べてみようと思ったら、いきなり、

http://www.php.gr.jp/phplib
ページが見つかりません

ときたもんだ。やる気あるんかい!(ワラ
7164 : 2001/03/05(月) 10:09 ID:???
> PEAR
おぉ、このような便利(そう)なものがすでにあるとは!(^^;
# 既に、インストールされてたのね(^^;

しかも、PHPDocという便利そうなものも発見。
7264 : 2001/03/05(月) 14:11 ID:JmQP/k0Y
PHPDocで作成されたPEARのドキュメント群も発見。
http://phpdocu.sourceforge.net/pear-docs/

# memo for 俺
73電動ナナシ : 2001/03/05(月) 15:43 ID:???
>>70
げ、本当だ。それ以前に広川さんのページより情報が古い時点でかなりやる気が
なさそうな気もする。JPUG ほどきちんと組織化する必要はないけど、だからと
いってあれじゃあなぁ。

>>71
PHPDoc は JavaDoc 互換という話だから、ドキュメント作成が楽になることを
期待したりして。

Zend Encoder とか使ってスクリプトのソースを見せない時代がくると
ドキュメントの質がとても重要になってくるから、PHP 使い込むなら慣れておいた
方がいいかもしれないね。
7464 : 2001/03/05(月) 15:56 ID:???
PHPDoc 3分クッキング(俺の環境でPEARのPHPDocを作る場合)

1. http://phpdocu.sourceforge.net/から最新のphpdoc-x.x.x.tar.gzをダウンロードする

2. 適当なディレクトリに展開する。
$ cd /usr/local/src
$ tar xvzf hoge/phpdoc-0.1.4.tar.gz

3. コマンドラインphpが使えない場合は、HTTP DOCROOTにln -s する。
# ln -s /usr/local/src/phpdoc-0.1.4 /usr/local/apache/htdocs

以下、ブラウザで使う場合の説明
4. 適当なターゲットディレクトリを作成し、nobodyで書き込めるようにする。
# mkdir /usr/local/apache/htdocs/php/PEAR
# chown nobody:nobody /usr/local/apache/htdocs/php/PEAR

5. ブラウザでPHPDocの作成ページを開く
http://hoge/phpdoc-0.1.4/phpdoc.php

6. 適当なソース、ターゲットを入力
directory: /usr/local/lib/php
target: /usr/local/apache/htdocs/php/PEAR/

7. submitボタンをクリックしてちょい待つ。

8. 出来上がり。
http://hoge/php/PEAR/index.html にアクセス。

PHPDocの文法は知らん。
7564 : 2001/03/05(月) 16:00 ID:???
>> 65
> 例えば、Pear のソース見てると Factory 使ってうまく実装の詳細を抽象化してるのに
> 日本だと "PostgreSQL だとこう書け" レベルだからね。やっと PHPLib が日本でも
> それなりに認知されてきたけど、開発は Pear ほど盛んじゃないし、Pear に吸収?
> 統合?なんて話が出るようなものを今から広める意図が理解できない。

やっと、これが解りました&激しく同意。
76電動ナナシ : 2001/03/06(火) 07:44 ID:???
PHPLIB へはこれでいける模様。
http://www.php.gr.jp/php/phplib/

サイト更新したときに忘れていたんだな、多分。
でもずっと誰も気づかないってことは、誰もアクセスしてないってことか?
寒いなー。
77名無しさん@お腹いっぱい。 : 2001/03/06(火) 19:00 ID:bewjkJK6
なんでpostgreとかoracleとかで関数分かれているのでしょうか。
dbに関して抽象化された関数とかありませんか?
<自分でやれ、ってこと?
78電動ナナシ : 2001/03/06(火) 19:08 ID:8sOoCYd.
そのための Pear であり PHPLIB。
とりあえずソース眺めてみなさいな。
79名無しさん@お腹いっぱい。 : 2001/03/10(土) 01:54 ID:GxptUnfU
>>78
PHPLIbなんですが、MySQLがデフォルトなんでそれを念頭に入れられた
サンプルを用意されて、MSSQLでは泣きそうになったり。

でもソースは凄くいい感じ。勉強になりますわ。
80名無しさん@お腹いっぱい。 : 2001/03/23(金) 18:55 ID:V1F3lA2M
phpでperlをSSIのように実行するほうほうをおしえてぇぇぇ

たとえば、アクセスログで
access.pl //アクセスログを環境変数とともに、ファイルに書き込む
をPHPで実行する場合h?

ssiだと、
<exec cmd"./access.pl">
でOKですが、PHPで
exec "./access.pl";
とすると、一応実行はされるのですが
環境変数等が記載されません。
タチケテェプロ
81電動ナナシ : 2001/03/25(日) 07:24 ID:???
>>80
よく分からないけど(特に Perl)、exec/system だと HTTP 関連の
環境変数が渡されないみたいだね。

必要な変数を putenv() 使って渡せばいいみたい。
例えばこんな感じ。
putenv("REMOTE_ADDR=" . $HTTP_SERVER_VARS["REMOTE_ADDR"]);
exec "./access.pl"
82ガシガシ:2001/04/27(金) 17:39 ID:vZWj/rt6
以下のスクリプトでファイルの先頭に書き込んでるつもりなんですが、
どうも上手くいきません。rewind()をつかっても駄目でした。
どうすればいいんでしょう。
--
<?
$fp = fopen("txt", "a+");
$date = date("Y/m/d H:i:s");

fseek($fp, 0);
fputs($fp, "$date\n");

fclose($fp);
?>
83電動ナナシ:2001/04/30(月) 06:28 ID:???
>>82
ん?それで書けたけど。

Permission の問題じゃないの?
httpd が動作しているユーザーに書き込み権限はある?
84まじまじ:2001/05/01(火) 00:43 ID:m6M39drc
PHPLIBの使い方がわかんない厨房です。
Webをいろいろ探したんですが、やっぱよくわがんねっす。
どうか厨房でもわかるように教えてけろ
85電動ナナシ:2001/05/01(火) 04:58 ID:???
今から覚えるなら PHP4 と Pear の方がいいと思うけどね。Pear の方が
ユーザーも機能もかなり増えてきているから。で、この辺読んでみたら?
・データベース抽象化
  http://www.phpbuilder.com/columns/sean20000712.php3
・PHP 拡張拡張リポジトリ (PEAR)
  http://www.phpbuilder.com/columns/allan20010115.php3

PHP3 なら PHPLIB しかないね。で、この辺読んでみたら?
・データベース抽象化と PHPLIB
  http://www.phpbuilder.com/columns/sean20000712.php3
・PHPLIB による認証及びセッション管理
  http://www.phpbuilder.com/columns/chad19990414.php3

英文だけど、コード見れば何をしているかだいたい想像つくと思う。
86電動ナナシ:2001/05/01(火) 05:33 ID:???
>>82
あ、ファイルの先頭に追加したいってことか。確かにあれじゃそうはなって
くれないね。

ということで、これでどうかな。
<?php
$date = date("Y/m/d H:i:s");
$fpr = fopen("test.txt", "r");
$fpw = fopen("~test.txt", "a+");
$r = fseek($fpw, 0, SEEK_SET);
fputs($fpw, $date . "\n");
while (!feof($fpr)) {
  $buf = fgets($fpr, 8192);
  fputs($fpw, $buf);
}
fclose($fpw);
fclose($fpr);
unlink("test.txt");
rename("~test.txt", "test.txt");
?>
87ガシガシ:2001/05/01(火) 09:46 ID:KK6/m1p2
>>86
これでできましたが、テンプファイルに書き込み、コピーというやり方になって
しまうみたいですね。(他のスクリプトもそうだった)
どうもありがとうございます。

88電動ナナシ:2001/05/01(火) 17:33 ID:???
>>87
ロックはきちんとしようね。
89名無しさん@お腹いっぱい。:2001/05/01(火) 17:55 ID:???
>86
別に↓のでいいと思うが。
------------------------------
$fp = fopen('log.log','r');
while($log[]=fgets($fp,8192){}
fclose($fp);
$fp = fopen('log.log','w');
fputs($fp,date("Y/m/d H:i:s")."\n");
$i=0;
while($log[$i]){
fputs($fp,$log[$i]);
$i++;
}
fclose($fp);
90電動ナナシ:2001/05/01(火) 18:30 ID:???
>>89
それも考えたけど
fclose($fp);
  :
fclose($fp);
の間でエラーが出て処理が中断されたらファイルが壊れてまずいかなーと
思ったので・・。上のバージョンなら処理が中断されても元ファイルは
無事で残る。
91名無しさん@お腹いっぱい。:2001/05/11(金) 23:38 ID:NVqhj/3Y
正規表現の質問なんですがお願いします。
[URL yahoo]といれたとき、
<A HREF=”URL”>yahoo</A>
となってほしいんですが・・

いまは、
‘¥(¥[http:[^ [¥]]*¥] \([^¥]¥[]*¥)\]'
とやってみたんですがうまくいきません・・・
92名無しさん@お腹いっぱい。:2001/05/12(土) 00:10 ID:???
全角だからじゃない?
93T女の竹田:2001/05/12(土) 13:44 ID:???
うーん、よくわからないけど、
s/\[(http:\/\/[^\s]+)\s+([^\]]+)\]/<A href=\"$1\">$2<\/A>/;
こういうことかな?
9491:2001/05/12(土) 14:36 ID:VCpRGYtI
>>92
うまく表示されないかなーとおもい全角にしたんですが・・・
>>93
$fom = "s/\[(http:\/\/[^\s]+)\s+([^\]]+)\]/";
$rep = "/<A href=\"$1\">$2<\/A>/";
eregi_replace( $fom , $rep , $str );
ということでしょうか?。うまくいきません・・・

エディッターでやってみるとうまくいくんですが。
そこいらの言語よりよっぽどむずい!!(正規表現)
95T女の竹田:2001/05/12(土) 14:49 ID:???
はぅっ
思わずPerlのことだと勘違いして答えてしまった…PHPのことは
よくわからないです、ごめんなさぁぁい(大汗
96あんてぃーく:2001/05/12(土) 15:28 ID:J8qUjUM6
<?php
$str = "あいうえお[http://www.yahoo.co.jp/ Yahoo]かきくけこ";

$str = preg_replace("/\[(http:\/\/[\-_\.!~*'()a-zA-Z0-9;\/?:\@&=+\$%#]+) ([^\]]+)]/", "<a href=\"\\1\">\\2</a>", $str);

echo $str;
?>
------------------------------------------------
ってな感じでどう?
PHP3.0.9以上でね。
9791:2001/05/12(土) 17:43 ID:VCpRGYtI
>>95
いえいえありがとうございます^^
>>96
自宅サーバーで思ったとうりになったことを確認したんですが、
借りているサーバーが、PHP3.06なんです^^;;;(ふるすぎ・・)
perlの正規表現となにが違うのか調べてみます。
ありがとうございました。
98電動ナナシ:2001/05/13(日) 00:36 ID:???
それセキュリティホールがあるから最新のやつにバージョン上げるように管理者に
言ったほうがいいよ。
9996:2001/05/13(日) 04:34 ID:???
同意。その方が双方幸せになれる。
10091:2001/05/13(日) 12:33 ID:E.Jy.HWU
>>98
うは、そうなんですか。
>>99
ですね。
101名無しさん@お腹いっぱい。:2001/08/17(金) 00:20 ID:???
age
102age:02/10/31 01:10 ID:???
age
103山崎渉:03/01/15 13:47 ID:???
(^^)
104山崎渉:03/03/13 17:32 ID:???
(^^)
105山崎渉:03/04/17 12:19 ID:???
(^^)
106山崎渉:03/04/20 06:15 ID:???
   ∧_∧
  (  ^^ )< ぬるぽ(^^)
107山崎渉:03/05/22 02:16 ID:???
━―━―━―━―━―━―━―━―━[JR山崎駅(^^)]━―━―━―━―━―━―━―━―━―
108山崎渉:03/05/28 17:13 ID:???
     ∧_∧
ピュ.ー (  ^^ ) <これからも僕を応援して下さいね(^^)。
  =〔~∪ ̄ ̄〕
  = ◎――◎                      山崎渉
109山崎 渉:03/07/15 11:21 ID:???

 __∧_∧_
 |(  ^^ )| <寝るぽ(^^)
 |\⌒⌒⌒\
 \ |⌒⌒⌒~|         山崎渉
   ~ ̄ ̄ ̄ ̄
110山崎 渉:03/08/02 02:31 ID:???
   ∧_∧
  (  ^^ )< ぬるぽ(^^)
111ぼるじょあ ◆ySd1dMH5Gk :03/08/02 05:06 ID:???
     ∧_∧  ∧_∧
ピュ.ー (  ・3・) (  ^^ ) <これからも僕たちを応援して下さいね(^^)。
  =〔~∪ ̄ ̄ ̄∪ ̄ ̄〕
  = ◎――――――◎                      山崎渉&ぼるじょあ
112山崎 渉:03/08/15 23:18 ID:???
    (⌒V⌒)
   │ ^ ^ │<これからも僕を応援して下さいね(^^)。
  ⊂|    |つ
   (_)(_)                      山崎パン
113nobodyさん:04/09/19 13:53:47 ID:???
&hearts,
114nobodyさん:04/09/19 13:54:18 ID:???
&hearts.
115nobodyさん:04/09/19 20:18:43 ID:???
&hearts;
116nobodyさん:2007/07/07(土) 17:42:01 ID:???
117nobodyさん:2008/06/11(水) 13:31:41 ID:???
118nobodyさん:2008/06/11(水) 13:32:12 ID:???
?:
119nobodyさん:2008/06/11(水) 13:36:09 ID:???
? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ?
? ? ? ? (‘A‘) ? ? ? ? なんだか無償にこぴぺしたくなる
? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ナノに初心者にはこぴぺできない
? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ?


120nobodyさん:2008/06/11(水) 13:36:47 ID:???
? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ?
? ? ? ? (‘A‘) ? ? ? ? なんだか無償にこぴぺしたくなる
? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ナノに初心者にはこぴぺできない
? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ?


?:

121nobodyさん:2008/07/31(木) 04:47:29 ID:81iVIGYF
それにしても、このスレが立って以来
ウェブの世界もずいぶん変わったな。
122nobodyさん:2008/08/01(金) 17:27:06 ID:BQiohXak
PHPに関する性の悩みってどんな質問があるんだ?
123nobodyさん:2010/01/31(日) 11:56:14 ID:lI7WB/Pn
>>122
性の悩む
124nobodyさん:2011/09/25(日) 01:29:16.66 ID:???
すげーw
125nobodyさん:2011/09/25(日) 10:33:45.69 ID:???
まだあったのか
それにしてもPHPって息長いよな。
126nobodyさん:2011/10/01(土) 00:58:07.49 ID:???
ほとんどない
127nobodyさん:2011/12/11(日) 23:26:49.78 ID:???
小人の逸話はコロボックル伝説が最高傑作
アリエッティはコロボックルのパクリ
ただ一寸法師は別格
128nobodyさん:2011/12/19(月) 01:36:44.77 ID:???
てst
129nobodyさん:2011/12/20(火) 20:47:38.99 ID:???
ないないw
130nobodyさん:2012/01/13(金) 20:51:16.78 ID:???
生存確認
131電脳プリオン 忍法帖【Lv=40,xxxPT】(1+0:8) 【32.7m】 :2013/05/06(月) 14:45:34.69 ID:??? BE:648653388-PLT(12080)
  ∧_∧
  ( ・∀・)      | | ガガッ
 と    )      | |
   Y /ノ      .人
    / ) .人   <  >_∧∩
  _/し' <  >_∧∩`Д´)/
 (_フ彡 V`Д´)/   / ←>>106
            / ←>>110
132nobodyさん:2013/08/23(金) NY:AN:NY.AN ID:0LWPgBxm
133nobodyさん:2014/01/14(火) 14:10:14.09 ID:???
まあ。ほとんどないとおもうが。。
134nobodyさん:2014/03/06(木) 13:58:28.63 ID:???
135nobodyさん:2014/05/29(木) 14:51:13.17 ID:???
ぬるぽ
136nobodyさん:2014/07/25(金) 09:39:33.81 ID:???
まあ。ほとんどないとおもうが。。
137nobodyさん:2015/02/15(日) 14:05:44.65 ID:???
あけおめ
138nobodyさん:2015/03/04(水) 23:44:49.77 ID:???
ことよろ
139nobodyさん
まあ。ほとんどないとおもうが。。