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

【PHP】下らねぇ質問はID出して書き込みやがれ 128

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2013/05/26(日) 23:01:58.78ID:???
質問者はまず>>1を良く読むこと(必須!)
過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。

◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 127
http://kohada.2ch.net/test/read.cgi/php/1363698829/

◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】5.3
【連携ソフトウェア】MySQL ImageMagick
【質問内容】

◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)

◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)

◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。

【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0002nobodyさん2013/05/26(日) 23:02:30.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://www.smarty.net/manual/ja/

(以下英語)
■Zend本家      http://www.zend.com/
■Zend Framework  http://framework.zend.com/
■php | architect   http://www.phparch.com/
■Smarty       http://www.smarty.net
■Smartyマニュアル http://smarty.php.net/manual/en/
■PECL本家(英語) http://pecl.php.net/
0003nobodyさん2013/05/26(日) 23:03:00.97ID:???
【簡易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プログラムとして実行された結果になる。
10. そもそもインストールの時点でうまくいかない
 → 確認すべきはPHPのconfigureの引数、php.iniの内容と置き場所、
  Webサーバの設定(Apacheならhttpd.conf)、起動&再起動あたり
0004nobodyさん2013/05/26(日) 23:03:31.47ID:???
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に保存?
 → 好きにしてください
0005nobodyさん2013/05/26(日) 23:04:25.16ID:???
☆初心者必読☆

ttp://ameblo.jp/nikko-inma/entry-11122429825.html
>数々の糞仕様の発見で驚きを提供してくれる人気プログラム言語PHP

ttp://usamimi.info/~mirrorhenkan/2ch/ruby/other/read.php/1181304333/
>「初心者にもWebアプリケーションが書ける」という幻想を与えることで、 バグだらけで、メンテナンス性が低く、
>セキュリティ問題を抱えた Webアプリケーションを乱造することになっているのではないだろうか。

ttp://qarc.info/qa/show-9478-909.html
>PHPとか言語仕様が糞なうえにセキュリティホール付でリリースするからマジないわ。

ttp://www.tiobe.com/index.php/content/paperinfo/tpci/index.html
PHPは順位を維持しているものの-0.16%、
一方のRubyはというとPHPより順位は低いものの+0.34%、
このままいけば必ず逆転する

ttp://www.anlyznews.com/2011/03/phper13.html
>5. PHPなどのスクリプト言語しか知らないのに、プログラミング言語の優劣を語る。
>6. PHPの遅さを知らないのに「最近のマシンは速いからプログラミング言語に速度は求められていない」と言い切る。
>11. 仕様が曖昧で急激に変化するPHPで、テストファーストとか言い出す。
>13. ブログで自らの無知をさらけ出す。

ttp://creeper.no-ip.info/adiary/adiary.php?20111122
>■ 変数名を間違えると新しい変数が作られる
>■ 文字列の変数展開がクソ
0006nobodyさん2013/05/26(日) 23:05:04.28ID:???
テンプレここまで。前スレ>>1000を踏んでも次スレが見つからなかったので建てました。
0007nobodyさん2013/05/26(日) 23:09:53.91ID:???
勝手にテンプレにすんなボケ
0008nobodyさん2013/05/26(日) 23:10:20.06ID:???
死ねカス
0009nobodyさん2013/05/27(月) 00:34:12.76ID:QfhA6lTw
フレームワーク?ってなにが美味しいんですか?
人の書いたのってなんか中身がわかんないから心配だし、フレームワークとか余計に面倒臭いんですけど…
0010nobodyさん2013/05/27(月) 01:03:09.11ID:???
sohoとかクラウドワークスとか見ててもphpの案件ばっかりだな
perlとかrubyとかやってたってしょうがないよ
0011nobodyさん2013/05/27(月) 11:41:16.08ID:???
【OS名】Debian 7
【PHPのバージョン】5.4.4
【連携ソフトウェア】特になし
【質問内容】

