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

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

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

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

◆質問用テンプレ
【OS名】vine linux
【PHPのバージョン】php5.26
【連携ソフトウェア】mysql
【質問内容】

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

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

◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
0072nobodyさん2009/02/02(月) 21:15:56ID:???
>>71
せめて改行してくれ見づらい
0073592009/02/02(月) 21:17:24ID:???
レスありがとうございます。標準的な方法はないみたいですね
自鯖なので、SSL用のポートだったら
SetEnvでHTTPSという環境変数を設定するようにしました
0074nobodyさん2009/02/02(月) 21:18:08ID:25ge88B9
でもおかしいな、計算が合わないよ
相場だと1回5000円で、10人生徒がいたとして5万円。
20人だと10万円で、40人で20万円。

たかがPHP講座で40人も生徒が集まるか?
0075nobodyさん2009/02/02(月) 21:23:29ID:???
>>74
どんな糞口座だ?
PHPのハンズオントレーニングなら、一人1時間1万円取られるよ。
1日で4〜6万が相場
00761992009/02/02(月) 21:26:17ID:???
>>23
phpって1行の文字列の制限があったと思うのですが、
1行10万文字を読み込んで、改行を入れて加工することができるのでしょうか?
0077nobodyさん2009/02/02(月) 21:31:47ID:???
>>76
どこに書いてあったの?
0078762009/02/03(火) 00:00:31ID:Zy01yD9b
>>77
http://www.e-and-a.ws/06/101.asp
参考書に書いてあったのですが、
ググったところ、このページの半分下のほうに「1024」で検索すれば書いていました。
これの制限にひっかかるのではないのでしょうか?
0079nobodyさん2009/02/03(火) 00:09:36ID:???
一行の制限はありません
0080nobodyさん2009/02/03(火) 00:16:30ID:???
ガタガタ抜かす前にやってみろよ。

file_put_contents('long.txt', str_repeat('12345', 150000));
$str = file_get_contents('long.txt');
$replaced = str_replace('5', "\n", $str);
file_put_contents('replaced.txt', $replaced);

150,000 * 5文字を変数に保持し、ファイルに書き出し、読み込み、変換する。
余裕で動く。俺の環境だと一瞬で完了する。

やってみて気づいた制限は、文字列がPHP_INT_MAXバイト(32bit環境なら40億強)を超えるとNGになる事。
また、PHP側のメモリ利用制限量(php.iniのmemory_limit)を超えてもNGになる。
0081nobodyさん2009/02/03(火) 00:19:49ID:???
と思って過去ログ辿ったら、オリジナルの問題は「数百万文字」なのか。
>76だけ見て10万文字で試してしまった。
0082nobodyさん2009/02/03(火) 00:24:15ID:???
引数でバイト数が指定できる関数のことで混乱してるんじゃないの
fgetsだと第二引数を省略すれば関数的には行の最後まで読んでくれるらしいよ
0083nobodyさん2009/02/03(火) 01:54:32ID:???
>>78
よう分からん。
↓を読んでphpに1行の文字列の制限があると判断したってこと?


 「fgets()関数」

  fopen()関数 で開いたファイルの、指定したファイル名の1行を取出しま
  す。
  取出す場合には、引数で最大バイト数を指定しますが、省略した場合には
  自動的に 1024バイト(日本語で 512文字分)になります。
0084nobodyさん2009/02/03(火) 11:09:06ID:LJeHoB4T
一般ユーザーがphp.iniの設定値を.htaccessファイル内の
php_flag php_valueによって上書きすることができますが、
.htaccess内のphp_flag php_valueの使用を禁止する方法は
ありますでしょうか?
0085nobodyさん2009/02/03(火) 11:11:32ID:???
ないよ
0086nobodyさん2009/02/03(火) 11:26:29ID:???
php_admin_valueってそのためじゃなかったっけ?
0087nobodyさん2009/02/03(火) 12:07:21ID:???
AllowOverride none ではないのかな?
0088nobodyさん2009/02/03(火) 12:12:28ID:???
noneは不便だろ
0089nobodyさん2009/02/03(火) 13:43:43ID:dcWE6E+I
header関数で別ページに飛ばしたいのですが
この関数は他の出力よりも前に書かないといけないみたいですけど
htmlを出力した後に呼び出してもちゃんと別ページに移動できます
これはブラウザの仕様でしょうか?
0090nobodyさん2009/02/03(火) 13:47:35ID:???
正常にheaderで飛ばしたのなら出力されたかもわからないわけだが
0091nobodyさん2009/02/03(火) 13:52:16ID:z3SY7sls
php5を使っています。
関数の中で同じクラスの関数を呼び出すにはどうすればいいですか?

