【PHP】質問スレッド Part15
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
04/03/07 02:03ID:???上級者用や雑談スレを立てたくなった場合は後から適宜立ててください。
■本家
http://www.php.net/
■日本 PHP ユーザ会
http://www.php.gr.jp/
■PHP マニュアル
http://www.php.net/manual/ja/
■PEAR マニュアル
http://pear.php.net/manual/ja/
過去スレ, 関連スレ及び注意事項等は、 あふぉが居なけりゃ>>2-5
0176nobodyさん
04/03/10 19:09ID:???includeされる側でパス決めてないかい?
includeする側のファイルからみたパスを取るようにする。
>>173
お前はクズ。
仕事ではプログラムするな、ボケ。
>>174
正解。
プリフィックスを付けなければならないわけではなく、
これが、数値、文字等他の人が見てもわかればよい。
0177nobodyさん
04/03/10 19:10ID:???0180nobodyさん
04/03/10 19:18ID:???文字列かFALSEという括りとなると、設計上おかしい。
0181nobodyさん
04/03/10 19:18ID:???0182nobodyさん
04/03/10 19:19ID:???0185nobodyさん
04/03/10 19:22ID:???それとも自己チューの集まりか?
0186nobodyさん
04/03/10 19:23ID:???文字列もbool値も返す関数だってPHPにあるのに
0187nobodyさん
04/03/10 19:23ID:???0188nobodyさん
04/03/10 19:24ID:???お間抜けさんの集まるスレはここですか?
0189nobodyさん
04/03/10 19:25ID:???0190nobodyさん
04/03/10 19:25ID:???0191nobodyさん
04/03/10 19:26ID:???こんなの
0193nobodyさん
04/03/10 19:28ID:???数値、またはfalse
配列、またはfalse
こういった使い方はOKだろ
0194nobodyさん
04/03/10 19:29ID:???PHP開発者も、厳しい規約があれば全く使い物にならない。
プログラムの必須知識である型を無視できて、
手軽さが良くて使っているのがほとんどだろう。
まあ、PHPで本格的なシステム作るわけでないし、
他ができる連中はPHP使わなければ良い話だ。
俺らは底辺だと言われようと、使い文にならんと言われようと、
気にせずPHP使うだけだし。
0196nobodyさん
04/03/10 19:30ID:???Array…成功
文字列…失敗
false…処理しない
みたいな使い方してるよ。
0198nobodyさん
04/03/10 19:36ID:???そこがいいんだが
0199nobodyさん
04/03/10 19:36ID:???0200172
04/03/10 19:38ID:???ありがとうございます。
includeする側から見たファイルパスでやっていますが、
違うディレクトリに入ったところから取り込むと、ダメになってしまいます。
具体的に説明すると、
public_html/に 1linebbs.php と log.dat が入っていて、
ここと同じディレクトリの index.php から include するのはできるのですが、
hoge/ に入った index.php から include すると、
当たり前ですが log.dat を読み込めません。
1linebbs.php が log.dat を読み込んで表示するようになっているからです。
また、解りにくくなってしまいましたが、うまい解決方法があったら教えてください<(_ _)>
0201nobodyさん
04/03/10 19:39ID:???$a = FALSE;
$b = "";
if ($a == $b) echo("auau");
if ($a === $b) echo("hoge");
0202nobodyさん
04/03/10 19:42ID:???0203nobodyさん
04/03/10 19:49ID:???>成功で文字列、失敗ならFALSEなんて、
>糞関数作る口か?
これって、一応釣ってるんですよねぇ?
食いついたほうがいいんでしょうか
0204nobodyさん
04/03/10 19:51ID:???0208nobodyさん
04/03/10 20:00ID:???まぁ、PHP使って楽しんでくれや
0210nobodyさん
04/03/10 20:04ID:???業務で使ってる人と、
趣味で使ってる人が入り乱れてるからしょうがないよ。
趣味の人に、厳格な規約押し付けてもしょうがないし。
0211nobodyさん
04/03/10 20:05ID:???ファイルがみつからんのか、
ファイルが開けないのか不明。
もし、みつからないのであれば、
読もうとするファイル名出力してミソ
0212nobodyさん
04/03/10 20:13ID:???「あぁ、こんな使い方も出来るのね」って単純に感動したクチなんだけどね。
0213nobodyさん
04/03/10 20:30ID:???相対パスでincludeして、そこからさらに相対パスでログを読み込んでいるので、
違う場所から読み込もうとしてもできないんでつ(´・ω・`)
0214nobodyさん
04/03/10 20:45ID:???0215nobodyさん
04/03/10 21:22ID:???厳密さを求める香具師は JAVA 使え
0216nobodyさん
04/03/10 21:44ID:???お前頭おかしいだろ?
よく生きていけるな
0217nobodyさん
04/03/10 21:47ID:???やりたいことは判らないでもないが、
元々includeはコードを取ってくるもんであって
処理結果や動作をもってくるものではないです。
HTTPストリームを使ってPHPでの実行結果を
取って来ることも、まあ出来るけどね。
>>215
厳密さを求めると寧ろJavaの厳密でない部分
(結構ある)が鼻についてしょうがない。
PHPは適当なままで良いが、もちっと適当さにも
統一感をくれ。
0218nobodyさん
04/03/10 21:48ID:???0220nobodyさん
04/03/10 22:12ID:???もうちょっと言葉選んでくれ
0221nobodyさん
04/03/10 22:19ID:???session_unset
破棄と開放はどう違うんでしょうか??
破棄=定義しているが中身がNULL
開放=未定義
ってことですか?
0223nobodyさん
04/03/10 22:32ID:w+pCKnptサーバで許可されていないからでしょうか?
mkdir("./aaa",0707);
0226nobodyさん
04/03/10 23:54ID:???システムビープなりませんか!?
漏れだけか…。
Windowsで動かそうなんて無謀だったか。
(PHP4.3.5.5+mysql-3.23.38+Anweb1.42k php.exe使用)
0227nobodyさん
04/03/11 00:20ID:???俺さ、SQL文ミスるたびにシステムビープ鳴るのどうにかならないかなぁ、って思って検索したら
あなたのようなことを書いてるのが多くてびっくり。
俺は、PHP4+MySQL4+Apache1.3.19なんだけど、「アクセス時」にビープ音はならないねぇ。
0228nobodyさん
04/03/11 00:29ID:???・コマンドラインでSQL文を間違えるとビープ音が鳴る
・PHPでSQL文を間違えてもビープ音は出ない
だな。MySQL 4.0.15 , PHP4.3.3 , Windows 2000 , Apache 1.3.29。
0230nobodyさん
04/03/11 00:37ID:???どうしたらいいだ?
0231nobodyさん
04/03/11 00:47ID:???お前の態度が
気に入らない
0233nobodyさん
04/03/11 00:52ID:???動作確認したのがphpmyadminなので、SQL文ミスの恐れはないと思います。
先ほどisapiに変えてみたところビープが消えました。
が、isapiだと、これはこれでライブラリロード中のまま止まったりするし…。
サーバー側でメモリのエラーが出る→システムビープが鳴る
こんな予想立てて、ちょっくらanwebのサクーシャに問うてみます。
0234nobodyさん
04/03/11 02:25ID:???$charには、a-Z、0-9の文字が入ってます。$char[0]>a,$char[1]>b・・・・
これってちゃんと8個のランダムな文字列になってますよね?
srand();はしてないですけど。
ローカル(Windows)で動作試したんですが、10回ほどで同じものが出てきた時もありました。
62通りの8乗分の1なのに、たった10回で・・・
偶然、でいいんでしょうか?
何か気になります
0237nobodyさん
04/03/11 10:16ID:???BBSの部分を関数化し、
引数にDATファイル渡すようにしれ。
同じDATや違うDAT使うのも、切り替えしやすくなるぞ。
機能だけ関数化し、設定は外出し汁。
0239nobodyさん
04/03/11 11:06ID:???質問の仕方ってものがあるだろ、態度悪い奴に甘えさせるなよ。
まぁ、覚えたての知識を披露したいような厨に何言っても無駄だけど
0241nobodyさん
04/03/11 11:42ID:???0242nobodyさん
04/03/11 12:44ID:???0245nobodyさん
04/03/11 13:28ID:???同じかぜーのなかーうぃのーうぃのーおhh
きーきーきーらきあすきーすきー
と決めーきをはこぶーよとゅとゅとれーん
0246nobodyさん
04/03/11 13:53ID:???0248nobodyさん
04/03/11 15:24ID:???<?php
if($_REQUEST['mode']=='a'){
処理A
}
elseif($_REQUEST['mode']=='b'){
処理B
}
?>
と、延々と続いています。
一つの処理に付き、50行くらいなので、ソースがとても見れたもんじゃありません。
そこで、
処理Aを書いているもの・・a.inc
処理Bを書いているもの・・b.inc
として
if($_REQUEST['mode']=='a'){
require('a.inc');
}
elseif($_REQUEST['mode']=='b'){
require('a.inc');
}
とすれば、メインのソースは綺麗で、しかもそのままファイルの挿入を行うので、局所とか考えなくていいので楽ですが、素人丸出しです。。
みなさんはこういう場合どういう風にするのでしょうか?
0249nobodyさん
04/03/11 15:31ID:???0250nobodyさん
04/03/11 15:42ID:???switch($_REQUEST['mode']){
case "a":
require('a.inc');
break;
case "b":
require('b.inc');
break;
default:
break;
}
0251nobodyさん
04/03/11 16:33ID:???mb_send_mailを使っても受け取ったメールは文字化けします。
なぜでしょうか?
0252nobodyさん
04/03/11 16:36ID:???山田さんのやつみたいなのは?
ttp://www.dotaster.com/~s-yamada/php/
続きが読みたいんだけどもう更新されないのかな。。。
0253nobodyさん
04/03/11 16:38ID:???require じゃなくて include かなぁ?
あと、elseif が増えるようだったら、
switch〜case にしたり、
さらにツリー構造を作って、
includeの中でinclude。
0254248
04/03/11 16:48ID:???ファイルの挿入って、別に素人しかしないわけじゃないんですね。
ファイルに関数を詰め込んで、requireして関数を呼び出すのが上手な人のやり方だと思ったんですけどそうでもないみたいですね。
ところで、requireするファイルの先頭に<?phpつけないとphpの処理をしてくれないのって仕様ですか?
0255nobodyさん
04/03/11 16:55ID:bi3wfCFY見づらくないか
require/includeの為に分岐するコーディングは
普段しないが、敢えてするならこんな感じにする。
$mode_lists = array('a', 'b', 'c', ...);
if (in_array($_REQUEST['mode'], $mode_lists) {
require $_REQUEST['mode'] . '.inc';
} else {
error_reporting("WARNING: Choose unrecoganized mode");
exit(1);
}
~
0257nobodyさん
04/03/11 18:03ID:???config.inc・・・変数の定義
main.phpでfunction.incのtest()を呼び出すとすると
main.php内にconfig.incを挿入して
test($st1r,$str2);
とするか
function.incにconfig.incを挿入して、
function test($a,$b){
global $str1,$str2;
処理
}
として、main.php内でtest();
とするのはどっちがいいでしょうか?
後者のほうが、見た目がいいと思うんですが、
関数が一杯詰まってるファイルの中でグローバル宣言は控えたほうがいいでしょうか?
0259258
04/03/11 18:11ID:???config.incで定義されている変数をfunction.inc内でしか使わないなら後者(グローバル宣言は除く)
0260nobodyさん
04/03/11 18:12ID:???0261258
04/03/11 18:14ID:???定数の定義のみなら後者でもいいが、
変数の定義なら、普通はやっぱ前者。
0262257
04/03/11 18:19ID:???<?php
require('config.inc);
function func1(・・・){
・・・
}
function func2(・・・){
・・・
}
function func3(・・・){
・・・
}
?>
こういう状態だからです。
0264nobodyさん
04/03/11 18:25ID:???裏で生成した一部の変数、例えばDBへのコネクションオブジェクトなど、
表に出てきて欲しくない変数は、globalで渡す。
0265258
04/03/11 18:41ID:???関数がglobal宣言して参照しているだけならな
変数じゃなくて定数を使用すべきじゃないのか?。
0267nobodyさん
04/03/11 19:59ID:???あああ・・・>3文字
この場合は6文字と返してほしいのですが、、何かありませんか?
0271nobodyさん
04/03/12 12:37ID:???0272nobodyさん
04/03/12 12:44ID:???ここにアクセスすると自動的にリンク元が書き込まれるようにするにはどうすればいいでしゅか?
■ このスレッドは過去ログ倉庫に格納されています