Debian 7 で、apt-get で普通に Apache や PHP を入れただけの環境なんですが、
phpinfo() の結果を見ると、_SERVER["REQUEST_TIME"] が -472361226 のような
負の数になっています。
_SERVER["REQUEST_TIME_FLOAT"] のほうは正常に 1369622206198 などという数値を示します。

Debian 6 のころとバージョンが変わって、
何か設定しなければならないことが増えたのでしょうか。
それとも、何らかのバグでしょうか。

同じような現象に遭遇された方がいらっしゃったら、情報をいただきたいです・・・。
0012112013/05/27(月) 13:24:05.88ID:???
11 です。
自己解決しました。

libapache2-mod-php5 ではなくて、
libapache2-mod-php5filter がインストールされていたのが原因でした。
libapache2-mod-php5 をインストールしなおしたら解決しました。

libapache2-mod-php5filter なんて、いつ入ったんだろ・・・。
どうもお騒がせしました。
0013nobodyさん2013/05/27(月) 15:23:20.56ID:???
>>9
自分で作ればいいんじゃない?
0014nobodyさん2013/05/27(月) 18:23:54.08ID:???
>>9
あれは奴隷製造機だからな あれをちゃんと使えないと立派な奴隷になれないぞ!
0015nobodyさん2013/05/27(月) 18:40:37.66ID:QfhA6lTw
あの、場違いな真面目な質問(悩み?)です。
以前はWindowsネイティブなアプリも請け負ってましたが、最近は全くありません。もうほとんどWebアプリだけです。
クライアントは全て中小零細企業ですが。
FORTRAN77からプログラムを初めてCの開発実績が一番長いのですが、現在はPHPとSQLがメインです。SQLはオラクルシルバー持ってます。
一番重要なのはデータベース設計なんで、プロフラム言語は別になんでもいいんですが、ほんとにPHPは将来性がないんですか?
まさかpythonでやれとかRubyに行けとか、家族を抱えた職業人の私に言わないですよね?
Javaとか無理ですよ、現実。
だって、受注後0.5〜1ヶ月くらいで実運用求められる案件ばっかですから。
有識者のご意見下さい。
0016nobodyさん2013/05/27(月) 18:55:05.57ID:???
>>15
Java人間雇えば? 仕事もらえるネットワークが財産であり武器である
0017nobodyさん2013/05/27(月) 19:01:43.49ID:???
>>16
ぜんぜん分かってねぇな、こいつ
0018nobodyさん2013/05/27(月) 20:10:40.42ID:???
>>15
PHPの何を心配してんの?
0019nobodyさん2013/05/27(月) 21:36:01.20ID:???
>>15
PHPに将来性があるかどうかを心配しているようだが、
言語の有用性の推移に関する未来予測を行う方法は数多く提案されていて、
予測不可能だとする従来の学説と真っ向から対立する形になった。

肯定派と否定派の合同の研究班が結成され、
いくつかの推測方法を検証したところ、
全くのでたらめと言うべき結果も数多くあった一方で、
統計学的に有意とされる結果も数例ほど報告された。

その比率は優位な方法が全体のわずか5%という微々たるものではあったが、
追跡調査ではそのうち約半数がやはり有意な結果であった。

研究班はこの推測方法でプログラミング言語の将来の有用性を測ることが
不可能であるとは断言できる理論は今のところ確立されていないという結論に達した。
0020nobodyさん2013/05/27(月) 21:38:37.26ID:???
その推測方法をPHPのコードとして実現したものがこちら