class c_check{
  global $error_message;
function __construct(){...}
function f_int($var,$endflg){
intかチェック
$error_message = 'intエラーです';
}
function f_isset($var,$endflg){
issetチェック
$error_message = 'issetエラーです';
}
.
.
.
function show_error(){
$error_message表示&ログ記録&スクリプト終了処理
}
}
というクラスがあって、
f_issetやf_intの中で$endflgがTRUEならshow_errorを呼び出したいのですが、
$this->show_error();と書いても呼び出されません。
どこかに自分のオブジェクトを生成しなければならないのでしょうか?
0092nobodyさん2009/02/03(火) 13:53:25ID:???
>>89
やってみなよ。
そういうのは、一度やってどんなエラーが出るのか知っとけ
0093nobodyさん2009/02/03(火) 13:55:34ID:???
>>91
がんばれ
0094nobodyさん2009/02/03(火) 14:20:19ID:dcWE6E+I
>>92
ありがとうございます
すでに実行済みで疑問に思ったのでここで質問させていただきました
0095nobodyさん2009/02/03(火) 14:22:06ID:dcWE6E+I
>>90
クッキーを読み込み
ファイル書き込み後文字出力
そのごheader関数を使い別ページに移動

この一連の流れの後にクッキーの値を確認、ファイルの書き込み内容も確認してます
0096nobodyさん2009/02/03(火) 14:24:24ID:z3SY7sls
>91です。
すいません、なんか入力値がおかしなことになってました。
0097nobodyさん2009/02/03(火) 14:34:10ID:???
>>91
globalなんて使わないからメンバ変数にしな
private $error_message;にして
セットは$this->error_message = "";でやる感じ
エラーチェックは1つのメソッドでやったほうがいい

>関数の中で同じクラスの関数を呼び出すにはどうすればいいですか?
staticメソッドならClass::method(自クラスならself::methodでも可)で呼び出せるけど
インスタンスメソッドなら自信をインスタンス化しないとならない
0098nobodyさん2009/02/03(火) 14:35:30ID:???
>>89 >>94-95
素晴らしい釣りだな

> これはブラウザの仕様でしょうか?
0099nobodyさん2009/02/03(火) 14:36:27ID:???
>>97みたいなカスの言うことは話半分で聞いとけ
中には正しいことも混じってるだろうが。
0100nobodyさん2009/02/03(火) 14:41:07ID:???
>>97の言うことを理解できなくて発狂する>>99であった
0101nobodyさん2009/02/03(火) 14:44:47ID:???
あぁ、確かに理解する気になれん。
用語を正しく使えてないからな。
0102nobodyさん2009/02/03(火) 14:46:37ID:???
用語を知らないだけだろw
Javaあたりやってるやつなら普通に理解できる
0103nobodyさん2009/02/03(火) 14:48:49ID:???
> globalなんて使わないからメンバ変数にしな

使わないんじゃねぇよ。使えないんだよ
0104nobodyさん2009/02/03(火) 14:49:38ID:???
> エラーチェックは1つのメソッドでやったほうがいい

あほか、設計次第だろが
0105nobodyさん2009/02/03(火) 14:50:06ID:???
どういう反論してくるかと思えばこれはひどい
0106nobodyさん2009/02/03(火) 14:50:35ID:???
> インスタンスメソッドなら自信をインスタンス化しないとならない

