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

【PHP】質問スレッド Part4

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん02/06/02 15:32ID:f3afNVBG
レスは気長に待つのが良い感じかも。


<<参考>>

■本家
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を見よう。
0574nobodyさん02/08/03 17:46ID:???
option は閉じませう。
0575nobodyさん02/08/03 17:48ID:???
それくらいで挫折する>>571は明らかに努力が足りないだろう。
0576nobodyさん02/08/03 17:51ID:d5v1Xjwl
http://js-web.cside.com/index.html
057756702/08/03 21:41ID:Cg+prS4f
$c = new foobar;
print $c->abc->def;
print $c->def( $c->abc() );
class foobar
{
function abc() {
return "abc";
}
function def($str) {
return $str . "def";
}
}

できませんでした…こういうので良いのでしょうか?
0578osage02/08/04 00:19ID:???
>>577
ええっ!?
それはできないよ・・・
コード見ててっきり fetch はクラスかと思ってますた。

スマソ。

ちなみに想像してたのはこんな感じだった・・・
$a = new A();
echo $a->fetch->parse();

class A{
 var $fetch;
 function A(){
  $this->a = new Fetch();
 }
}
class Fetch{
 function parse(){
  return "return";
 }
}
0579nobodyさん02/08/04 01:20ID:???
$line = fgets($file,10);
lineには何が代入されてるんですか?
初歩でスマソ
0580nobodyさん 02/08/04 01:42ID:???
>>579
初歩過ぎるな
ファイルの1行が格納されてる
10バイトまでしかよみこまんよ
0581nobodyさん02/08/04 01:44ID:???
line(1)[lain]
《名》
 《1》《C》線,すじ.〓用例
*《2》《C》(文章の)行.〓用例
 《3》《C》綱,ひも,糸,針金;電線,電話線.〓用例
  :
0582nobodyさん02/08/04 01:58ID:???
なんか人に聞く前にやってみりゃいいだろって質問が多いな。
夏だからか・・・
ま、質問スレだからいいけどさ。
答えが返ってくるの待ってるより自分で試したほうが早いと思うんだけどなぁ・・・
0583nobodyさん02/08/04 02:38ID:???
>>582
夏だからじゃないと思うぞ。
PHP USERS ML も
Apache Newbie & User ML も
日本PostgreSQLユーザ会のMLも
ここも
常にそんな感じだ。

最新版にアップデートできないんです
この関数の使い方が分かりません。
○○ってできますか?
インストールについて。
設定について

こんなんばっかり。もうアホかと・・・
まあでも、ここはこれで良いんじゃないかな?
0584nobodyさん02/08/04 02:46ID:???
今PHP使える和鯖ってどのくらいあんの?
0585nobodyさん02/08/04 03:22ID:???
勝手に調べろ。
0586nobodyさん02/08/04 03:54ID:???
>>584
うちの鯖
0587nobodyさん02/08/04 16:22ID:???
>>584
うちも使える。
0588nobodyさん02/08/04 22:32ID:FmVTsZMs
吉野家コピペって、もうあるけどな
http://8931.com/yosinoya.php3
0589nobodyさん02/08/04 22:45ID:WODrMcDL
クラス内の変数をクラス内で変更したり参照したりする場合って
setHoge とか getHoge みたいな関数を作るべきなのはなぜですか?
0590nobodyさん02/08/05 03:50ID:6w73L64D
PHPDOC 1.0betaで吐き出されたHTMLファイルの内容が全部 "1"
になっちゃうんだけど、なんでだろ
0591nobodyさん02/08/05 15:02ID:9ovglZmC
すみませんが、
ttp://tohoho.wakusei.ne.jp/cgi/wwwboard.cgi
ここみたいに極端にシンプルな掲示板スクリプトで
PHPのものが欲しいんですが、
どなたかご存知ありませんか?

今、
ttp://php.s3.to/
の一番シンプルなのを落としていじってるんですが、
なかなか上手くいきませんで(´Д`;)
0592nobodyさん02/08/05 16:04ID:???
>>591
http://jp2.php.net/manual/ja/読んで自分で書け。
0593nobodyさん02/08/05 16:54ID:9ovglZmC
>>592
うぅ。来ると思った。WebProg板だけに(´Д`;)
自分で組むとこまでいかないのです。すみません…
0594nobodyさん02/08/05 17:06ID:MAH7KIMW
http://pc.2ch.net/test/read.cgi/php/1012902013/l50
>>593
これ読め
0595nobodyさん02/08/06 03:06ID:???
require("/a/b/hoge.php");
include("/a/b/hoge.php");