<p>PHPには将来性が
<?php
echo array_rand(array('ある', 'ない'));
?>
</p>
0021nobodyさん2013/05/27(月) 21:43:31.36ID:???
あのー、array_randが返すのは配列のキーですが
0022nobodyさん2013/05/27(月) 21:54:44.95ID:???
わろた
0023nobodyさん2013/05/27(月) 22:15:29.80ID:BO/BVLbf
静的クラスを明示する方法って、
コンストラクタをprivateにするくらいですか?
0024nobodyさん2013/05/27(月) 22:28:17.24ID:???
何言ってるかわからない
0025nobodyさん2013/05/27(月) 23:56:42.17ID:BO/BVLbf
http://msdn.microsoft.com/ja-jp/library/79b3xss3(v=vs.80).aspx
C#では
static class CompanyInfo{
}
のように静的クラスを宣言できますが、
PHPで
static class Hoge {
}
と記述したらエラーになりますよね
だから静的にしか使って欲しくないクラスは、
newした時点でエラーになるように、
コンストラクタをprivateにするとか、コンストラクタで例外を投げるとか、
あまりスマートではないけれど、それくらいの方法しかないのでしょうか?
ということです
0026nobodyさん2013/05/28(火) 00:12:03.68ID:???
静的プロパティを保証できないんじゃない?
0027nobodyさん2013/05/28(火) 09:13:21.58ID:???
>>15
何歳?Web系は言語よりhttpの知識の方が必要だよ。
スマホのネイティブアプリやれば?
0028nobodyさん2013/05/28(火) 12:42:57.98ID:???
【OS名】Ubuntu12.03
【PHPのバージョン】5.3.10
【連携ソフトウェア】MySQL
【質問内容】
whileからのmysqli_fetch_rowやassocを使った際、最後の一行が読み込まない状態で困っています。
例えば「v,w,x,y,z」の5つを入れて参照すると、v,w,x,yのみ表示されzが読み込まれない状態です。
ぐぐってもそれらしいコメントが見つからなかったため質問しますが、わかる方いらっしゃいますか?
0029nobodyさん2013/05/28(火) 12:46:22.24ID:???
12.04でした。
0030nobodyさん2013/05/28(火) 13:35:45.94ID:???
どうやって読んでる?
一回足りないだけのような
0031nobodyさん2013/05/28(火) 15:16:24.29ID:3sZRAxgy
>>27
ありがとうございます。
えっと、30代です。
HTMLの知識ってなんですか?
全然煽るつもりも喧嘩売るつもりもないんですけど、
「知識」ってほどのものなんかなんにもないですよ、HTML
ちょっと意味がわからないです。

あと、スマホのネイティブアプリとか言いますけど、趣味でやってる学生じゃないのでご理解ください。
作る「だけ」なら、もちろん作れますよ、当たり前だけど。

やっぱ色々考えてみると、当面零細企業相手の仕事ではPHPと各種データベースの組み合わせしか選択肢がないですね、現状。

アカデミック()な分野はべつとして
0032nobodyさん2013/05/28(火) 15:23:37.70ID:???
DBやってるならDBの設計終われば言語何でもいいのはわかるべ
それに複数言語扱うのも大したことは無い、phpやりながらjava慣れとけばいい
環境作る方が大変だけどな。

httpはやればやるだけできること広がるから何でも手をつけておいた方がいいよ。
0033nobodyさん2013/05/28(火) 15:40:16.32ID:???
痛々しい30代ですことw
0034nobodyさん2013/05/28(火) 15:55:19.72ID:???
>>31
> HTMLの知識ってなんですか?

10年以上前の、超しょぼいページ遷移しかしないWebアプリしか作らないなら、それほどHTMLの知識は要らない。
サーバ側で静的ページを生成して戻すだけだし。

そこそこ見栄えが良く使い勝手が良いWebアプリを作るなら、CSS, HTML, Javascriptの知識が最低必要。
0035nobodyさん2013/05/28(火) 15:59:24.99ID:3sZRAxgy
>>34
いやいや(苦笑)
>CSS, HTML, Javascriptの知識が最低必要
そんなの分かってるから
0036nobodyさん2013/05/28(火) 16:00:07.20ID:3sZRAxgy
ごめん、ここで聞いた俺が馬鹿だった
謝る m(__)m
0037nobodyさん2013/05/28(火) 16:01:04.33ID:???
HTMLじゃなくてhttpと書いたのは、SOAPを始めとするプロトコル関連も含んでるんじゃないのか
0038nobodyさん2013/05/28(火) 16:01:21.84ID:???
こういうおっさんに限ってHTML4.01 CSS2.1止まりなんだよなww
0039nobodyさん2013/05/28(火) 16:02:34.53ID:???
30代越えるとhttp=インターネット=HTMLだから赦してやってくれ
0040nobodyさん2013/05/28(火) 16:03:21.97ID:3sZRAxgy
>>37
うん、それならまだ分かるね
ありがと
0041nobodyさん2013/05/28(火) 16:03:51.27ID:3sZRAxgy
>>38
自己紹介乙
0042nobodyさん2013/05/28(火) 16:05:58.18ID:???
>>36
貴方や会社の将来設のことを
たかが言語に求められても困るでしょう。
PHPなんてのは ただの道具ですよ。
0043nobodyさん2013/05/28(火) 16:08:00.03ID:???
>>42
謝ってんだからもういいじゃん
0044nobodyさん2013/05/28(火) 16:13:57.60ID:???
謝ってるってもしかしてだけど>>36のこと?
0045nobodyさん2013/05/28(火) 16:27:43.76ID:???
phpの質問スレだからな、たしかに聞く場所間違ってるw
0046nobodyさん2013/05/28(火) 17:42:44.97ID:???
>>35
> そんなの分かってるから

