【PHP】下らねぇ質問はここに書き込みやがれ 57
レス数が900を超えています。1000を超えると表示できなくなるよ。
0001nobodyさん
2007/10/22(月) 23:10:36ID:mIlonskoPHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 56
http://pc11.2ch.net/test/read.cgi/php/1192092941/
◆質問する時の注意
・ sage進行(メール欄にsageと記入すること)「sage進行」とはスレを目立つ上部に上げないことによって、荒らしが発見できないようにすることです
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
・ 書き込むときには、「公式マニュアル、リファレンス本は読みました」と明記すること
(でないと、公式マニュアル読めと煽られます)
◆質問後の注意
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
・質問者が「公式マニュアル読んだ」と書いていないからといって、
公式マニュアルに書いてもいないのに、公式マニュアルよめと適当なことを言わないこと。
質問者は公式マニュアルを読んでいるかもしれない。
【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0830nobodyさん
2007/11/01(木) 14:44:24ID:WVV5m+Xj有難うございます!
さっそく組み込んでみます!
0831nobodyさん
2007/11/01(木) 15:14:17ID:???0832nobodyさん
2007/11/01(木) 16:25:32ID:???0833nobodyさん
2007/11/01(木) 18:30:13ID:1mW3wcqfのようにタブで区切られた文字列を配列に格納するにはどうすればいいのでしょうか?
↓じゃ無理なようで・・・
print_r (array("'".mb_ereg_replace(' ',"', '",'い ろ は')."'"));
0835nobodyさん
2007/11/01(木) 18:47:26ID:???0836nobodyさん
2007/11/01(木) 18:57:12ID:???eval('print_r (array("\'".mb_ereg_replace(\' \',"\', \'",\'い ろ は\')."\'"));');
0838833
2007/11/01(木) 19:27:06ID:1mW3wcqfとりあえず>>837さんのやり方でやります。
0840nobodyさん
2007/11/01(木) 21:02:26ID:MsBqEUd7人気のタグをランキングにしたいのですが
DBに登録するときユーザーがいくつタグを入力するかが
確定されていないので、どうしてもうまくかけません。
ずばっときれいにかける方法ってありますか?
アイデアお願いします。
0841nobodyさん
2007/11/01(木) 21:06:17ID:???0842nobodyさん
2007/11/01(木) 21:09:14ID:MsBqEUd70843nobodyさん
2007/11/01(木) 21:14:31ID:???つforeach
どの段階で何がどうで困っているのか全然伝わらん。だって書いてねぇし。
質問としては15点。
0844nobodyさん
2007/11/01(木) 21:16:50ID:???集計しやすいよう再設計するなり、SQLこねくり回してなんとかなるならDB板で聞けばいい
PHPとはあんま関係なさそうだが
0845nobodyさん
2007/11/01(木) 21:43:54ID:MsBqEUd7やはり集計作業時に言われた通りSQLが複雑そうなので
DB板でききます。
ありがとうございます。
0847nobodyさん
2007/11/01(木) 22:09:55ID:???0848nobodyさん
2007/11/01(木) 22:17:42ID:???0849nobodyさん
2007/11/02(金) 00:24:56ID:???PHP触ったあとにC++とかJavaとかやってられねー
0850nobodyさん
2007/11/02(金) 00:29:11ID:???http://phpspot.org/blog/archives/2007/10/phpwapache.html
0852nobodyさん
2007/11/02(金) 00:41:19ID:fEbvkhE+php.iniの設定とかで表示できたりしますか?
0855nobodyさん
2007/11/02(金) 00:44:14ID:???Web特化というコンセプトで作ってるんだから一生そんな日はこない。
というかそんな機能いらないし、もしWindowsアプリを開発できるようになっても、
>PHP触ったあとにC++とかJavaとかやってられねー
こんなこといってるようじゃ無理。
PHPが簡単なのはWeb特化だからであって、PHPでGUIアプリ作るとなると、
別の使い方も覚えないといけなくなる。(ウインドウの作成や配置など)
JavaだってWeb用途に限るなら簡単。
0856nobodyさん
2007/11/02(金) 00:50:10ID:???クラスの組みやすさとか、そういうのがいいのよ
やっぱりそこは慣れの問題になるのかな・・・
変数に$のついてないのなんてプログラムじゃないやい つД`)
0857nobodyさん
2007/11/02(金) 00:58:41ID:???0858nobodyさん
2007/11/02(金) 01:00:16ID:???関数実行してあらかじめ返す型を決めなくていいのも・・・
0859nobodyさん
2007/11/02(金) 01:04:10ID:???0860nobodyさん
2007/11/02(金) 01:17:34ID:???0861nobodyさん
2007/11/02(金) 01:23:23ID:???ハハハ、一応笑とくよ
ところで PHP で Windowsアプリとかおっしゃるそこの貴方
PHP-GTKには興味ないの?
0862nobodyさん
2007/11/02(金) 01:25:31ID:???おおー!こんなものもあるんだー
PHPでGUIといえばWinBinderしか知らなかったけど
これもこれで良さそう
PHPでWindowsゲームとか作れるようになるのも近いかも試練!
0863nobodyさん
2007/11/02(金) 01:26:32ID:???0864nobodyさん
2007/11/02(金) 01:44:37ID:N3+siSMB<div><? echo $bbb; ?></div>
<div><? echo $ccc; ?></div>
とするのと
$html = <<<_EOD_
<div>$aaa</div>
<div>$bbb</div>
<div>$ccc</div>
_EOD_;
とではどちらが処理は早いのでしょ。2〜3行の話ではなくもっと行数が多いとしてですが。
それとヒアドキュメント内で/*====*/とするとそのまま表示されてしまいますが、
ヒアドキュメント内でのコメントはどう書けばいいのでしょうか。
0865nobodyさん
2007/11/02(金) 01:46:00ID:???コメント:使えない
0866nobodyさん
2007/11/02(金) 01:51:04ID:???0867nobodyさん
2007/11/02(金) 01:53:48ID:???Bamcompileは楽しいと思うよ
PHP+WinBinder+Bamcompileの開発ツールみたいなのができたらいいな
PHP-GTKの参考サイトが全くナスorz
スクリプトの実行させかたわかんね\(^o^)/
0868nobodyさん
2007/11/02(金) 01:58:29ID:N3+siSMBやっぱりコメントは無理ですか。
処理速度が変わらないようなのでヒアドキュメントで整理してきます。
レスありがとうございました。
0869867
2007/11/02(金) 01:59:04ID:???*.phpwにすればいいのか
0871nobodyさん
2007/11/02(金) 02:52:37ID:vzvDJiqRという配列があったとして、unset("b");とすると、
$array[0]と$array[2]が残りますが、
これを$array[0]、$array[1]と、
インデックスを詰めることは出来ないのでしょうか?
0872nobodyさん
2007/11/02(金) 03:02:09ID:???そういう関数あるかわからんが
関数作ってみればどうかな?
function 関数名は適当に($array, $del_key){
foreach($array as $key=>$value){
$array_tmp = array();
if($key != $del_key){
$array_tmp[$key] = $value;
}
return $array_tmp;
}
みたいな
0873nobodyさん
2007/11/02(金) 03:03:16ID:???新しい配列を作るしかない
ちなみに、何故インデクスの振りなおしが必要なの?
0875nobodyさん
2007/11/02(金) 03:12:01ID:???871もひどい
>$array = array("a"=>"aaa","b"=>"bbb","c"=>"ccc")
>という配列があったとして、unset("b");とすると、
>$array[0]と$array[2]が残りますが、
残りません。
0876nobodyさん
2007/11/02(金) 03:28:06ID:???ドッカン
m ドッカン
=====) )) ☆
∧_∧ | | / / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
( )| |_____ ∧_∧ < おらっ!出てこい>>871 >>872!!
「 ⌒ ̄ | | || (´Д` ) \___________
| /  ̄ | |/ 「 \
| | | | || || /\\
| | | | | へ//| | | |
| | | ロ|ロ |/,へ \| | | |
| ∧ | | | |/ \ / ( )
| | | |〈 | | | |
/ / / / | / | 〈| | |
/ / / / | | || | |
/ / / / =-----=-------- | |
0877nobodyさん
2007/11/02(金) 04:38:56ID:???0878nobodyさん
2007/11/02(金) 06:53:05ID:???$array['a']を$array[0]にするのは無理
0879nobodyさん
2007/11/02(金) 10:40:08ID:lfmgScK/includeやrequireした形跡がないのに、
同じファイル内には無いクラスをextendsしたり、
インスタンス化してつかったりしてるのですが、
これってどうやるんですか?
0880nobodyさん
2007/11/02(金) 10:48:17ID:???0881879
2007/11/02(金) 10:52:39ID:lfmgScK/なるほど。そういうカラクリですか。
ちょっとファイル数が多いので探すの大変ですが、
もう少し眺めてみたいと思います。
0882nobodyさん
2007/11/02(金) 12:00:31ID:???0883nobodyさん
2007/11/02(金) 12:01:30ID:I1nYMQiMfunction check($str) {
if ($strに問題がなかったら) {
return true;
}
return false;
}
function touroku() {
if (check($str)) {
登録処理;
exit("登録しました");
} else {
exit("$strも問題があるので登録できませんでした");
}
}
見たいな感じにしようと思ってるのですが、
touroku内でcheckするのはやっぱりおかしいですか?
function touroku() {
登録処理;
}
にして、
if (check()) {
touroku();
}
とかにしたほうがいいでしょうか?
説明下手なのでわかりにくかったらすみません・・・
0884nobodyさん
2007/11/02(金) 12:13:14ID:???たいていの場合では後者のほうがいいと思う
とんがった人はcheck()はアノテーションとしてtohroku()に後付したりするのかな
0885nobodyさん
2007/11/02(金) 13:43:09ID:58QPbX5W0887nobodyさん
2007/11/02(金) 14:00:29ID:58QPbX5W>>714以外の方法は無しってことでいいですかね?
改修中のソースにこういう処理してる部分があるのですが、セキュリティ的にどうなの?って思ったので。
0888nobodyさん
2007/11/02(金) 14:01:38ID:???0890nobodyさん
2007/11/02(金) 15:29:12ID:ehHCPDNI0892nobodyさん
2007/11/02(金) 15:40:12ID:ehHCPDNI入力フォームから値を受け取り確認画面へわたすという処理です。
ソースは
入力フォーム
<INPUT class="cell_width01" type="text" onkeydown="if(event.keyCode==13){event.returnValue = false;}" name="mdtt" value="<?php echo htmlentities(stripslashes($info['mdtt'])); ?>">
入力の空チェック
function _notInputed($str)
{
$str = str_replace(" ", " ", $str);
$str = trim($str);
if(0 == strlen($str)) return true;
return false;
}
<test>を入力すると空でfalseが返ってきてしまいます。
htmlentitiesやstr_replaceを使って試してみるのですが、
うまくいきません。
0893nobodyさん
2007/11/02(金) 15:44:17ID:???そりゃそうだろ
0894nobodyさん
2007/11/02(金) 15:47:20ID:ehHCPDNI質問の趣旨は、<>を入力すると全部空になってしまうので、
この空チェックでfalseを返すようにしたいんです。
0895nobodyさん
2007/11/02(金) 15:49:38ID:???0896nobodyさん
2007/11/02(金) 15:52:45ID:ehHCPDNIここで、呼び出して空の場合はこのエラーメッセージを排出するようにしていますが、
エラーとなるのです。
0897nobodyさん
2007/11/02(金) 16:00:00ID:???入力がPHPや当該の関数にちゃんと渡ってるかどうかデバックしてみたら。
0898nobodyさん
2007/11/02(金) 16:03:20ID:ehHCPDNIデバッグも何度もしているのですが、空なんです。
0899nobodyさん
2007/11/02(金) 16:05:21ID:???0901nobodyさん
2007/11/02(金) 16:26:49ID:ehHCPDNI処理が必要なのでしょうか?
0902nobodyさん
2007/11/02(金) 16:27:49ID:ehHCPDNI0903nobodyさん
2007/11/02(金) 16:55:37ID:VB7V02Tk0906nobodyさん
2007/11/02(金) 17:32:33ID:ehHCPDNI$_POSTで受け取る処理の中でサニタイズする関数を呼び出して
いるのですが空でした。
入力フォームのINPUTの中でonkeydown="if(event.keyCode==13){event.returnValue = false;}"
という部分があるのですが、ここで処理をしているかもしれませんので
調べてみます。
0908nobodyさん
2007/11/02(金) 17:41:36ID:???$this = new DNA();
0909nobodyさん
2007/11/02(金) 17:57:16ID:ehHCPDNIちゃんとtrueを返せるようにがんばります。
ありがとうございます。
0910nobodyさん
2007/11/02(金) 20:21:16ID:???3,000のような数字のカンマを抜いて3000にするにはどうすればいいですか?
0911nobodyさん
2007/11/02(金) 20:22:59ID:???echo str_replace(',', '', $hoge);
0913nobodyさん
2007/11/02(金) 21:02:40ID:???0914nobodyさん
2007/11/03(土) 01:12:45ID:Mo1PpAH9これはいれとけってものがありましたら教えてください。
pearとmysqlは入れました。zendoptiomizerは検討中です。
0915nobodyさん
2007/11/03(土) 01:16:27ID:???0916nobodyさん
2007/11/03(土) 01:16:43ID:???0917nobodyさん
2007/11/03(土) 01:21:07ID:???0919nobodyさん
2007/11/03(土) 01:32:58ID:???0920nobodyさん
2007/11/03(土) 01:33:45ID:???0921nobodyさん
2007/11/03(土) 01:33:57ID:???いまどきOpenBSDだろ常識的に考えて・・・
0922nobodyさん
2007/11/03(土) 01:36:25ID:???0924nobodyさん
2007/11/03(土) 02:09:11ID:Mo1PpAH9そういうプログラムで自作OS作ってるひといますか?
0925nobodyさん
2007/11/03(土) 02:12:46ID:???0927nobodyさん
2007/11/03(土) 02:16:22ID:???0928nobodyさん
2007/11/03(土) 02:17:14ID:???脳がリフレッシュされる
0929nobodyさん
2007/11/03(土) 03:54:37ID:WzuvDxLI#!/usr/local/bin/php
<?php
$p = '/root/log';
$i = 0;
while (true) {
file_put_contents($p, "OK");
print $i++.":".file_get_contents($p)."\n";
}
# ./foo.phpを2つのコンソールから実行すると、片方が「Bus error」として落ちます。必ずです。
fopen、fwrite、fcloseを使った場合は起きないんですが、これって何なんでしょう?
マニュアル見た限りでは、fopen〜fcloseと変わらないとあるんですが。
LOCK_EXオプションを付けても変わりませんでした。
0930nobodyさん
2007/11/03(土) 03:56:04ID:/D2HS3QMというようなファイル名+パラメータのurlを、
profile/yamada/ とする(変換する?)方法ってあるんでしょうか?
ブラウザのURLバー部分に擬似的にディレクトリ構造のように見せてるのか、
それともwebサーバ上に実際に物理的にディレクトリを作ってるのか
わからないですが…
訳のわからない質問かもしれませんが、お願いします
centOS + apache2 + php5 です
レス数が900を超えています。1000を超えると表示できなくなるよ。