みたいな参照の仕方は出来ないんでしょうか?
0596nobodyさん02/08/06 03:17ID:???
普通に出来ると思うが?
059759502/08/06 03:55ID:???
何かしらエラーが出やがるんで。何でや、、
0598nobodyさん02/08/06 04:00ID:???
なら、エラーの内容書けよ。
0599nobodyさん02/08/06 11:58ID:???
実際のファイルパスじゃなくてURL上のパス書いてるに1票
0600nobodyさん02/08/06 17:32ID:fA0rzekK
>>571
おそらく&lt;(半角で)と&gt;(半角で)と思ワレ
060159502/08/06 22:20ID:???
禿げしく自己解決させて頂きますた。

include(require)先のスクリプト"hoge.php"内で読み込ませたい筈の.datファイル、そのパスの記述に問題が有ったみたいです。

public_html以下のみの記述(PHP_SELF形式)では、include(require)元スクリプトに影響されてパスがズレてしまっていたみたい(この辺りの云々はマトモに勉強してないのでワケワカランです)なので、

DOCUMENT_ROOT/PHP_SELF形式(/home/w/x/usr/public_html/a/b/hogeback.dat)に記述し直す事で何とか収拾を付けれました。

とりあえず無難に動作してくれとります。
0602nobodyさん02/08/07 01:21ID:VAylDQaU
超初心者なのですが。教えてください。
$a="1"というように格納しているのですが。
$aの内容を"01"に変換する関数ってありますか?
0603substr + 文字列連結02/08/07 01:39ID:4PvRJ60g
それくらいつくれば?
0604nobodyさん02/08/07 01:41ID:???
>>602
あります

>>603
プッ
0605nobodyさん02/08/07 01:44ID:???
>>602
$a="01"
0606nobodyさん02/08/07 01:56ID:???
>>604
ぐわーっ。そうかーっ。
やられました。
なんて初歩的なヤツを・・・
恥。
忘れてました。
ごめんなさい。
ということで、substr+文字列連結は取り消し
060760202/08/07 02:02ID:+JzxLnDq
謝罪して許される問題でもありませんので、
>>603 はsubstr+文字列連を使って同様の関数を作成、発表してください。

$a="1";
$a = sprintf("%02d", $a);
echo $a;
060860602/08/07 02:29ID:???
>>607
ASPでは、それくらいしかなかったんだもん・・・
分かったよ糞
$a = "1";
echo substr("00".$a, -2);

でも、直後に出力するなら printf で十分かと。
#あーはいはい、ささやかな抵抗だよ。見逃してくれ
0609602(騙り)02/08/07 03:59ID:+JzxLnDq
なるほどねぇ。
でもそれだと1桁と2桁の数字にしか対応できないので、
同じ泥臭いことをするのなら、

$a = "1";
if (strlen($a) == 1){
$a = "0" . $a;
}
echo $a;

としたほうがまだいいな。
(echoは単に確認のため)
0610nobodyさん02/08/07 04:28ID:???
それだと10桁とかになったとき大変だYO!
0611nobodyさん02/08/07 07:17ID:???
flushが機能しないんだけど、なんでだろう。
0612nobodyさん02/08/07 07:52ID:???
ブラウザのせいみたい・・でもよくわからない(iCab, Mac OS X)
0613nobodyさん02/08/07 09:32ID:VMPwCWen
PostgreSQL 7.2.1 + PHP 4.0.6で掲示板を作っているのですが、

$con = pg_Connect(....);
$rtn = pg_Exec($con, "SELECT date FROM bbs;");
$date = pg_Result($rtn, 0, "date");
echo strftime("%D %T", strtotime($date));

としたときに日付部分はいいのですが、時刻が正しく表示されません。
dateはtimestamp型で、psqlコマンドで試すと

SELECT date FROM bbs;
date
-------------------------------
2002-08-07 09:40:18.547459+09

こんな感じに表示されます。
0614nobodyさん02/08/07 10:41ID:2M6Lr5Mc
602ですけど。結局関数は存在するんですね?
VBで書くとformat()関数みたいな感じのやつ。
0615nobodyさん02/08/07 10:43ID:???
>>614
sprintf()

フォーマット関数はこっちの方が有名なので覚えておくように。
0616nobodyさん02/08/07 10:50ID:2M6Lr5Mc
>>615
ありがとうございます。
0617nobodyさん02/08/07 12:52ID:+A2h6L7O
>>613