いや、わかってないと思うよ。だってサーバサイドの話しかしてないじゃん。
0047nobodyさん2013/05/28(火) 18:03:18.41ID:???
人の行く 道に裏あり 花の山

 いずれを行くも 散らぬ間に行け
0048nobodyさん2013/05/28(火) 18:11:02.84ID:???
>>30
足りないだけなのでしょうか。
以前も同じような構文で作ったんですがその時は最後までループして吐き出してくれたので大丈夫だと思ったんですが・・・
0049nobodyさん2013/05/28(火) 18:24:18.73ID:???
>>31
いや、HTMLじゃなくて、HTTPプロトコルのこと。
パケットを見るとかじゃなく、単純にどうやってWebは動いているかって知識。
ノウハウと言い換えても言いけど。言語仕様なんてたいしてハードルじゃない。

まぁ、メールの問い合わせフォームとかならそうでもないけどね。

ネイティブアプリ作れるなら、そっちの方が需要あるよ。
0050nobodyさん2013/05/28(火) 20:10:53.94ID:???
>>48
ID
0051nobodyさん2013/05/28(火) 20:44:35.96ID:02y4dFlJ
HTTPS抜きでやるつもりかよ
PHP厨はやっぱダメだな
0052nobodyさん2013/05/29(水) 09:57:21.09ID:???
意味わかんね
知ったかで文句付けてみただけのようなw
0053nobodyさん2013/05/29(水) 10:38:34.32ID:???
<?php
$moji = array(
'iti' => '<html>',
'ni' => '<body>'
);
?>

<html>
<head>
<meta>
<title>ソース変換</title>
</head>
<body>
<form>
<div class="container">

<label for="sosu">ソースを表示</label><br />
<textarea rows="5" cols="30" ID="memo" name="memo">
<?php print($moji['iti']); ?>
<?php print($moji['ni']); ?>
</textarea>
</div>
</form>
</body>
</html>

テキストエリアで改行するにはどうすればいいですか?

やりたいことは、htmlやphpのコードをテキストエリアに貼り、
htmlspecialcharsで文字列を置き換えるということです。
0054nobodyさん2013/05/29(水) 11:02:28.95ID:???
>>53
IDが出ていないので、お答えしないことになっています。
0055nobodyさん2013/05/29(水) 11:03:57.58ID:???
>>51
自分は分かってるつもり乙
0056nobodyさん2013/05/29(水) 11:08:36.90ID:???
phpというよりほとんどhtmlの話だけど、ID出してね
0057nobodyさん2013/05/29(水) 11:49:17.19ID:???
ID出す前に一言言わせてくれ。
得体のしれないブログ記事をつまみ食いして質問してくんな。
参考にしてるソースが古過ぎる。
古いソースは問題が多い。
新しい記事を参考にして書いたんだったらその参考にしてる記事がクソ。