はしょりすぎ、スコープが書いてなきゃ意味ないだろ
0107nobodyさん2009/02/03(火) 14:51:36ID:???
> セットは$this->error_message = "";でやる感じ

言われんでも、質問者だってそのぐらい知ってんだろ
えらそうに、
0108nobodyさん2009/02/03(火) 14:53:09ID:???
だいたい、質問者は
> どこかに自分のオブジェクトを生成しなければならないのでしょうか?
って聞いてるんだ。答えは YES
それ以外は蛇足以外のなにものでもない
0109nobodyさん2009/02/03(火) 14:53:36ID:???
えらそうとかガキかお前は
0110nobodyさん2009/02/03(火) 14:53:58ID:???
アホラシw
0111nobodyさん2009/02/03(火) 14:54:44ID:???
ガキだけど、なに?
あんた、もしかして、中年オヤジなわけ?
0112nobodyさん2009/02/03(火) 14:57:22ID:???
>>103-104はただの揚げ足だな
同じフィールドにセットするという質問者の書き方にあわせただけだろ
まったく関係ないフィールド値なら話も変わるが
0113nobodyさん2009/02/03(火) 14:59:05ID:???
開き直ってるとこがまた痛いw
ム板に帰りなよ
0114nobodyさん2009/02/03(火) 14:59:15ID:???
>>91なんて釣りに決まってんだろ。(誰のw)
0115nobodyさん2009/02/03(火) 15:00:09ID:???
開き直って悪いかw カスドモ
0116nobodyさん2009/02/03(火) 15:00:26ID:???
>>85-88
ありがとうございました。
レンタルサーバでhtaccessで大半の機能は使えるけど
php_value php_flgは使えないサーバがあったので、
どこで制御しているのか気になっての質問でした。
0117nobodyさん2009/02/03(火) 15:35:21ID:???
>>91
$c = new c_check();
$c->f_int( "数字じゃないよ", 0 );

でOK
0118nobodyさん2009/02/03(火) 16:02:57ID:MgNsuIVl
mysqlでtimeで時間を保存してて、
その形式が00:00:00だったとき、
phpでselectするときに、24時間で、秒で表したいんだけど
そんな関数ってありますでしょうか。
explodeで、:で配列だして、それぞれ秒変換して、足す。
ならできそうなんですけど、ぱっと一瞬で変換してくれるような方法があれば教えください。
0119nobodyさん2009/02/03(火) 16:07:42ID:???
なんかこの前そんな質問あったな
ちょっと過去ログみてこよう
0120nobodyさん2009/02/03(火) 16:20:25ID:???
>>118
直訳するとMysqlから引っ張ってくる
00:00:00形式を数値化(unixtime形式)して取得したいと
いっているのか?
試してないけどMysql側でUNIX_TIMESTAMP()という関数が
あるがこれ駆使したらできないか?
0121nobodyさん2009/02/03(火) 16:22:47ID:MgNsuIVl
>>119
そうでしたか
>>120
ちょっとやってみます
0122nobodyさん2009/02/03(火) 16:31:43ID:MgNsuIVl
やってみたところ
UNIX_TIMESTAMP()で思い通りのことができました。
ありがとうございました
0123nobodyさん2009/02/03(火) 17:31:46ID:DYfqiAfI
くだらない質問ですいませんがお願いします
PHPの掲示板(展開方式)でおすすめのやつおしえてください
0124nobodyさん2009/02/03(火) 17:33:01ID:???
やっぱ自作でしょ
0125nobodyさん2009/02/03(火) 17:34:59ID:???
>>123
http://pc11.2ch.net/test/read.cgi/hp/1219654359/
0126nobodyさん2009/02/03(火) 17:42:41ID:???
>>98

