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

【PHP】ID出さなくても質問OKなスレ【初心者歓迎】

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2008/09/15(月) 18:41:32ID:???
まず読め→【PHP マニュアル】http://www.php.net/manual/ja/
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
0002nobodyさん2008/09/15(月) 18:43:36ID:???
姉妹スレ

【PHP】下らねぇ質問はここに書き込みやがれ 73
http://pc11.2ch.net/test/read.cgi/php/1220440493/
↑
こちらはIDだして質問するスレ
0003nobodyさん2008/09/15(月) 18:44:33ID:???
関連リンク
■本家マニュアル   http://www.php.net/manual/ja/
■日本PHPユーザ会 http://www.php.gr.jp/
■PEARマニュアル  http://pear.php.net/manual/ja/
■メーリングリスト   http://ns1.php.gr.jp/mailman/listinfo/
■ZFマニュアル    http://framework.zend.com/manual/ja/

(以下英語)
■Smarty       http://smarty.php.net/
■Zend本家      http://www.zend.com/
■Zend Framework  http://framework.zend.com/
■php | architect   http://www.phparch.com/
■Smartyマニュアル http://smarty.php.net/manual/en/
■PECL本家(英語) http://pecl.php.net/
0004nobodyさん2008/09/15(月) 18:45:36ID:???
【簡易FAQ】
1.文字コードは何を使えばいいの?
 →1.UTF-8 2.EUC-JP のどちらか。迷うようなやつはShift_JISは使っちゃダメ。
2. このスレに書き込むときに自分のサイト名を晒したくない
 → http://example.com/が例文などのために予約されている。hogehoge.comは使っちゃダメ。
3. ブラウザに何も表示されないんだけど・・・
 → Apacheの設定を見直せ。ファイルの拡張子は何にしてて、その拡張子でPHPを呼ぶようになっているか?
4. 記号の意味がわからないけどググりようがない
 → 「@」 エラー表示を抑制、「->」 オブジェクトのメンバにアクセス、「::」 静的なメソッド呼び出し、
  「==」は暗黙の型変換をしてゆるい比較、「===」は型情報も含めた厳密な比較
5. echo "$arr['hoge']['fuga']"; と書いたらエラーになった
 → {おっぱい括弧}でくくって"{$arr['hoge']['fuga']}"にする
6. 一定時間ごとに自動的に何かしたいんだけど
 → cronかタスクスケジューラを使え。
7.extractって危険なの?
 →変数上書き&初期化忘れなどで危険。楽だからという理由だけで安易に使わない。
8. include/requireに「〜.php?a=b&c=d」のようなパラメータをつけたい
 → URL呼び出しなら可能だけど、普通のファイル呼び出しではできません
9.include/requireでURLを指定しても何も起きない
 → .phpの拡張子のファイルをURLで呼び出すと、1度PHPプログラムとして実行された結果になる。
0005nobodyさん2008/09/15(月) 18:46:28ID:???
別スレにするならテンプレコピペするな
混同するだろタコ
0006nobodyさん2008/09/15(月) 18:47:16ID:???
10. そもそもインストールの時点でうまくいかない
 → 確認すべきはPHPのconfigureの引数、php.iniの内容と置き場所、
  Webサーバの設定(Apacheならhttpd.conf)、起動&再起動あたり
11. SQLの質問はどこで?
 → データベース板に誘導されるのが嫌ならPHPにうまく関連させて質問する
12. 文字列のなかに、英字のみとか数字のみとか記号が入っちゃいやんとかはどうしたらいいの?
 → ctype_〜()が手軽。複雑なパターンはpreg_〜()あたりで正規表現を使う。
13. $a1, $a2, $a3 ... のような変数名をうまく扱いたい
 → 可変変数で実現できるけど、むしろ配列を使って$a[1], $a[2], $a[3]等とするのがベター
14. echoとprintってどう違うの?
 → よく議論される話題であるが基本的に両者とも同じ。 以下ちょっとした議論。
  http://www.faqts.com/knowledge_base/view.phtml/aid/1/fid/40
15. クッキーの情報をユーザから隠したい
 → セッション使え。ただしクッキーとセッションは仕組みが違うから同じように扱うな
16. strip_tags()で削除しないタグを複数指定したい
 → strip_tags($html, '<a><p><font>'); // htmlspecialchars()も検討すべし
17. CSVやTSVのファイルをスマートに扱いたい
 → まずはfgetcsv()。ただし日本語を含むと正常に動作しない場合があるので注意だ。