記事の信憑性を見極めるのにはそれなりの知識が必要だから、
最初は新し目の書籍を一冊買ってとりあえずそれだけでやるといい。
0058nobodyさん2013/05/29(水) 11:57:13.93ID:???
\n
0059nobodyさん2013/05/29(水) 12:10:44.61ID:???
これは、PHPの閉じタグ直後の改行コードの扱いの仕様の問題
0060nobodyさん2013/05/29(水) 12:17:09.28ID:???
俺がやりたいことをやってるサイトがあるんだが人のサイトだからここに
貼るわけにもいかず・・・
0061nobodyさん2013/05/29(水) 12:20:27.72ID:???
WWWの原則としてリンクは自由であるべきだ
0062nobodyさん2013/05/29(水) 12:34:39.92ID:???
>>59
閉じタグの後に改行しなくちゃいけないとでも思ってるのかよ
0063nobodyさん2013/05/29(水) 12:37:04.24ID:???
>>62
*PHPの*閉じタグの直後の改行コードは、無効にされますので、
<?php print($moji['iti']); ?>
<?php print($moji['ni']); ?>
だと、?>のあとの改行は出力されず <html><body> と出力されます。
<html>
<body>
としたければ、 1行目と2行目の間で2回改行するとか、そういうことです。
0064nobodyさん2013/05/29(水) 12:39:54.49ID:???
なんだ質問者かよ、ID出さなきゃ答えられないって言ってるだろ
0065nobodyさん2013/05/29(水) 13:12:38.05ID:16tE3DEI
>>63
phpじゃなくhtmlでの<br>改行とかならわかるんだけど
テキストエリアなので困ってます。
0066nobodyさん2013/05/29(水) 13:22:54.89ID:???
>>65
テキストエリアですので、 <textarea>タグ直後でなければ、
htmlソースの改行コードで改行されます。
<?php print($moji['iti']) ."\n"; ?>

とするか、

<?php print($moji['iti']); ?>

<?php print($moji['ni']); ?>
とやってみてください。
0067nobodyさん2013/05/29(水) 13:30:33.99ID:???
\r\n
0068nobodyさん2013/05/29(水) 14:49:16.39ID:???
親切に回答してるなぁ。>>59の人だろか。乙
0069カミカゼ2013/05/29(水) 22:53:50.60ID:RY40XdSy
●じゃあのさん来た!●
71:カミカゼ[]
2013/05/29(水) 22:14:04.77 ID:2XhNblnz0
ようおまいらwwww元気ぃ?wwww
よろしくやってたかい?www
久々に遊びに来たぜwwww

--- 以下スレ情報 ---
高岡さんがフジ韓流ゴリ押し批判したら干されたのでウジテレビ凸
http://hayabusa.2ch.net/test/read.cgi/news4vip/1369827332/
0070nobodyさん2013/05/30(木) 01:46:13.16ID:???
関数、クラスをfunction.phpにまとめています
この読み込みの挙動について聞きたいです

function.phpに大量の関数、クラスがある場合は、includeに時間がかかるのでしょうか
それとも呼び出した関数、クラスのみ探して読み込んでくれるのでしょうか

クラスの挙動についても聞きたいです
30つ以上メソッドがあるクラスをインスタンス化して、5行程度の1つメソッドの使う場合の
負荷はどのようなものになるのでしょうか?
0071nobodyさん2013/05/30(木) 01:46:56.46ID:MG1e5+Bh
すみませんID忘れていました
0072nobodyさん2013/05/30(木) 02:41:01.79ID:EYpF140+
すみませんID忘れていました
0073nobodyさん2013/05/30(木) 07:11:45.94ID:???
>>70
全部読み込む
0074nobodyさん2013/05/30(木) 07:49:43.25ID:???
クラスは一つずつ別ファイルにして
オートロード機能を使うと良いよ
0075nobodyさん2013/05/30(木) 09:36:45.67ID:???
>>66
確認しましたm(_ _)m
0076nobodyさん2013/05/30(木) 12:59:25.56ID:???
>>74
オートロードってパフォーマンス的に駄目駄目じゃない?
OSのメモリ上にファイルのキャッシュが残ってればそうでもないのかな?
0077nobodyさん2013/05/30(木) 13:09:24.65ID:???
APCでキャッシュしちゃえば全然問題ない。
0078nobodyさん2013/05/30(木) 18:07:25.88ID:MG1e5+Bh
>>73
>>74
ありがとうございます
0079nobodyさん2013/05/30(木) 19:59:55.00ID:???
>>76
質問はID出せよ知能障害
お前みたいに好き勝手やってるゴミは社会の迷惑
0080nobodyさん2013/05/30(木) 20:25:17.82ID:???
>>76
使いもしないファイルを読み込むほうが・・・
って話とどっちが上か下かは状況次第じゃん
0081nobodyさん2013/05/30(木) 20:34:40.45ID:???
>>76
includeの可能性があるファイルが10個あるとして
全てロードだとコスト10固定、
autoloadにしているとコスト0〜10だと思うけど、
オートロードでダメな理由って何なの?
0082nobodyさん2013/05/31(金) 03:30:57.93ID:0pyQKPZl
掲示板の投稿で
本文の70%が半角の場合は投稿拒否をしたいです

