トップページphp
990コメント299KB

【PHP】下らねぇ質問はここに書き込みやがれ 68

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2008/05/03(土) 22:52:16ID:???
まず読め→【PHP マニュアル】http://www.php.net/manual/ja/
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは970が立ててください立たなかった場合は980よろ

◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 67
http://pc11.2ch.net/test/read.cgi/php/1207863515/
◆質問する時の注意
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を必ず明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
・偽者防止に必ずIDを表示(メール欄に何も記述しない)、若しくはトリップをつける事。

◆質問後の注意
・偽者防止に必ずIDを表示(メール欄に何も記述しない)、若しくは質問時のトリップをつける事。
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
 (荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)

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

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0562nobodyさん2008/05/14(水) 17:43:11ID:WFEW7+yn
$test="abcdefghijkl"
という漢字の任意の文字列の間すべてに
スラッシュを入れたいのですが
どのようにすれば良いのでしょうか?
結果として
$test="a/b/c/d/e/f/g/h/i/j/k/l"
としたいです
0563nobodyさん2008/05/14(水) 17:50:40ID:???
うん。
これでこそ、このスレだよね。
0564nobodyさん2008/05/14(水) 17:51:29ID:???
うんそうだね。
0565nobodyさん2008/05/14(水) 17:54:25ID:???
>>562
マルチバイト文字も対応が必要なら、自分で考えて。
implode('/', str_split($str))
0566nobodyさん2008/05/14(水) 18:02:53ID:WFEW7+yn
>>565
ありがとうございます
0567nobodyさん2008/05/14(水) 18:11:20ID:???
むかつく誤変換なのでレスしない
0568nobodyさん2008/05/14(水) 18:48:04ID:???
>>567
キチガイ乙
0569nobodyさん2008/05/14(水) 20:44:06ID:???
具体的にいえば、仕様書が古くて役に立たない場合に他のシステムの仕様を把握しようとするとき、
馬鹿Slerの下請けは、ソースコードを一生懸命解析しようとする。

しかし、日立はまず仕様のあるべき姿を業務資料から立案し、
ソースコードはその確認のために使う。
そこで、仕様バグやバグになる可能性を発見する。

根本からシステムを見直す。決してつぎはぎではない。動けばいいではない。
どちらが本来のエンジニアのあるべき姿か分かるよな。
0570nobodyさん2008/05/14(水) 20:50:14ID:???
mb_convert_kanaが反映されない
mb_strlenがstrlenと同じ結果になる
なぜ?
0571nobodyさん2008/05/14(水) 20:54:09ID:???
日立なら問題はすべて解決してくれる。
0572nobodyさん2008/05/14(水) 20:55:07ID:???
>>570
mb関数の設定
0573nobodyさん2008/05/14(水) 21:17:27ID:???
>>572
ぐぐったらそれらしいものが
サンクス
0574nobodyさん2008/05/14(水) 22:07:27ID:???
PGレベルで\350,000 〜 \550,000を予定していますが、どうですか?