Postgres の to_char() を使え。
SELECT to_char(date, \'YYYY-MM-DD HH24:MI:SS\') FROM table;
0618nobodyさん02/08/07 17:28ID:LGNcXjr1
windowsのCOM関数についてなんですけど、Excelで開いたタブ区切りtxtファイルの
fileformatをxlNormal(通常のxls)として保存したいのですが、うまくできません。

$excel->ActiveWorkBook->SaveAs(ファイル名)
だとfileformatの指定はできず、ファイル名の後に引数を入れてみるもエラー。
何かいい手を知ってる方いませんか?
0619名無しさん@Emacs02/08/08 02:20ID:k7ixfyCt
ローマ字をカナに変換したいのですが、どうすれば楽ですか。
逆ならkakasiを召喚するのですが。
0620nobodyさん02/08/08 02:51ID:???
http://www.csl.sony.co.jp/person/masui/OpenPOBox/romakana/

を真似て自分で作り、完成後公開汁!
0621nobodyさん02/08/08 16:53ID:vBVZKo6K
超初心者です。

Apache/1.3.26(win32)+PHP/4.2.2 で使っています。

<?
$a = 2;
$b = 3;
$c = $a + $b;
$d = $a * $b;
print ("a+b=$c a*b=$d");
?>

こういうのはちゃんと動いて「a+b=5 a*b=6」
と表示されるのですが、入力フォームを使うような
PHPだと表示されません。php.iniやhttpd.conf
の設定が間違っているのでしょうか?
0622nobodyさん02/08/08 17:09ID:cSicnTXD
>>618
自己解決しました。
SaveAs(ファイル名,1)
でオッケーでした。
あーあ、丸一日かかっちゃった。どこにも載ってないんだもん。
0623nobodyさん02/08/08 17:18ID:k7aUaTEg
初歩的な質問ですみません。
どなたか、数字をドル($)のフォーマットで
表示する方法をしてっる人いませんか?
たとえば$500を$500.00っていう感じに。
0624nobodyさん02/08/08 18:12ID:???
>>621
いい加減氏ね。
0625nobodyさん02/08/08 20:30ID:vemjog4K
>>621
ちゃんと$_GET["a"]とか$_POST["a"]とかで値とってる?
0626nobodyさん02/08/08 20:33ID:vemjog4K
メンテ性とか速度とか考えると、

function hoge(){
 global a;
 global b;
 global c;
 global d;
 global e;
 global f;
 global g;
}
って書くのと
function hoge(){
 global a,b,c,d,e,f,g;
}
って書くのとどっちがいいっすかね?
062762602/08/08 20:47ID:vemjog4K
すんません。$をわすれました。

function hoge(){
 global $a;
 global $b;
 global $c;
 global $d;
 global $e;
 global $f;
 global $g;
}
と
function hoge(){
 global $a,$b,$c,$d,$e,$f,$g;
}
0628nobodyさん02/08/08 22:03ID:???
(´-`).。oO(それ以前にそんなに大量にグローバル変数使うなよ‥‥)
062961902/08/09 12:30ID:???
>>620
どうも。結局これを使ってPerlで済ませてしまったです^^;
0630nobodyさん02/08/09 20:40ID:???
>>623
sprintf
0631nobodyさん02/08/10 12:53ID:???
おしえてー
<title> から </title> まで を正規表現ってどしたらいい?
0632nobodyさん02/08/10 14:01ID:???
/<title>.*<\/title>/
0633nobodyさん02/08/10 18:20ID:QBkji2dM
phpで<br>とかが<br />みたいな奴(XMLの空タグ)で出力されるんですが
これを普通の<br>で出すことはできないですか?
063463302/08/10 20:00ID:QBkji2dM
nl2brがこう出すみたいです
うーん、どうやればいいのだろう・・・
063563302/08/10 20:34ID:???
http://php.s3.to/tt/tt5.php
とやるしかなさそう…


http://ns1.php.gr.jp/pipermail/php-users/2002-March/006064.html
読むと萎えます
0636nobodyさん02/08/10 21:21ID:aZc5BP3W
PHPのアクセス処理はどうなっているのでしょうか?
例えば同時に10人がアクセスした場合、待ち行列をつくって一つずつこ
なしていくのでしょうか?
それとも同時に並行処理してしまうのでしょうか?
アクセス処理がもし待ち行列を作る場合行列はディレクトリ毎でしょう
か?
それともファイル毎でしょうか?

どなたか分かる方がいらっしゃったら是非よろしくお願いします。m(_ _)m
063763102/08/10 21:31ID:???
>>632
ありがとう
0638nobodyさん02/08/11 14:51ID:WDrSWwWG
質問させて下さい。
Webからadduserするにはどうしたら良いんでしょうか・・・
system()使ってadduserしても、ユーザー名の入力とかもできないようですし
権限も問題のようです。

もし、今までにやられたことのある方がおられましたら、助けて下さい。
0639nobodyさん02/08/11 23:35ID:???
>638
環境がわからんが、useraddやpwというコマンドはないかね。
権限はsudo入れとけ。
0640nobodyさん02/08/12 17:02ID:???
wgetのようなWebページ収集機能を持つプログラムで、
PHPで作成されたものをどなたかご存じありませんか?
Googleでキーワードをいろいろ変えて探してみたのですが、
見つからなくて、お聞きいたしました。よろしくお願いします。
0641nobodyさん02/08/13 00:10ID:6exRBoqt
php4.2.2+apache2.0.40が動かないです
インストール時に
ttpd: module "sapi_apache2.c" is not compatible with this version of Apache. エラー

php_function.cの関数は修正済み。
今は仕方ないので2.0.39つかってる
0642nobodyさん02/08/13 05:53ID:???
>>636
PHP は Apacheの中で動いている script ということはわかっている?
0643nobodyさん02/08/13 06:03ID:???
>>635
うげ〜。マジで萎えますな。さっさと PHP 捨ててしまいたくなる…。
でも、他に PHP 並に DB まわりや日本語処理をあまり考えずに使える
server side の script 言語って何があるんだろう? mod_perl は PHP
ほどには簡単とはいえないし、mod_ruby は動作実績に問題あるし、
mod_python もちょっとなぁ…。
0644nobodyさん02/08/13 08:40ID:SWrYGOaD
Perlではこんな感じで書いていたのですが、
PHPでgzip圧縮して転送するにはどうすればよいのでしょうか?

$|=1;
if($ENV{'HTTP_ACCEPT_ENCODING'}=~/gzip/ ){
print "Content-type: text/html\n";
print "Content-encoding: gzip\n\n";
open(STDOUT,"| /bin/gzip -1 -c");
}else{
print "Content-type: text/html\n\n";
}
0645nobodyさん02/08/13 10:37ID:5QDKpsPs
>>644
$gz = popen("/bin/gzip -1 -c", "w");
かな
064664402/08/13 12:07ID:SWrYGOaD
>>645
ありがとうございます。
Content-encodingや$|は設定しなくて良く
PHPだとそれだけで大丈夫なのでしょうか?
0647nobodyさん02/08/13 15:07ID:xrOsDf3v
>>642
すいません、まだ勉強不足なので。
ということはアパッチ側の設定の問題ということでしょうか?
0648nobodyさん02/08/13 21:53ID:qx1oerUj
フォームのsubmit後のページが
session_start()を使ったページ
だと、ブラウザの戻るボタンを押すと
フォーム内容がクリアされてしまいます。
内容を消えないようにしたいのですが、
何か設定などありますでしょうか?
0649nobodyさん02/08/14 00:44ID:SOfx286E
フォームのデフォルトをちゃんとセットしる
XSSに気を付けてな
0650nobodyさん02/08/14 00:46ID:fx/tWW0S
プログラムの質問じゃないんですけど、いいでしょうか。

知り合いがアダルトサイトを作ろうとしているのですが、
ちまたのアダルトサイトはとてもゴチャゴチャしているデザインですが
あれはやはり意味があるのでしょうか?
ゴチャゴチャして客を惑わせる作戦なのでしょうか?
知り合いはあのゴチャゴチャが嫌いでシンプル系のサイトデザインを
考えているようなのですが、あのデザインに意味があるなら
教えてあげようかと思いまして。
0651nobodyさん02/08/14 00:50ID:???
>>650
いちお、アダルトサイトの管理者。
ごちゃごちゃしてるのは、広告にクリックさせやすくする為。
最近のヤシは賢くなって来て、広告、なかなかクリックしなくなったからこーやってごちゃごちゃさせて
クリック率上げてんのよ。

うちのアダルトサイトではそーいう事はしてないが。
0652nobodyさん02/08/14 09:25ID:???
「友達・知り合い = 自分」

これ常識
0653nobodyさん02/08/14 11:03ID:cVpBwHDa
650に便乗質問だけど、アダルトサイトで、下の方にアイドルの名前を羅列してる
あのテキスト(隠してあるの)って何なの?
検索にひっかかるようにって作戦?
0654nobodyさん02/08/14 11:14ID:???



他 所 で や れ


0655nobodyさん02/08/14 11:28ID:???
              ☆ チン     マチクタビレタ〜
                         マチクタビレタ〜
        ☆ チン  〃  Λ_Λ   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
          ヽ ___\(\ `Д´) < 2学期まだーーー? プンプン 
             \_/⊂ ⊂_ )   \_____________
           / ̄ ̄ ̄ ̄ ̄ ̄ /|
        | ̄ ̄ ̄ ̄ ̄ ̄ ̄|  |
        | . 味噌カツ .  |/