半角判定の方法はわかったのですが
〜%で拒否の部分のコードをどう書けばいいのかわかりません

ヒントだけでもいいので助言ください
0083nobodyさん2013/05/31(金) 03:39:27.57ID:???
$lenOfOriginal = mb_strlen($src);

$hankaku = preg_replace('/[^\x{FF65}-\x{FF95}]/u', '', $src);

$lenOfHankaku = mb_strlen($hankaku);

$ratioOfHankaku = $lenOfHankaku / $lenOfOriginal;
0084nobodyさん2013/05/31(金) 03:43:39.41ID:???
if ($ratioOfHankak > 0.7) { throw new HogeHogeException(); }
0085nobodyさん2013/05/31(金) 05:05:18.35ID:Vx9Hevlv
すみません、ドットインストールのCakePHPの講座をやっているのですが、
よくわからないバグが生じております。

ブログにコメントを付けるものなのですが、endforeachが不正と表示されて、
処理が進まないエラーが生じました。

一応、書き加えたソースは以下のものです。
<ul>
<?php foreach ($post['Comment'] as $comment); ?>
<li><?php echo h($comment['body']) ?> by <?php echo h($comment['commenter']);?></li>
<?php endforeach; ?>
</ul>

エラーが生じるのは、この<?php endforeach; ?>です。
ただ、他のソースでも、この部分はきちんと処理が実行でき、それをコピッてきたので、
スペルミスの可能性は少ないかと思います。
何卒、お願いします。
0086nobodyさん2013/05/31(金) 05:08:09.36ID:???
なんだコレフレームワークってほんと別言語だな
0087nobodyさん2013/05/31(金) 06:02:21.89ID:???
viewは大体こういう書き方のが多いね
モデルやコントローラーは普通のPHPクラスで書かれてる
0088nobodyさん2013/05/31(金) 07:28:50.07ID:???
ここでID出せID出せっていってるやつは何目的でこのスレにいるんだ?
たいしたスキルもなく教えることもできないがIDだけにはこだわって
言い続けてる。お前は自閉症児かw

>>79

こういうやつなw何が目的なのか答えろよ引きこもりニートが
まっとうな言動をしてるようでお前の方こそ人を不愉快にしてることに
気づかないのか?

ようつべのコメントでもまともなコメをしてるようで相手をただ単に攻めてるだけ
ってのよくあるけどまさにそんな感じだな

お前みたいに自分の言動が人にどう思われるのかわからないで好き勝手にやってる
ゴミは社会の迷惑だから早く北朝鮮の炭鉱へ行って
0089nobodyさん2013/05/31(金) 08:17:29.55ID:???
>>85
foreach();
じゃなくて
foreach():
でしょ
0090nobodyさん2013/05/31(金) 09:52:51.73ID:Vx9Hevlv
>>89
わかりました、ありがとうございます。
foreach():
〜〜
endforeach;
ですね。
0091nobodyさん2013/05/31(金) 10:55:23.57ID:???
>>88
言い回しはともかく、IDを表示するのがルールなんだから答える必要はないと思うよ。
君の言動?も相当人を不愉快にさせてると思うけどね。
0092762013/05/31(金) 11:53:17.47ID:2B6R5nZc
話の流れで疑問が出たときもID必要なのね。