18. 値渡しと参照渡し(「&」を使う)のパフォーマンスの違い
 → C言語じゃないので、パフォーマンス目的で使いわけたらダメ。参照渡しにすると逆に遅くなったりする
  参照渡しは引数に戻り値を設定したり引数を関数内で変更するなど、正しい目的に使うこと
19. ファイル入出力関数(fopen等)でリモートファイル(http://〜とか)を扱う際の限界
 → fsockopen()でソケット通信 or PEARのHTTP系 or CURLで解決
  必要ならHTTPをはじめとする各種プロトコル(どんなデータを送受信するか)はRFCなどで調べる
20. PHPからPOSTリクエストしたい
 →19.を参照
21. 画像処理一般 or GDの限界
 → ImageMagick(PECLのやつ or シェルから実行)
22. 画像・音・動画はファイルで保存?DBに保存?
 → 好きにしてください
0007nobodyさん2008/09/15(月) 18:49:49ID:???
次スレからは>>2までをテンプレとしよう
>>5の言うとおり紛らわしくなる

で、>>1乙
0008nobodyさん2008/09/15(月) 20:06:24ID:???
テンプレは900過ぎたあたりで考えればいいと思うよ
0009nobodyさん2008/09/15(月) 21:25:17ID:???
1週間以内にdat落ちするから心配しなくていい
0010nobodyさん2008/09/15(月) 22:28:52ID:???
>>9
そういうのいらないから
0011nobodyさん2008/09/17(水) 05:28:08ID:???
>>7
イタタタタタタタタタタタタタタタタタタタタタタ
0012nobodyさん2008/09/18(木) 14:33:57ID:???
age
0013nobodyさん2008/09/18(木) 14:35:34ID:???
このスレはこちらに統合されました
http://pc11.2ch.net/test/read.cgi/php/1213356756/
以後質問は↑へどうぞ
0014nobodyさん2008/09/18(木) 14:46:26ID:44N/guRO
こちらはID強制しない本スレです再開
0015nobodyさん2008/09/18(木) 14:47:59ID:???
3日経つけどまだ1件も質問無いねw
0016nobodyさん2008/09/18(木) 14:53:38ID:???
平和でいいじゃないw
0017nobodyさん2008/09/18(木) 17:37:09ID:???
最近phpが飽きました
どうしましょ
0018nobodyさん2008/09/18(木) 17:41:44ID:???
PHPのモジュールでも書いたら?
0019nobodyさん2008/09/18(木) 17:56:48ID:???
PHPの存在意義って何ですか?
0020nobodyさん2008/09/18(木) 17:57:47ID:???
動的にHTMLデータを生成することによって、動的なウェブページを実現すること
0021nobodyさん2008/09/18(木) 18:00:19ID:???
動的って何ですか?
0022nobodyさん2008/09/18(木) 18:02:31ID:???
ググレカス
0023nobodyさん2008/09/18(木) 18:02:51ID:???
ダイナミック
0024nobodyさん2008/09/18(木) 18:03:31ID:???
このスレはこちらに統合されました
http://pc11.2ch.net/test/read.cgi/php/1213356756/
以後質問は↑へどうぞ
0025nobodyさん2008/09/18(木) 18:07:17ID:???
こちらはID強制しない本スレです再開
0026nobodyさん2008/09/18(木) 18:59:43ID:???
質問です。
mb_convert_kanaで変換できない記号類は
皆さんstr_replace等で変換しているのでしょうか?
0027nobodyさん2008/09/18(木) 19:03:23ID:???
strtrとか
特殊な件にpreg_replaceをつかったりしてる
0028nobodyさん2008/09/18(木) 19:07:28ID:???
>>25
ID強制しないスレなんて>>24でも同じだろ
わざわざ新スレたてた早漏馬鹿乙
0029nobodyさん2008/09/18(木) 19:11:28ID:???
はいおつかれ
信者はスルー
はい次の質問どうぞ
0030nobodyさん2008/09/18(木) 19:14:04ID:???
え?
mb_convert_kanaはカナの全角半角を変換するんだから、記号が変換できたらおかしいのでは?
0031nobodyさん2008/09/18(木) 19:16:10ID:???
変換できるのはカナだけじゃないぞ
0032nobodyさん2008/09/18(木) 19:19:22ID:???
英字だけとか数字だけの変換に使っても「おかしい」ってことはないよ
0033nobodyさん2008/09/18(木) 19:56:52ID:???
>>27
ありがとうございます。
strtrについて調べたのですが、str_replaceとの違いは
検索文字と置換文字の長さだけなのでしょうか?

strtrは検索文字と置換文字の長さを同じにしなければいけないようですが、
ここでなぜstrtrを推される理由を教えてください。
0034nobodyさん2008/09/18(木) 19:58:02ID:???
strtrなんて普通使わない
気にしないほうがいい
0035nobodyさん2008/09/18(木) 20:01:10ID:???
>>31-32
スマン、俺が勘違いしていた
0036nobodyさん2008/09/18(木) 20:07:23ID:???
>>33
>strtrは検索文字と置換文字の長さを同じにしなければいけないようですが、

マニュアルをよく読め、同じにしなくても変換できるだろ
string strtr ( string $str, array $replace_pairs )

>>34
知ったか乙
変換速度はstrtrが一番効率がいい
0037nobodyさん2008/09/18(木) 20:08:54ID:???
strtrなんて使わない
ゴミだよあんな関数は
使えないね
全部正規表現がいい
0038nobodyさん2008/09/18(木) 20:11:16ID:???
全部正規表現とかワロタ
0039nobodyさん2008/09/18(木) 20:17:14ID:???
俺がPHP5.1でstrtrとstr_replaceの速度比較をしたら、予想に反してstr_trplaceが1.5倍速かった。
Perlのtr//を移植する時くらいしか使わないと思う。
0040nobodyさん2008/09/18(木) 20:21:54ID:???
strtr関数の所要時間:0.559
str_replace関数の所要時間:1.391
preg_replace関数の所要時間:1.978
ereg_replace関数の所要時間:5.336
0041nobodyさん2008/09/18(木) 20:24:09ID:???
http://www.simplemachines.org/community/index.php?topic=175031.15;wap2

Results:
sprintf: 0.80260682106018 seconds
preg_replace: 2.3465528488159 seconds
strtr: 26.90654706955 seconds
str_replace #1: 0.83384084701538 seconds
str_replace #2: 1.1157829761505 seconds
0042nobodyさん2008/09/18(木) 20:26:49ID:???
ミリ秒で競って満足か?
性能に頼って好き勝手に使いやすいの使って組むのが
今のゆとりプログラマーだろ
ゆとりプログラマーらしく好きにしろといいたい
0043nobodyさん2008/09/18(木) 20:33:16ID:???
>>36
すみません。もう一度読み返しました。
結果は同じのようですが、実行速度は環境にもよると思うので
自分でとってみたいと思います。
ありがとうございました。

それにしても、PHPSPOTのマニュアルコピーうぜー
0044nobodyさん2008/09/18(木) 20:37:28ID:???
http://jp2.php.net/manual/ja/copyright.php
> 修正の有無に関わらず本文書の全体または一部を再配布または再出版したい場合や、 質問がある場合には、 ≫ ***@***.*** 宛で著作権者まで連絡をしてください。
0045nobodyさん2008/09/18(木) 20:38:11ID:???
PHPSPOTってここ?
http://phpspot.net/php/

アフィがサイトのコンテンツを見難くしてて今一だね
phpproの方がいい感じだわ
0046nobodyさん2008/09/18(木) 20:38:51ID:???
ぐぐるに通報したらあぼんされるのか?
0047nobodyさん2008/09/18(木) 20:42:05ID:???
>>43
マニュアルがPHP4.3のだったり、
鯖が四六時中落ちていたり、
アフィが出たり、
ほんとウザいよね、マニュアルのコピペ。
0048nobodyさん2008/09/18(木) 20:42:44ID:???
http://pc11.2ch.net/test/read.cgi/php/1213919075/524-525
0049nobodyさん2008/09/18(木) 21:11:55ID:???
PHP 5.2.6
strtr(3引数) 0.04 s
strtr(2引数) 0.62 s
str_replace 0.10 s
ereg_replace 5.25 s
preg_replace 0.29 s

eregは糞
0050nobodyさん2008/09/18(木) 22:02:57ID:???
試してみると私の環境だとstrtrの方が早かったですね。
場合によってはeregは使い道あると思うよ。

こっちの方が(>>1)回答のレベル高いかも。
1人だと大変だろうけど。
0051nobodyさん2008/09/18(木) 22:26:19ID:???
さすがに一人ではこの流れにならんでしょう。
回答レベルの話は、たぶん先行き次第。
0052nobodyさん2008/09/18(木) 22:27:16ID:???
この答えがレベル高いってどんだけゆとりなんだよww
0053nobodyさん2008/09/19(金) 02:55:12ID:???
どの変数にデータを送ってるのか
たまに頭混乱しませんか?
どうしてるんでしょうか?
0054nobodyさん2008/09/19(金) 02:55:52ID:???
低脳は死ね
0055nobodyさん2008/09/19(金) 03:00:19ID:???
>>54
低脳が原因なんでしょうか?
リアルでも知らない人が質問したら”低脳は死ね”って言うんですか?
0056nobodyさん2008/09/19(金) 03:04:35ID:???
低脳が原因じゃなかったら何が原因だと思うの?
0057nobodyさん2008/09/19(金) 03:05:55ID:???
他の人の回答お待ちしますね
0058nobodyさん2008/09/19(金) 03:06:24ID:???
>>53
しません
0059nobodyさん2008/09/19(金) 03:06:29ID:???
>>56-57
お前ら死ね
0060532008/09/19(金) 03:07:14ID:???
もういいです。二度と来ませんさようなら。
0061nobodyさん2008/09/19(金) 03:07:46ID:???
            ∩
            〈〈〈 ヽ
           〈⊃  }
   (\___/)  |   |
 ( ̄l▼      ̄)!   !
  /  ●   ● |   /
  /   l ___\lミ/
 /▲  (  。--。 )