いいえ真面目に質問してますが^^;
0127nobodyさん2009/02/03(火) 17:43:34ID:???
この時間は再帰処理も書けない厨房が降臨してるからまともな回答はでないと覚えておいたほうがいいぞ
0128nobodyさん2009/02/03(火) 17:46:33ID:???
うんうん
この時間は、再帰の必要のないところで再帰したがる奴が(ry
0129nobodyさん2009/02/03(火) 18:55:26ID:???
>>123

phpbbぐらい知っとけ
0130nobodyさん2009/02/03(火) 19:23:49ID:ijF8lhfw
1)あるディレクトリへの直接のアクセス(ブックマークからのリンク含む)を禁止したいです

リファラとって、リファラ中にそのサイトのドメインが文字列としてあればOKという対処で
いいんでしょうか?

また、headerのロケーションでの移動は、リファラにその情報が乗らないんでしょうか?
ログイン画面からのOK処理でlocation移動させるとリファラチェックがエラー扱いになります
やり方がまずかったのかも知れないですが、、

1)の処理のためのいいやり方を教えてください、御願いします
0131nobodyさん2009/02/03(火) 19:42:03ID:???
loadHTMLで適当なHTML読み込むと警告でるけど
DOM化はされているようだ。
で、この警告がでないようにする方法ってある?
0132nobodyさん2009/02/03(火) 19:53:15ID:???
>>130
.htaccess
ではだめなん?
なんか後半の意味がわからないけど
0133nobodyさん2009/02/03(火) 20:00:53ID:d7p/0aUM
create_functionのサンプルとして載っている

<?php
$newfunc = create_function('$a,$b', 'return "ln($a) + ln($b) = " . log($a * $b);');
echo "新しい匿名関数: $newfunc\n";
echo $newfunc(2, M_E) . "\n";
// 出力
// 新しい匿名関数: lambda_1
// ln(2) + ln(2.718281828459) = 1.6931471805599
?>


を実行すると、文字化けするんだけど、なんで?
0134nobodyさん2009/02/03(火) 20:03:16ID:???
>>130
セッションで固有ID振ってく手はあるかもね

>>133
文字コードに問題があるから
0135nobodyさん2009/02/03(火) 20:29:15ID:d7p/0aUM
>>134
どういうことかな?
UTF-8のホームページから、コピーしてきて、
エディタにUTF-8で貼り付けてるから
問題ないと思うんだが。
それに文字化けするのってこのサンプルだけ
なんだよね。
0136nobodyさん2009/02/03(火) 20:31:03ID:d7p/0aUM
http://cybergarden.biz/lectures/php-intro.html

ここ見ると、PHPのハンズオン講座、
1時間5千円で、5時間で2万5千円で、
18人集めるから、一日で売り上げが
45万円集まるんだよね。

そのうち、半分が経費だとしても、
一日の仕事で20万くらい余裕でかせげそう。

お前らなんで講師やらないの?
0137nobodyさん2009/02/03(火) 20:35:04ID:???
>UTF-8のホームページから、コピーしてきて、

lol
0138nobodyさん2009/02/03(火) 20:40:05ID:d7p/0aUM
プログラマーってバカだよね〜
講師になれば1日で45万円かせげるのに、
わざわざコードを書いて、1ヶ月で40万しかもらえないなんて。

