【PHP】下らねぇ質問はここに書き込みやがれ 41
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2007/03/06(火) 15:39:46ID:naBsdy1ZPHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 40
http://pc11.2ch.net/test/read.cgi/php/1172151461/
◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
◆質問後の注意
・偽者防止に必ずIDを表示させること。(メール欄に何も記述しない)
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ http://pc10.2ch.net/php/subback.html
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで http://pc10.2ch.net/db/subback.html
0412nobodyさん
2007/03/09(金) 17:58:01ID:???前者のほうが間違いが少ない。IDEによっては前者のほうが特に見やすい。
後者なら、
print "{$i}<BR>\n";
にすべき。
0414nobodyさん
2007/03/09(金) 18:05:33ID:???0417nobodyさん
2007/03/09(金) 18:17:36ID:???0420nobodyさん
2007/03/09(金) 19:14:08ID:???0421nobodyさん
2007/03/09(金) 20:33:58ID:aTAkfZpm(静的変数あるいはグローバル変数のような使い方)
を教えて下さい。
関数起動する度にリセットされて使い物にならない('A`)
0422nobodyさん
2007/03/09(金) 20:41:16ID:???このメソッド、引数に全角文字列を指定すると誤動作しませんか?
falseが返ったり、falseじゃなくても文字化けしていたり。
回避手段を知っている方がいたら教えてほしいです。
0423422
2007/03/09(金) 20:55:20ID:???0424343
2007/03/09(金) 21:34:28ID:???遅レスになりましたがレスありがとう。
htmlやjavascriptでウィンドウを出す方法はわかるのですが
単純にphpだけで表示する事ができるのかな、と思って質問しました。
(phpでhtmlやjavascriptを書き出す、以外で)
0426nobodyさん
2007/03/09(金) 21:45:10ID:???普通にglobalで保持できると思うけど。
>関数起動する度にリセットされて使い物にならない('A`)
ってことはセッション変数に入れとけばいいじゃんとかそんな話か?
何がしたくて無理なのかわかんない。
0427nobodyさん
2007/03/09(金) 21:56:32ID:8A7FFt/1<form>からPOSTで送っているのですが、なぜか
澄 摺 寸 世 瀬 畝 是 凄 制 勢 姓 征 性 成 政
整 星 晴 棲 栖 正 清 牲 生 盛 精 聖 声 製 西 誠
繊 羨 腺 舛 船 薦 詮 賎 践 選 遷 銭 銑 閃 鮮
前 善 漸 然 全 禅 繕 膳 糎 噌 塑 岨 措 曾 曽 楚
の文字だけがnullになります。 それとEUC-JPなのに表、能が?に化けます。 ソとかは平気です。
EUC-JPではなく、UTF-8に変えると全て解決します。
PHP4.3
mbstring.language = Japanese
mbstring.internal_encoding = EUC-JP
mbstring.http_input = pass
mbstring.http_output = EUC-JP
mbstring.encoding_translation = On
mbstring.detect_order = auto
です。
0428nobodyさん
2007/03/09(金) 22:01:43ID:???<form>からPOSTで送っているのですが、なぜか
澄 摺 寸 世 瀬 畝 是 凄 制 勢 姓 征 性 成 政
整 星 晴 棲 栖 正 清 牲 生 盛 精 聖 声 製 西 誠
繊 羨 腺 舛 船 薦 詮 賎 践 選 遷 銭 銑 閃 鮮
前 善 漸 然 全 禅 繕 膳 糎 噌 塑 岨 措 曾 曽 楚
の文字だけがnullになります。 それとEUC-JPなのに表、能が?に化けます。 ソとかは平気です。
EUC-JPではなく、UTF-8に変えると全て解決します。
この部分次回からテンプレ入れようぜ
0429nobodyさん
2007/03/09(金) 22:02:44ID:JIMPI+q/ヒントになるサイトを教えてください
0430虚弱PHP
2007/03/09(金) 22:02:59ID:???万が一にもないと思うけど、
PHPでWindowsアプリとか、
X アプリとか作りたいわけじゃないよね?
サーバーサイドスクリプトとしてPHP使うなら、
その質問はありえないんだけど。
つまり、どういう仕組みで動いているかの勉強が必要ってこと。
0431nobodyさん
2007/03/09(金) 22:03:16ID:???0432nobodyさん
2007/03/09(金) 22:07:13ID:???http://www.php.net/manual/ja/
0434nobodyさん
2007/03/09(金) 22:14:51ID:???いくらかまともなシステム作ったことあるならそんな質問は出ないだろう
碌な経験も無いうちからいきなり課金が発生するサイトは止めろ
0435424
2007/03/09(金) 22:18:57ID:???レスありがとう。
うすうすそんな気はしてました。
インターネットはクライアント側のリクエストを返すものだから
サーバー側で実行させるCGIとかPHPでは関われないってことですね。
PHPって便利な関数とかいっぱいあるからもしかして・・・、なんて夢見てました。
0436428
2007/03/09(金) 22:20:34ID:8A7FFt/10437nobodyさん
2007/03/09(金) 22:22:11ID:???その質問をしちゃうようなレベルで、そのシステムを作るのは、
無謀&無責任過ぎる。っていうかその知能では無理w
0438nobodyさん
2007/03/09(金) 22:26:15ID:???│ │─┼─ /| _,.イ,,.ィ' ─────‐‐‐‐ゝ;。←>>429
│ | │ | | | イン ,'´ ̄`ヘ、 // | \
__{_从 ノ}ノ/ / ./ | \
..__/}ノ `ノく゚((/ ./ |
/, -‐===≡==‐-`つ/ ,.イ  ̄ ̄// )) / ;∵|:・.
_,,,...//〃ー,_/(. / /ミノ__ /´('´ / .∴・|∵’
,,イ';;^;;;;;;;:::::""""'''''''' ::"〃,,__∠_/ ,∠∠_/゙〈ミ、、
/;;::◎'''::; );_____ @巛 く{ヾミヲ' ゙Y} ゙
≧_ノ __ノ))三= _..、'、"^^^ \ ! }'
~''''ー< ___、-~\( ,' /
\( ,'.. /
0439429
2007/03/09(金) 22:33:17ID:JIMPI+q/ちょっと考えたら作り方わかりました。
ありがとうございました。
>>434>>437
あおらないでください
>>433
0440nobodyさん
2007/03/09(金) 22:41:40ID:???0441nobodyさん
2007/03/09(金) 22:58:28ID:???まず「先に」、ちょっと考えてから質問しろよ。
0442nobodyさん
2007/03/09(金) 23:01:26ID:???forで10000回ループした場合。
$i."<br>
1.6349639892578
1.5304729938507
1.5425598621368
1.5483570098877
1.707211971283
1.7406980991364
2.0300641059875
1.7282230854034
1.7270748615265
1.7243540287018
"{$i}<br>"
1.7250878810883
1.7435381412506
1.6110119819641
1.6941339969635
1.7088131904602
1.8066370487213
1.7398798465729
1.7096009254456
1.6707351207733
1.7386131286621
結論:CPUのご機嫌次第
0443nobodyさん
2007/03/09(金) 23:39:06ID:???それを10000回もループさせる処理なんて無いしw
0445nobodyさん
2007/03/09(金) 23:44:55ID:???0446nobodyさん
2007/03/09(金) 23:45:40ID:???0447nobodyさん
2007/03/09(金) 23:48:26ID:???お前みたいな無駄な時間ばっかり費やすキモヲタは雇いたくないねw
>>446
バカかお前はw ベンチマークを知ってるかどうかと、無意味なベンチを取るかどうかは無関係だww
0449nobodyさん
2007/03/09(金) 23:50:02ID:???違う違う。
確かに仕事ではこんな処理走らせる事はほぼ無いだろうけど
お前みたいな言い方する奴と一緒にいるとイライラするの
0450nobodyさん
2007/03/09(金) 23:50:03ID:???0451nobodyさん
2007/03/09(金) 23:54:31ID:???0452nobodyさん
2007/03/10(土) 00:04:05ID:???そもそも、どの言い方が気にいらなかったんだか知らんが、
普通、お前みたいなタイプのほうがみんなイライラするよww
0453nobodyさん
2007/03/10(土) 00:07:37ID:???0455nobodyさん
2007/03/10(土) 00:11:49ID:???す、凄い!何が凄いって自分が平均的な思想の人間だと思い込んでるところ!
そして関係の無い二人以外の人間を巻き込んでるところ!!
もしかして韓国の方ですか?
0456nobodyさん
2007/03/10(土) 00:25:40ID:RPfFpUNc遅レスになってしまい申し訳ありません。
きっとIDも変わってますが…orz
var $beforeID;
function hoge($nowID){
$objResponse = new xajaxResponse();
grobal $beforeID;
$objResponse->addAssign($beforeID,"innerHTML", $newContent);
$beforeID = $nowID;
$objResponse->addAssign($nowID,"innerHTML", $newContent);
return $objResponse;
}
要はこう言う事をやりたいのですが、$beforeIDの値がリセットされるのです。
// global周りは適当に書いたのでおかしい所があるかもしれないのですがこんなニュアンスで
0458nobodyさん
2007/03/10(土) 00:56:27ID:???その関数を
<button onclick="xajax_hoge(0)" >hoge</button>
見たいに使うんなら、そらー無理でしょう。
毎回スクリプトにpostするわけだから。
セッション変数に入れるか、パラメータ代入と引数で引き継いでいくかじゃない?
0459nobodyさん
2007/03/10(土) 02:57:40ID:???実用的に見て全く意味なんかねぇよボケwww
どうしてそうキモヲタってのは、くだらねぇベンチ取って大喜びするんだw
そんなことよりも、もっとソース全体のアルゴリズムの見直しとか
セキュリティのチェックとかに時間を遣えよバカどもww
0460nobodyさん
2007/03/10(土) 03:37:12ID:???0461nobodyさん
2007/03/10(土) 03:38:52ID:???0462nobodyさん
2007/03/10(土) 03:53:20ID:???1 $url = "http://www.2ch.net/"
2
3 if(****************) ←【$url】がNot Found(存在しない)だったら
4 {
5 echo "urlが存在しません。" ;
6 }
7 else {
8 include($url);
9 }
0463nobodyさん
2007/03/10(土) 03:54:16ID:???0464nobodyさん
2007/03/10(土) 03:56:17ID:???0465462
2007/03/10(土) 03:57:24ID:???/ ̄ l | / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
■■-っ < >>464 んなーこたーない
´∀`/ \__________
__/|Y/\.
Ё|__ | / |
| У.. |
0466nobodyさん
2007/03/10(土) 04:38:32ID:L0CVYQw+この前他人のソースを眺めていたら、
デリミタに#をつかっていたのですが、
最後閉じるときに、#smと書かれていました。
これはどういう意味なのでしょうか?
0469nobodyさん
2007/03/10(土) 05:06:36ID:L0CVYQw+パターン修飾子というんですね。
正直書いてある意味がわかりませんが、
理解できるように勉強してきます。
レスありがとうございました。
0471nobodyさん
2007/03/10(土) 06:41:40ID:???フレームワークのMapleってどうなったんですか?
0472nobodyさん
2007/03/10(土) 06:46:10ID:???0473nobodyさん
2007/03/10(土) 07:27:04ID:???$header_list = @get_headers($url);
if (!isset($header_list[0]) or strpos($header_list[0], "404") !== false)
0474nobodyさん
2007/03/10(土) 10:14:10ID:???みなさん、ファイルを読むときに、fopenとか使ってファイルポインタを操作してますか?
私はtouchとかfileとかfile_put_contentsとか手軽な関数があるのでそれですましがちです。
こういうケースはファイルポインタじゃないとできないよ、とかありますか?
0476nobodyさん
2007/03/10(土) 10:49:55ID:F5cNKsq/flockが必要な場合
0478nobodyさん
2007/03/10(土) 10:51:59ID:F5cNKsq/fileしてからfile_put_contentsだと同じファイルかどうか分からないからな
0479nobodyさん
2007/03/10(土) 12:20:36ID:???仮にスクリプトにXSSの脆弱性があっても、
それがログなどに保存されない場合は問題ないですよね?
たとえば、
<?php
echo $_GET['hoge'];
?>
とかの場合、XSSの被害を受けるのは仕込もうとした本人だけですよね?
0481nobodyさん
2007/03/10(土) 12:59:38ID:???$_GET[ ]をそのまま表示するだけなら
fopen($_GET[ ], "r")とかするやつはいないだろうけど
0483474
2007/03/10(土) 13:49:14ID:???レスサンクス
たしかにファイル読んでチェック&上書きとかならロックしなくちゃいけかったですね。
参考になりました。
0484nobodyさん
2007/03/10(土) 13:59:55ID:???0485nobodyさん
2007/03/10(土) 14:14:03ID:???計算式載ってた
ttp://ja.wikipedia.org/wiki/%E5%81%8F%E5%B7%AE%E5%80%A4
0486nobodyさん
2007/03/10(土) 14:34:49ID:???それ、町の図書館にあった「数学の本」に書いてあったので
この前やってみたぜ。
電卓なしで平方根の計算をするのは大変だったが
Googleが助けてくれたぜよ!
0487nobodyさん
2007/03/10(土) 15:33:15ID:???0488nobodyさん
2007/03/10(土) 17:03:36ID:???プログラムに間違いがあるときブラウザにメッセージが出るけど、
それの種類をphp.iniで設定できますよね? でもその書き方が分かり
ません。
E_ALL | ~E_NOTICE
とか書かれててワケ分かりません。
0489軟式PHP
2007/03/10(土) 17:09:36ID:???結局のところ論理演算だよ。 and、or、xorとか。
10進数…2進数
1…00000001
2…00000010
4…00000100
8…00001000
16…00010000
みたいに被らないような数値をフラグとして使ってるだけ。
E_ALL ^ E_NOTICEとかだと
内部的にはxorしてフラグを0にしてるだけという単純な仕組み。
と、言ってて俺の説明下手さにorzしてきたわ。
0490軟式PHP
2007/03/10(土) 17:24:31ID:???http://www.php.net/manual/ja/function.error-reporting.php
ここを見たら分かるかもしれん。ビット演算とかそのへん分かってないとキツイかも。
0492nobodyさん
2007/03/10(土) 17:45:30ID:???0493nobodyさん
2007/03/10(土) 17:55:11ID:4M3pGGUH外部から書き込みしているのかなぜかホスト規制が効きません。
urlを投稿してくるので、httpを禁止ワードにしたいのですが、
どうすればいいのでしょうか?
0495nobodyさん
2007/03/10(土) 18:27:48ID:???一ヶ月みっちり基礎から覚えれば・・
0497nobodyさん
2007/03/10(土) 20:49:47ID:uq04XWP+0498nobodyさん
2007/03/10(土) 21:03:03ID:???0499nobodyさん
2007/03/10(土) 22:39:16ID:???http://pc11.2ch.net/test/read.cgi/php/1167984858/
0500nobodyさん
2007/03/10(土) 23:46:11ID:VGePLioSループで最後までまわして、packでバッファに入れてファイルに書き出す処理を4回やるとき、
ループを4回まわして個別に処理するのと、
ループは1回でその中で並列処理してバッファに入れるのと、
どっちがいいかな?
日本語分かり難くてスマソ
具体的には掲示板のログ処理で携帯3キャリアとPCの絵文字を相互変換した
表示用キャッシュファイルを作る作業です
上のは1記事分で実際は5記事分処理をします
0502501
2007/03/11(日) 00:05:47ID:???参考までに聞きたいけど
絵文字変換モジュールは自作したのを使ってる?
それとも何か違うものを使ってるなら参考までに教えてほしい。
0503nobodyさん
2007/03/11(日) 00:06:28ID:???俺はPHP等の「Webプログラム」しかやったコト無いから
バイナリ文字列に変換するとかちょっと深い部分はよく分
からないけど、両方そんなに変わらないんじゃないか?
並列処理するにも結局CPUパワーを分けるわけだから
そんなにメリットが無い気がする。
なら個別処理のほうがソースがスッキリしそうかな?
0504500
2007/03/11(日) 00:25:33ID:y0VmsJS4参考にしたのはttp://www.sound-uz.jp/php/tips/mobile.html
のサイトと、今は潰れたサイトから入手したスクリプトと、
ちょっと前の深夜にこのスレの前スレかな?うpした人のスクリプトです
俺は自分なりにアレンジを加えて、3キャリアとも>>500のようにして、
一つ一つマッチするのを見ていくのにしてます
>>503
個別処理だとアホのようにループいっぱい回すはめになります
スッキリなら並列処理で1回ループの方ですね
メモリ節約も気になったけど、俺はソーススッキリ方式にしてみます
0505500
2007/03/11(日) 00:33:05ID:y0VmsJS4実は絵文字変換は4年ほど前に一応作ってあって、
そのときはauの動く絵文字が手に入らなくそのままになってた
んで1年ほど前に偶然動く絵文字画像(PC用gifファイル)を
手に入れて、今度こそは完成させようとしたけど、
自分で書いた処理がワケワカメで嫌になって放置
そしてこの度やっと完成しそうな予感
でも相互変換テーブルがまだ蜜柑orz
0506nobodyさん
2007/03/11(日) 01:29:14ID:???そういや携帯もう2年も変えてないな・・・
>>500
スマン、並列処理ってどういう感じに書いてるの?
よければソース見せてくれ・・・
0507501
2007/03/11(日) 01:32:24ID:???俺がうpった奴だよそれw
0508nobodyさん
2007/03/11(日) 01:32:45ID:???0510500
2007/03/11(日) 02:15:28ID:???>>508
最近やっとオブジェクト指向かじり始めた、見た目指向の日曜プログラマなので
並列処理は謎ということでorz
>>507
家宝にしますw
>>509
プチパレっていう配布サイトのスクリプトに付属してるやつです
(個人サイトっぽいのでURLは略、ググルとでてきます)
0511nobodyさん
2007/03/11(日) 02:38:26ID:???ファイルポインタを取得してロックのことなんですが
$FP=fopen("./hage.txt","r+");
flock($FP,LOCK_EX);
↑よりも↓にしたほうが
flock($FP=fopen("./hage.txt","r+"),LOCK_EX);
ファイルポインタを取得してからロックをかけるまでにタイムラグがないので良いのでしょうか?
前者だと1行目と2行目の間に他からファイルポインタを2重に取られるような気がします。
■ このスレッドは過去ログ倉庫に格納されています