/■___  (( ̄))    こいら最高にBSEモォーーーーーーーーー
(___)   ̄/
0062nobodyさん2008/09/19(金) 03:08:50ID:???
まっここは2chだし
あまり回答に期待しない方がいいぜ

ここにいるのは 俺すげーできる と思ってるカスだからな
0063nobodyさん2008/09/19(金) 03:10:37ID:???
低脳とかまだ言ってる奴居るの?
ワロタw
0064nobodyさん2008/09/19(金) 04:59:16ID:???
>>1はなかなか出来る。
くだスレの信者に聞くよりここで聞く方がいいかも。
IDIDってうざいし。
0065nobodyさん2008/09/19(金) 05:26:54ID:???
いや別に>>1が答えてるわけじゃ・・・
0066nobodyさん2008/09/19(金) 09:19:27ID:???
深夜なのに物凄い連続カキコですね
0067nobodyさん2008/09/19(金) 09:26:57ID:???
向こうのくだスレが落ち着いたと言うのに
0068nobodyさん2008/09/19(金) 11:09:11ID:???
次スレ立つときが見ものだよな
0069nobodyさん2008/09/19(金) 13:16:15ID:???
PHPのコマンドライン引数の一覧って、マニュアルのどの項だっけ?
0070nobodyさん2008/09/19(金) 13:26:36ID:???
事故解決しました
http://jp2.php.net/manual/ja/features.commandline.php
0071nobodyさん2008/09/19(金) 14:25:39ID:???
すみません、基本的なことで申し訳ないですが教えてください。
本に簡単なRSSリーダーのソースということで以下がのってたので、「index.php」という名前にしてレンタルサーバにアップしたのですが、
そのサイトへとぶと、Internal Server Error   The server encountered an internal error or misconfiguration and was unable to complete your request.
という表示しか出ません。
そのウェブサイトにとぶことで、目的のページをフィードするためには、後何が足りてないのでしょうか?
宜しくお願いいたします。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml">
<head> <meta http-equiv="content-type" content="text/html;charset=shift_jis" /> <meta name="generator" content="Adobe GoLive" />
<meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache">
<title>asdfasdf</title> </head> <BODY>
<?php
function cvt($text){ return mb_convert_encoding($text, "SJIS", "UTF-8"); }
if($fileContents = file_get_contents( 'http://lump.blog.shinobi.jp/RSS/091/')) {
$xml = new SimpleXMLElement($fileContents); echo '<0L>'; $Loop = 0;
while ($Loop < count($xml->item)) { echo '<LI>' .
'<A href="' . $xml->item[$Loop]->Link . '">' .
cvt($xml->item[$Loop]->title) .
'</A>' . '</LI>';
++$Loop;
}
echo '</0L>';
}
?>
</BODY>
</HTML>
0072nobodyさん2008/09/19(金) 14:27:48ID:???
PHP以前の問題
0073712008/09/19(金) 14:55:33ID:???
ですよね、、そもそも何かが分かっていない気がするのですが…。
index.phpだけではサイトに表示はできないんでしょうね
0074nobodyさん2008/09/19(金) 15:01:22ID:???
httpラッパが使えないとかそんなことなんじゃ
(CGIモードならInternal errorになりそうだし)
0075nobodyさん2008/09/19(金) 15:03:08ID:???
まさか#!/usr/bin/phpを入れたら動いたりしないよね
0076nobodyさん2008/09/19(金) 15:05:55ID:???
それじゃ拡張子がcgiにならんか?レン鯖ならそうすると思うし
拡張子phpでInternal error出てるんだし一応PHPモジュールなりForceCGIなりしてるよな
0077nobodyさん2008/09/19(金) 15:17:37ID:???
空のPHPでも内部サーバエラーなら、鯖が狂っているんだろうね
.htaccessが使えるならAddTypeで強制的にmodphpで動くよう指定してみるとか
0078712008/09/19(金) 18:31:50ID:???
いろいろ試してみます。
ありがとうございました。
0079nobodyさん2008/09/19(金) 19:01:45ID:???
>>71
SimpleXML 拡張モジュールは PHP 5 が必要になります。
mbstring は拡張モジュールです。つまり、デフォルトでは 有効にならないということです。
0080nobodyさん2008/09/19(金) 19:08:36ID:???
phpのバージョンとか4で5の関数・クラス使ってようが
phpのエラーがでるだけでinternal errorなんて出ないて
0081nobodyさん2008/09/19(金) 19:29:44ID:???
undefined functionになるだけ
0082nobodyさん2008/09/19(金) 21:39:14ID:???
PHP5(のどっかのバージョン)からはエラーが標準出力されない件(よってCGIのように403エラー)
0083nobodyさん2008/09/19(金) 21:41:26ID:???
>>82
5.1系の前半
0084nobodyさん2008/09/19(金) 21:44:31ID:???
という訳でブラウザでエラー出すのにxdebugとか使うハメに
0085nobodyさん2008/09/19(金) 22:19:55ID:???
403?500じゃなくて?
0086nobodyさん2008/09/19(金) 23:46:32ID:???
orz
すまん・・・forbiddenなんてどうでもいいな
0087nobodyさん2008/09/20(土) 21:04:23ID:EkLzV9bU
PHP5.2.6で、
upload_max_filesizeよりもMAX_FILE_SIZEの値を大きくして、
実際にはupload_max_filesizeに引っかかった場合でも、
エラーの値が、UPLOAD_ERR_FORM_SIZEになります。
これはバグですか?
0088nobodyさん2008/09/20(土) 21:19:48ID:???
ググレカス
0089nobodyさん2008/09/20(土) 21:33:35ID:???
>>87
sageろやカス
0090nobodyさん2008/09/20(土) 21:42:11ID:EkLzV9bU
スレタイが述べていることは
ID出しても出さなくてもOKということでしょう
違いますか?
0091nobodyさん2008/09/20(土) 21:44:13ID:???
そうです。
0092nobodyさん2008/09/20(土) 21:44:41ID:???
986 名前:nobodyさん[sage] 投稿日:2008/09/20(土) 20:05:03 ID:???
PHP5.2.6で、
upload_max_filesizeよりもMAX_FILE_SIZEの値を大きくして、
実際にはupload_max_filesizeに引っかかった場合でも、
エラーの値が、UPLOAD_ERR_FORM_SIZEになります。
これはバグですか?