しかも書いたコードの著作権も会社に取られて
しまうんでしょう?
0139nobodyさん2009/02/03(火) 20:45:55ID:???
じゃあお前がなればいいじゃん
0140nobodyさん2009/02/03(火) 20:46:51ID:d7p/0aUM
>>139
まじでなりたいわ。
PHPのハンズオンの会社で
一番料金の高いところはどこ?
0141nobodyさん2009/02/03(火) 20:49:56ID:???
スレ違い
0142nobodyさん2009/02/03(火) 21:04:24ID:???
PHPの講師(笑)
0143nobodyさん2009/02/03(火) 22:27:39ID:G0zcxThl
PHPファイルの拡張子をなぜphpにしたのでしょうか。
PHP関連情報をググるときに何も関係ないものがファイル名で引っかかってうざいのですが・・・
0144nobodyさん2009/02/03(火) 22:31:57ID:???
もっとがんばって検索うまくなれ
0145nobodyさん2009/02/03(火) 22:45:44ID:???
検索ってやっぱり絞り込むための言葉を拾い出すセンスだよなあ
0146nobodyさん2009/02/03(火) 23:35:37ID:???
どの言語で作成したのかわかるため
別にphpじゃなくてもoresamaって拡張子だってphpは動かせるぞ
ようは好きな拡張子を設定しテロ
0147nobodyさん2009/02/04(水) 03:01:42ID:aAjFpYnj
>>132
htaccessだとどういう処理になるでしょうか?
リダイレクトだけくらいならわかるんですが、組み合わせになると自信がないです
スレ違いですみませんが、良ければ簡単に教えてください
0148nobodyさん2009/02/04(水) 03:03:45ID:???
スレ違い
0149nobodyさん2009/02/04(水) 05:13:39ID:???
>>147
どの程度の厳密性するかによる
リファラだと偽装とか携帯でリファラを出さないのとか、
そもそもリファラを送信しないクライアントもあるかもしれない
そんなのまで目くじら立てるか否か
(例えばPCで画像を直リンクさせたくない処理とかが参考になると思う)
それが我慢できないのなら、そのディレクトリに認証をかけるしかないし、
webプログラミング的に言えばセッションでもってそのディレクトリでスクリプト的に
(スクリプト経由でファイルを出す)処理するとかだな
01501492009/02/04(水) 05:15:44ID:???
ぁぁ、.htaccessの話とは関係なかったな
一般論ってことで
0151nobodyさん2009/02/04(水) 05:55:37ID:P19oRL/b
perlのクダスレも作れや!クズども
0152nobodyさん2009/02/04(水) 07:34:29ID:???
>>150
.htaccessでもできるよ。実際にはmod_rewriteが使えれば、だけど。
スレチだけどね
0153nobodyさん2009/02/04(水) 11:20:20ID:???
>>138
売上45万で受取45万だと思ってるバカ乙
0154nobodyさん2009/02/04(水) 11:50:27ID:???
>>153
雇われだと受け取れてもせいぜい15万が良いところね…
>>138は競馬などで3万円かけて3万1千円のあたりがきたら
3万1千円儲かったと思える幸せなやつなんだろう(´ω`)
0155nobodyさん2009/02/04(水) 12:16:17ID:Kwvel5vA
httpd.confでhttp://localhost/a.php?a=$1 みたいなのをhttp://localhost/a/$1
で表示させました。
すると、a.phpと同じ場所にあるb.phpにリンクできるように、
a.php内でa href="b.php"としていたリンクの表示が、http://localhost/a/b.php
となってしまいました。
なのでa href="../b.php"とすることで対処できたのですが、
もしも、このリンクが性的に大量にあったとすると、
全部../をつけなければいけないということでしょうか?
ほぼスレ違ですがよろしくお願いします。
0156nobodyさん2009/02/04(水) 12:17:20ID:Kwvel5vA
→静的
0157nobodyさん2009/02/04(水) 12:28:25ID:???
>>155
HTMLの勉強しろ
リンクは基本的にホームディレクトリからの絶対パスで指定すべき
相対パスなんか使うな
0158nobodyさん2009/02/04(水) 12:31:19ID:Kwvel5vA
>>157
なるほど、勉強になりました。
一度最初から編集するのは面倒くさいかもしれませんが、
逆にそれの方がすっきりするような気がしてきました。
ありがとうございました。
0159nobodyさん2009/02/04(水) 12:39:19ID:???
>>158
本気か?
普通はhttpd.confの設定を1対1になるように関数でもクラスでも書いて、
パラメーターをURLに変換するんだよ。
0160nobodyさん2009/02/04(水) 16:42:03ID:???
mod_rewireが使えない鯖でそれっぽいことやる海外スクリプト使ってるからべつにいいや
0161nobodyさん2009/02/04(水) 16:48:23ID:???
フリーライダー乙
0162nobodyさん2009/02/04(水) 19:45:30ID:ycXVzljr
こんばんわ〜
PDOでデータベース構築しようと思います。
0163nobodyさん2009/02/04(水) 20:04:25ID:???
>>162
PDOで質問でもない内容なら↓こちらでどうぞ
ttp://pc11.2ch.net/test/read.cgi/tech/1232712334/
0164nobodyさん2009/02/04(水) 22:53:26ID:???
http://blog.livedoor.jp/dankogai/archives/51172176.html
>ちょっとした事情により、ある文字列のn回繰り返しを作る関数 (PHPでいうところのarray_repeat(),

array_repeat...?
0165nobodyさん2009/02/04(水) 22:56:46ID:???
array_repeat に一致する日本語のページ 約 293 件中 1 - 10 件目 (0.42 秒)
http://www.google.co.jp/search?hl=ja&q=array_repeat&lr=lang_ja
0166nobodyさん2009/02/04(水) 23:41:01ID:ofs0LpAO
phpの基本文法を覚え、よく使われる関数の使い方も覚えました
このあとクラスについて覚えるべきかフレームワークの使い方を覚えるべきは悩むのですが
どちらがおすすめでしょうか?
0167nobodyさん2009/02/04(水) 23:42:00ID:???
>>166
PEAR→クラス→FW
0168nobodyさん2009/02/04(水) 23:42:08ID:???
基礎文法を完全に学ぶ
0169nobodyさん2009/02/04(水) 23:51:49ID:???
>>166
ネタにマジレスして悪いんだけど、
文法とか、関数はマニュアル見ながらやれば十分、
フレームワークだって、ドキュメントとAPI、phpDoc見れば大概のことはわかる。
そんなんは枝葉に過ぎんよ。

決定的に違いがでるのは、ソフトウエア開発の基礎的なノウハウ
何を基礎だと思ってるかってのが開発者の個性。そこを磨け
0170nobodyさん2009/02/05(木) 00:10:28ID:???
ウザ先輩乙www
0171nobodyさん2009/02/05(木) 00:17:17ID:???
          ,      /〃ハヾ  / ∧∨〃、ヾ} l| :}ミ;l\
        /〃// / 〃l lヽ∨,〈ヾ、メ〈 }} ;l リ ハ l`!ヽ.
          //' /,'  ,' 〃 l l川/,ヘ丶\;;ヽ/:'/〃∧ l ト、:l !
         〃,'/ ;  ,l ,'' ,l| レ'/A、.`、\;;ヽ∨〃/,仆|│l }. |、
         i' ,'' l| ,l ' l. !| l∠ニ_‐\ヽ;\,//,イ| l | l ト/ λ!   、
.        l ;  :|| ,'i:/ l| |:|: |``'^‐`ヾ∨`゙//|斗,l ! | ,タ /l.| l  三__|__
       l ' l |」,' l' lハ |'Ν    ̄´ /` ,|l_=ミ|! ly' ,〈 :|| |  口 |
        |l .l H|i: l | ゙、| l        _.::: ,!: l厂`刈/ /!} :l|    ‐┬‐
        |! :l |)!| ! |  ヽ      '´ ’/'_,.   ノイ.〃/|!    │田│
        l|l |l 「゙|l |`{             ..   _   |}/,ハ l     ̄ ̄  
       |!l |l、| !l :|.      ‘ー-‐==ニ=:、__j:)  l'|/|l リ    、 マ
ヽ ̄ニ‐、__.」乢!L!lヱL」__           ー、 `'''´   从「 /     了 用 
 \ `ヽ\      /l |       / ̄´     //        '"`ー‐
.  ,、  l  ゙、    / ' |、      {        /l/         ,
   '}  l  ゙,    /   |:::\      }     ,.イ/          レ |  
   l  l   l  ,.イ   l:::::::::\__   `'-‐::"// |′          ノ
   l   !   K ヽ,、 \「`''''''''"´:::::::;;:" //          
.    l   l   ト、\( _.... ヽ  .:.::::::::;;″ /'       _    
\   |  l|  八、ヽi´    | .:.:::::::::::::i' .:/'"´ ̄ ̄ ̄ ,.へ\
■ このスレッドは過去ログ倉庫に格納されています