0656nobodyさん02/08/14 11:50ID:qvfibJbs
nobodyさん :02/08/14 11:49 ID:qvfibJbs
PHPスクリプトでの
時間帯アクセス制限は可能なのでしょうか?
perlではソースがあるんですが
PHP言語に直して利用することは可能なのでしょうか?

@Ti = gmtime(time + 9 * 3600);
$TIME = $Ti[2];

if ($TIME >= 23 || $TIME <=1)

 {
  print "<P><font style=\"font-size : 22px;color : red;\">表\示制限中</font>";
 } else {

  通常の処理を記述

 }
0657nobodyさん02/08/14 11:59ID:???
勿論
0658nobodyさん02/08/14 13:09ID:???
>>656
結構簡単にできそうな気が・・・
0659nobodyさん02/08/14 18:23ID:???
Zend Optimizer のインスコについて質問してもいいすかね?他に良いスレがみつからんので。
0660nobodyさん02/08/14 18:57ID:???
【PHP】質問スレッド
0661nobodyさん02/08/15 01:34ID:???
>>656
DQNでも出来ると思うが。

>>659
WinだったらDQNでも出来る。
0662nobodyさん02/08/15 16:30ID:up7BrQGE
>>656
$Ti = getdate() ;
$TIME = $Ti['houres'] ;
以下略
066366202/08/15 16:33ID:up7BrQGE
×houres
○hours
です
0664nobodyさん02/08/17 01:24ID:nYp5D1tn
7th Sample of PHP Documentation "New CHM Edition"
[15-Aug-2002]
0665nobodyさん02/08/17 03:06ID:13EZV0DN
データファイルに書き込みようなスクリプトを作ったら
"を入力すると勝手に\"にされちゃいます。
これを回避するにはどうしたらいいでしょうか。mb_convert_encoding