そんならなぜID出せといわれてるスレでわざわざID出さなかったのですか?
だいたいマルチだしお前みたいな釣り人は一人で解決してろ
0093nobodyさん2008/09/20(土) 21:49:38ID:???
頑張ってこのスレを使わせたいんだよ、きっと
0094nobodyさん2008/09/20(土) 21:58:52ID:???
前スレで質問したら混乱の中でスレが落ちたので
こちらで質問させてもらいました。
IDを出すことを強制するスレより、こちらの方がいいと思ったので。
0095nobodyさん2008/09/20(土) 22:01:35ID:???
>IDを出すことを強制するスレより、こちらの方がいいと思ったので。

こりゃ明らかに釣りだな
質問者のふりをするために適当な質問をしたってとこか
0096nobodyさん2008/09/20(土) 22:08:26ID:???
意味が分かりません
誰が何のためにそのような釣りをするのですか?
0097nobodyさん2008/09/20(土) 22:14:50ID:???
スレ主が自分のスレを盛り上げるために自演をする
と、とりあえず書いてみる

どうでもいいけど、ここにそういう書き込みするならググったほうが速いぞ
どうせ役に立たないスレなんだから
0098nobodyさん2008/09/20(土) 22:16:21ID:???
こっちのスレにも偽者は出ますアピールか?
やっぱ板自体を強制IDにしないと解決しないなこりゃ
こっちは偽者でさらに荒れるだろうよ
0099nobodyさん2008/09/20(土) 22:46:05ID:???
どっちにしたって荒れるからどうでもいいよ
php使いはレベル低い
0100nobodyさん2008/09/20(土) 22:58:07ID:???
>>99
自己紹介はいらないよ
0101nobodyさん2008/09/20(土) 23:01:47ID:???
なにやらループさせすぎて
鯖がパンクしたみたいです。
どうしましょ
■ このスレッドは過去ログ倉庫に格納されています