>>81
> オートロードでダメな理由って何なの?

一発でパスを確定できるファイル名でPHPファイルを置いているなら問題ないけど、
ロード候補ディレクトリが複数になる場合は、ファイルの存在チェックが必要になる。
そのオーバーヘッド分が馬鹿にならないんじゃないかと思った。

SPRに準拠したnamespaceを定義していて、きれいにPHPファイルを配置してるなら
問題ないけど。
0093762013/05/31(金) 17:18:33.14ID:???
時間ができたのでちょっとだけ実験してみた。

一つのクラスをnewするだけのコードを、"ab -c 32 -n 10000"でrequire_onceとautoloadを比較。
PHP 5.4.10。APC有効。開発用Macで実行。

require_once版:
Requests per second: 8452.75 [#/sec] (mean)
Time per request: 3.786 [ms] (mean)
Time per request: 0.118 [ms] (mean, across all concurrent requests)

autoload版:
Requests per second: 6625.91 [#/sec] (mean)
Time per request: 4.830 [ms] (mean)
Time per request: 0.151 [ms] (mean, across all concurrent requests)

autoloadの方が20%程度くらい遅いけど、そこそこぬるい環境だったら問題ないのかな。
0094nobodyさん2013/05/31(金) 17:31:36.61ID:???
自分でできるんなら、最初から自分でやれアホ
0095nobodyさん2013/05/31(金) 17:43:27.30ID:???
必要なファイルの数 = N1
無駄なファイルの数 = N2

ファイルロードのコスト = L
オートローダによる1ファイルあたりのオーバーヘッド = A
(オートローダのファイルロードコスト = L+A)

とした場合のファイルロード全体のコスト C

通常のファイルロードコスト C1
C1 = (N1+N2) * L

オートローダ使用時のコスト C2
C2 = N1 * (L+A)

オートローダ使用時の差分 C2-C1
N1*A - N2*L
0096nobodyさん2013/05/31(金) 17:44:32.16ID:???
現状のフレームワークでプラグイン多用した構成の場合は
ファイルの存在チェックのほうがはるかにコストが低い場合が多いと思うけどな。
素で書き起こした機能限定のシステムじゃなければオートローダ使わない手はないと思うけど。
0097762013/05/31(金) 17:56:07.06ID:???
>>95
うーん、そもそもその「無駄なファイルの数」というのが何なのかわからないんだ。どういうこと?
ひょっとして、ロードする必要が無いファイルもrequireしてるってこと?
0098762013/05/31(金) 18:04:22.71ID:???
あ、こういうことか。
Foo.php:
<?php
class Foo {
public function hoge() { $o = new Bar(); }
public function fuga() { $o = new Baz(); }

Bar.php:
<?php
class Bar {}

Baz.php:
<?php
class Baz {}

index.php:
<?php
require_once 'Foo.php';
require_once 'Bar.php';
require_once 'Baz.php';

$o = new Foo();
$o->hoge();

としたとき、Baz.phpのロードがいらないってことか。
0099952013/05/31(金) 18:04:47.74ID:???
え、だからオートローダが有利な場面があるんじゃないの?
おかしい?
0100762013/05/31(金) 18:09:16.63ID:2B6R5nZc
ところで、>>98のような場合、autoloadを使わないとき、requireはどうやるのがいいのかな。

ケース1:Fooを使う人は内部のことなんかしったこっちゃないからFoo.phpでrequireしろ派
Foo.php:
<?php
require_once 'Bar.php';
require_once 'Baz.php';

ケース2:呼び出し側でやる派
index.php:
<?php
require_once 'Foo.php';
require_once 'Bar.php';

俺の場合は、最初はケース1派だったんだけど、理由は忘れたがケース2派になり、今はautoload派になった。
0101nobodyさん2013/05/31(金) 18:13:00.31ID:2B6R5nZc
ケース1しかありえない
■ このスレッドは過去ログ倉庫に格納されています