一応、EUCでスクリプトを作って、
入力されたデータはmb_convert_encodingでEUCにしています。
0666nobodyさん02/08/17 03:21ID:1t+9J4cm
>>665
magic_guotes_gpcを調べてみて
0667nobodyさん02/08/18 02:51ID:???
Linux(RedHat 7.3) + Apache + php4 (cgi版)についてです。

Apacheモジュールとしてのphpの利用は余裕でわかるのですが、
当方これをcgiとして使用したいと思います。

rpmが、--enable-force-cgi-redirect付きでコンパイルされている
ため、直接指定すると、
sercurity Alert! PHP CGI can not be accessed directory
とのエラーが出ます。様々なphpのマニュアル等ではapacheの
httpd.confに
Action php-script /cgi-bin/php
AddHandler php-script .php
との行を加えればよいとのこと。
しかしそれをすると、
http://localhost/cgi-bin/test.php
The requested URL/cgi-bin/cgi-bin/test.php not found
と出てきます。error.logを確認した限りでも、どうやら
存在しない/var/www/cgi-bin/cgi-bin/test.php
宛にアクセスしているようです。
test.phpは/var/www/cgi-bin/test.phpにあります。
どなたかcgi版phpをapacheから用いるための設定方法について
存じている方はいないでしょうか?
0668nobodyさん02/08/18 04:14ID:???
文章末尾の \n を削除したいのですが
どうしたら取り除けるでしょうか?
0669nobodyさん02/08/18 10:10ID:???
>>667
>存在しない/var/www/cgi-bin/cgi-bin/test.php
>宛にアクセスしているようです。
>test.phpは/var/www/cgi-bin/test.phpにあります。

だったら単純に、
Action php-script /php
とするとどうなるよ。
0670nobodyさん02/08/18 10:23ID:???
>>668
rtrim じゃぁダメなんか?
067166702/08/18 12:16ID:???
>>669
エラーがでますね。http://localhost/cgi-bin/test.phpへアクセス
すると、ログには
/var/www/html/php/cgi-bin/test.php does not exist
とのエラーが出ます。
じゃあ、/var/www/html/php/cgi-bin/test.php
ディレクトリを作るとどうなるか試してみたら、
/var/www/html/php/php/cgi-bin/test.php does not exist
だそうだ。
0672nobodyさん02/08/18 19:19ID:???
>>671
なんか、Apacheを再起動せずにやってたりしない。667と671の状況が
えらく違うじゃんかよ。

で、ScriptAliasなんかも定義されていたりしないか?
0673nobodyさん02/08/18 20:38ID:???
>>670
rtrimでばっちり取れました。
ありがとう
■ このスレッドは過去ログ倉庫に格納されています