http://www.e-engineerhaken.com/040_anken/042_tokyo23/002277.php
0575nobodyさん2008/05/14(水) 22:18:07ID:???
学生でよければ
0576nobodyさん2008/05/15(木) 00:58:18ID:???
2次元にカンマ区切りで配列したtxtファイルデータから、
phpで部分的にデータを取り出す場合(何行目の何列目?)
のphpの記述はどのようになるでしょうか?
0577nobodyさん2008/05/15(木) 01:05:50ID:???
>>576
「php csv 関数」でググッてから質問しろ
0578nobodyさん2008/05/15(木) 01:15:46ID:???
>>575
学生は都合悪くなるとすぐ逃げるかた却下
0579nobodyさん2008/05/15(木) 01:18:21ID:???
メール投稿での日記更新とかで
投稿用メールアドレスをユーザーに登録してもらって
即座に使用可能になるのってどうやってるんでしょうか。
0580nobodyさん2008/05/15(木) 01:49:32ID:???
そもそも即座に使用できないとき何してるのか考えろ
05815792008/05/15(木) 01:49:34ID:???
すみません、甘えすぎました
0582nobodyさん2008/05/15(木) 03:00:12ID:???
うむ、次からは気をつけたまえ
0583nobodyさん2008/05/15(木) 03:04:32ID:???
>>582
氏ねニート
0584nobodyさん2008/05/15(木) 04:22:17ID:???
と、ニートが申しております
0585nobodyさん2008/05/15(木) 06:14:36ID:???
PEAR::DB + MySQLでlike中間一致検索する場合、
%や_をエスケープするのに簡単な方法はありますか?
自分で考えたのは
function myescape($keyword) {
$keyword = str_replace('\\', '\\\\\\\\', $keyword);
$keyword = str_replace('%', '\%', $keyword);
$keyword = str_replace('_', '\_', $keyword);
return $keyword;
}
$db->getAll("select * from t where name like '%".myescape($keyword)."'";
という感じなのですが、これでいいのでしょうか?
05865852008/05/15(木) 06:16:42ID:???
朝っぱらから疲れたので質問は取り下げます
05875852008/05/15(木) 06:29:27ID:???
>>586 そういわずに教えてください…
05885852008/05/15(木) 07:19:28ID:uzQIA50K
>>586-587
騙るのはやめてください
まったく、ひまですね
IDだせばいいんでしょ!
回答よろ
0589nobodyさん2008/05/15(木) 07:36:44ID:???
>>574
いきてぇw
0590nobodyさん2008/05/15(木) 09:52:12ID:???
xdebugをソースからインストールしようとしているのですが、どうもうまくいきません。
やり方は以下のページと同じで、
http://www.trekdevel.net/archives/171
コンパイルは成功したのですが、php.iniにzend_extension=...を書いても
php -mやphpinfoにxdebugが出てきません。

こういう場合どこかにエラーでも出ないのでしょうか?
0591nobodyさん2008/05/15(木) 10:28:13ID:???
NGName:585
NGID:uzQIA50K
0592nobodyさん2008/05/15(木) 10:52:56ID:uzQIA50K
答えられないなら黙ってればいいのに
0593nobodyさん2008/05/15(木) 10:56:09ID:???
それで動くなら、それでいいじゃん。
0594nobodyさん2008/05/15(木) 11:08:52ID:uzQIA50K
うるせえよわからないなら黙ってろ!
0595nobodyさん2008/05/15(木) 11:21:37ID:???
>>593
>それで動くなら、それでいいじゃん。

動 く な ら 、 そ れ で い い じ ゃ ん ! !

動 く な ら 、 そ れ で い い じ ゃ ん ! !

動 く な ら 、 そ れ で い い じ ゃ ん ! !
0596nobodyさん2008/05/15(木) 11:43:45ID:???
eaccelerator入れようとしたのですが
--with-php-config=
で指定する
php-config
locateしてみたのですがないようです。
この場合どうすればいいでしょうか?
05975962008/05/15(木) 11:58:42ID:???
って、ここの回答者ってキチガイが多いから他いくか・・
0598nobodyさん2008/05/15(木) 12:00:05ID:???
>>597
そんな事やってて楽しいの?
0599nobodyさん2008/05/15(木) 12:53:47ID:???
分からないことは逃げよ。ここの裏の掟。
PHPの質問受け付けてくれるところなら、ほかにもあるしね。
0600nobodyさん2008/05/15(木) 13:07:31ID:???
自分がそうだからそう思えるんだろうね。
どんだけスキルないのw
0601nobodyさん2008/05/15(木) 21:34:39ID:???
>>585
なんでprepared使わないんだ
0602nobodyさん2008/05/15(木) 21:55:49ID:???
>>585
なんでJP1使わないんだ
0603nobodyさん2008/05/16(金) 03:32:33ID:???
>>585
なんでフレームワーク使わないんだ?
0604nobodyさん2008/05/16(金) 03:37:25ID:???
>>585
なんでJP1使わないんだ
0605nobodyさん2008/05/16(金) 05:45:52ID:???
自分では、元気のつもりだったんだけど、
病院で精密検査してもらったら心筋梗塞と診断されてしまった。

3ヶ月間入院して安静にしたら、ついに寝たきりになってしまった。
その後、介護認定を受けたら介護度は5になった。

膀胱カテーテルを留置してもらい、しかも疥癬に感染してしまった。
そのため、家族に感染を防ぐ為毎日全身を清拭することになった。

疥癬が治癒したら、入浴サービスを利用することにした。

訪問看護は週に3回である。これは、JP1で典型的に成功した事例です。
0606nobodyさん2008/05/16(金) 14:05:30ID:???
symfonyは、ファイルに含まれているクラスのパスを自動でリストアップしますが
それと同じことが出来るライブラリとかがあれば教えてください
0607nobodyさん2008/05/16(金) 16:46:29ID:???
symfonyの中
0608nobodyさん2008/05/16(金) 18:27:15ID:rxHRpk5j
PHPに限ったことではないのですが・・・

16777215
という数値を
FFFFFF
に直すには、どのような変数を使うのがスマートでしょうか?

よろしくお願いします。
0609nobodyさん2008/05/16(金) 18:36:51ID:???
intval
0610nobodyさん2008/05/16(金) 18:43:42ID:???
>>608
言語によるがPHPならdechexとか
06115962008/05/16(金) 18:54:18ID:???
>>608
$hensu=16777215;
$hensu="FFFFFF";
echo $hensu;
0612nobodyさん2008/05/16(金) 18:57:32ID:???
質問者からキチガイに転身したわけか。
0613nobodyさん2008/05/16(金) 19:15:54ID:LhmlCzbv
質問です。
フォームのデータをDBに入れるときはエスケープ処理をしますが
セッションに入れるときも何か処理したほうがいいのでしょうか?
06146082008/05/16(金) 19:38:41ID:rxHRpk5j
>>609
>>610

レスありがとうございます。

dechexで希望通りのことができました。
実際につかうときはstr_padで桁数をそろえたりも必要かもしれませんね。

>>611

来ると思ってましたがこういうのも好きですw

ありがとうございました。
0615nobodyさん2008/05/16(金) 20:38:00ID:???
WinXP にて 今まで XAMPP を使用していたのですが、勉強がてらXAMPP をアンインストールして、
Apache 2.2 / PHP 5.2.6 をインストールし直しました。
今までXAMPP下で動かしていたプログラムを移動し、実行したところ、
関数に対して文字列の引数を与える際、"" や '' で囲ってあげなかったところ――例えば foo(hoge);――が以下のようなエラーを吐くようになりました。

NOTICE : Use of undefined constant image - assumed 'hoge' ....

どうやら与えられた引数を定数として解釈してしまい、そんな定数ないじゃん!と言っているようなのです。

これは error_reporting の設定の問題なのでしょうか。それとも別に何か設定があるのでしょうか。
ご助言いただけると幸いです。
0616nobodyさん2008/05/16(金) 20:43:52ID:???
>>615
マニュアルも読めないならxamppなんて使うな(つか勉強のためにxampp使うとか有り得ない)
0617nobodyさん2008/05/16(金) 20:55:05ID:???
なんで文字列をクオートで括らないのか理解できない
0618nobodyさん2008/05/16(金) 20:57:07ID:???
>>615
"" や '' で囲ってあげてください><
0619nobodyさん2008/05/16(金) 21:09:20ID:???
括らないのが許されるのは小学生までだよねー
0620nobodyさん2008/05/16(金) 21:12:42ID:???
>>615
http://www.php.net/manual/ja/language.constants.php
> 未定義の定数を使用した場合、ちょうどstringとしてコールしたかのように(CONSTANT vs "CONSTANT")、
> PHPはその定数自体の名前を使用したと仮定します。 この際、E_NOTICE が発生します。

未定義の定数 hoge を使っても、E_NOTICE つきで hoge == 'hoge' と見なしてくれてしまう。
この仕様、世話焼きすぎだと思う。
06216152008/05/16(金) 21:44:42ID:cNash65G
ごめんなさい、ID出し忘れました。
それに訂正です。
foo(hoge); を投げたときに帰ってくるエラーが
Notice : Use of undefined constant hoge - assumed 'hoge' ....
です。
0622nobodyさん2008/05/16(金) 21:49:02ID:???
更新し忘れてました。
>>616-620
返信ありがとうございます。
確かに引数は括るべきであって、それを怠った自分が悪いということはわかっています。
ただ、今までは括らなくとも動いていたので、どこの設定でそうなっているのか、ということを知りたく、質問した次第です。
スレ汚し失礼しました。
06236222008/05/16(金) 21:49:52ID:cNash65G
sage チェックが orz
0624nobodyさん2008/05/16(金) 22:38:55ID:???
>>613
データの使い方によりあmす
0625nobodyさん2008/05/16(金) 23:58:18ID:???
>>624
使い方によるとは?
0626nobodyさん2008/05/17(土) 00:44:09ID:???
>>625
そのまんまだろ
じぶんがひつようになったときにつかう
わかったかゆとり!
0627ヌルホース2008/05/17(土) 01:50:40ID:???
http://tool-1.net/
通称fpは、どこのサーバをレンタルしてるかわかりますか? 
また、どうやって調べるか教えてください。
0628nobodyさん2008/05/17(土) 01:53:45ID:???
スレタイ嫁。



はい次の質問者どうぞ。
0629ヌルホース2008/05/17(土) 01:59:21ID:???
(`・ω・´)
ヌルー
どこのスレいったら、教えてくれるでしょうか?
0630nobodyさん2008/05/17(土) 02:12:05ID:???
>>629
海外のサーバを借りているみたいですね
先方に問い合わせたら教えてくれましたよ
0631nobodyさん2008/05/17(土) 09:01:16ID:???
>>627
http://www.prox.ne.jp/

0632nobodyさん2008/05/17(土) 16:04:35ID:???
>>620
そういう世話焼きすぎがまさにPHP的だと思う。
3分ハッキングにはちょうどいい。
0633nobodyさん2008/05/17(土) 21:19:35ID:axq+Svx6
$_SERVER['PATH_INFO']を使って2chみたいなURLの掲示板を作成しています。
「read.php/1/」「read.php/23/」みたいに指定し、ログの表示は出来たのですが、
なぜかスタイルシートが適用されません。

何もパスを付けずに「read.php」を実行させると普通にスタイルシートが適用されるのですが、
「read.php/1/」みたいな感じにパスを付けるとどうしてもCSSが適用されません。

どうしたらよいでしょうか?
0634nobodyさん2008/05/17(土) 21:27:32ID:???
絶対パスで指定する
0635nobodyさん2008/05/17(土) 21:30:11ID:axq+Svx6
>>634
本当ありがとうございます。
出来ました。
0636nobodyさん2008/05/17(土) 21:35:54ID:???
>>635
あとread.php/1/ってしたなら1ってディレクトリから相対パスで指定すりゃできる
0637nobodyさん2008/05/17(土) 22:06:54ID:???
$sql = "
SELECT *
FROM `TBL_1` AS `T1`
INNER JOIN `TBL_2` `T2`
ON `T1`.`hoge_ID`=`T2`.`hoge_ID`
";
$result = mysql_query($sql);
$rows = @mysql_num_rows($result);
while($row = @mysql_fetch_array($result)){
$row[]←ここでどうかけばいいの?
}

こんな風に二つのテーブルをjoinしてその両方に同名のカラムがあった場合にselect * した場合はphp側で同名のカラムをどうやって$row[]の添え字に書いて取り出せば良いのでしょうか?
*を使わずにselectでダブらない様にカラムをいちいちAS 〜としてやらずに済ませたい場面がありましたので質問した次第。
06386372008/05/17(土) 22:32:30ID:???
すいません、自己解決しました
0639nobodyさん2008/05/17(土) 22:34:30ID:???
>>638
勝手に解決したとか書かないで下さい
06406372008/05/17(土) 22:39:39ID:???
あなただれですか?
0641nobodyさん2008/05/17(土) 22:40:47ID:2uwsWgrz
ああ、過去レス読んだらIDださないといけないみたいですね
これで満足ですよね、解決したいので回答よろ
0642nobodyさん2008/05/17(土) 22:41:51ID:???
>>641
>>1
0643nobodyさん2008/05/17(土) 22:47:36ID:???
>>641
全くわからんけど
今から風呂はいって
頭洗って
珈琲ノンでから考えてみる。


とりあえず、ptint_rでrowの中身みてみた?
0644nobodyさん2008/05/17(土) 23:08:16ID:???
みたけどわかりません
0645nobodyさん2008/05/17(土) 23:08:50ID:2uwsWgrz
while($row = @mysql_fetch_array($result)){
$row[]←ここでどうかけばいいの?
}

この部分聞いてるのでおねがいしますよ
0646nobodyさん2008/05/17(土) 23:09:01ID:???
結合したのに何故混同するw
06476372008/05/17(土) 23:10:29ID:1fE1M1vI
>>641
勝手に私を騙ってID出さないで下さい。
もう解決したんですから。
06486432008/05/17(土) 23:59:54ID:???
>>637 解決したのか!
print_r($row)で中身みると
Array (
[0] => NULL
[hoge1] => NULL
[1] => NULL
[hoge2] => NULL
[2] => NULL
[hoge3] => ぱんつ
・・・エンドレスはめ殺し・・・
)
だから
while($row = @mysql_fetch_array($result)){
$orz = $row[2];
}
とすれば、hoge3のカラムが取り出せる。
0649nobodyさん2008/05/18(日) 00:48:21ID:YbibvtLr
よくわからないけどなんで2をしていするの?
0650nobodyさん2008/05/18(日) 01:05:20ID:Ye23aTZk
指定したディレクトリの.csvファイルのみを配列に格納するPHPスクリプトが書けなくて悩んでいます・・・。

ここまではなんとかなったのですが・・・。

<?php

header("Content-type: text/html; charset=shift_jis");
$filedir='.';#取得したいディレクトリ //[.]はカレントディレクトリを表す
$dirlist=array();#格納先の配列を準備

$strDir=opendir($filedir);#ディレクトリを開く
while($str=readdir($strDir)){array_push($dirlist,$str);}#1つづつ配列に格納
closedir($strDir);#ディレクトリを閉じる

//print_r($dirlist);#配列を表示


$filelist=array();#格納先の配列を準備
foreach ($dirlist as $filename){
if(filetype($filename) == "file"){array_push($filelist,$filename);}#ファイルだけを格納
}

?>
0651nobodyさん2008/05/18(日) 01:10:51ID:TyvZJlXj
table aaa

id pri message
11 5 あああ
12 2  いいい 
13 5  ううう
14 3  えええ

この場合id 14のメッセージが3/(5+2+5+3)の確率で
表示されるようにしたいのですが良い方法はありますか
0652nobodyさん2008/05/18(日) 01:16:46ID:???
>>650
人のコード丸々コピーじゃなくて少しは自分の頭で考えたほうがいいよ。
>>651
rand関数
0653nobodyさん2008/05/18(日) 01:19:14ID:???
<?php

if (!($dir = opendir("./"))) {
die;
}
while ($fnm = readdir($dir)) {
if (ereg('.csv$', $fnm)) {
print "<P>$fnm</P>\n";
}
}
closedir($dir);

?>
0654nobodyさん2008/05/18(日) 01:20:59ID:???
---------------------ここまで俺の誤爆------------------
0655nobodyさん2008/05/18(日) 01:21:08ID:???
>>652
rand関数じゃないし
0656nobodyさん2008/05/18(日) 01:23:14ID:???
>>655
じゃなんだよw
0657nobodyさん2008/05/18(日) 01:37:51ID:gOK6sC5j
質問よろしくお願いします。

get_defined_varsで
ユーザ定義の変数のみを取り出すスマートな方法があったら教えてください。

よろしくお願いします。
0658nobodyさん2008/05/18(日) 01:41:31ID:???
まず自分で書けるスマートなコードを書いてもらわないと回答に困る
0659nobodyさん2008/05/18(日) 01:49:01ID:TyvZJlXj
>>656
重み付けがあるので
06606572008/05/18(日) 01:51:46ID:gOK6sC5j
>>658
自分で考えつくのは、
GLOBALSなどをひとつずつ排除していって、
残ったものがユーザ定義変数である・・・とかそんな感じです。

じっさいに試してはいませんが・・・。

よろしくお願いします。
0661nobodyさん2008/05/18(日) 02:04:38ID:???
$array= array(
0=>"a",
1=>"b",
2=>"c",
"あ"=>"d",
"い"=>"e"
);

array_valuesを使ってひらがなのキーの値だけ取り出すスマートな方法がありますか?
コードにして書いてください

ここは宿題スレじゃないので、必要最低限コードぐらいは自分で考えて書いてください
0662nobodyさん2008/05/18(日) 02:06:44ID:???
>>659
重み付けがある時にrand関数が使えない理由は?
■ このスレッドは過去ログ倉庫に格納されています