【PHP】下らねぇ質問はここに書き込みやがれ 36
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2007/01/10(水) 11:20:10ID:???まず読め→【PHP マニュアル】http://www.php.net/manual/ja/
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 35
http://pc10.2ch.net/test/read.cgi/php/1166676139/
◆質問する時の注意
・ 自分の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
・速さについては自分でベンチをとってここに書け(違う環境の人も調べてくれるかも)
しかし初心者が目的も定めずに速度を気にしたところでほとんど意味は無いぞ
0447nobodyさん
2007/01/17(水) 04:43:36ID:???0448nobodyさん
2007/01/17(水) 11:26:57ID:???$buffer = fgets($fp);
echo $buffer;
}
ファイルポインタが次の行に進むタイミングって、fgetsが1行読み込んだ後ですか?
fgetsは1行読み込むと同時にファイルポインタを1行進めるっていう関数でおk?
0449nobodyさん
2007/01/17(水) 11:27:29ID:cKV9B/mv0451nobodyさん
2007/01/17(水) 12:47:54ID:???0452nobodyさん
2007/01/17(水) 13:51:46ID:???0453nobodyさん
2007/01/17(水) 14:05:08ID:???例えば
$array=array("あああ","いいい",ううう"");
testFunc("$array");
function testFunc($array){
print_r($array);
}
としても表示されません。。
0456nobodyさん
2007/01/17(水) 14:22:26ID:???0457nobodyさん
2007/01/17(水) 14:28:22ID:???ちょっとうまくいかないので、質問させてください。
$method = GET;
$method = "_$method";
print_r($$method);
これはprint_r($_GET);と動作は同じです。
通常これで外部変数が取得できます。
しかしメソッドや関数ないで上記を動作させると、
なぜか$_GETの配列を返してくれません。
メソッドや関数内ではprint_r($_GET)で配列を返してくれるため、
理由がわかりません。どうしてなんでしょうか?
0459nobodyさん
2007/01/17(水) 14:35:27ID:???$array=array("りんご","みかん","バナナ");
$array2=array("りんご","みかん");
for($i=0;$i<count($array2);$i++){
if(array_search(,"$array2[$i]",$array)){
echo $array2[$i];
}
}
こんな感じのを作ったのですが、「みかん」しか表示されません。
それで、$array2の中を$array2=array("","りんご","みかん");
としたら「りんご みかん」と表示されます。どこかおかしいのでしょうか?
0460nobodyさん
2007/01/17(水) 14:37:52ID:???REQUEST使うか素直に分岐したら?
0462459
2007/01/17(水) 14:46:11ID:???とりあえずあまり対策がわからないので、
表示の際は array_unshift($array2,"");
として空の要素を追加するようにしました。
0463nobodyさん
2007/01/17(水) 14:51:36ID:???0466457
2007/01/17(水) 15:00:31ID:???現在こんな感じです
function test () {
$method = GET;
$method = "_$method";
echo $method; //文字列"_GET"
print_r($$method); //出力されない
print_r($_GET); //出力される
}
test();
$method = GET;
$method = "_$method";
print_r($$method); //出力される
echo "<a href=?test=test1>GETの送信</a>";
0467nobodyさん
2007/01/17(水) 16:09:30ID:???なんでそんなトリッキーなことしてるのかが分からん。
しかもGETは定数扱い(定数定義してないから文字列として扱われるけど)だし。
0468nobodyさん
2007/01/17(水) 16:12:03ID:???仕事でこんなんやってたらぶっ叩くわw
0469457
2007/01/17(水) 16:51:21ID:???>>468
GETとPOST入れ替えるだけで、
外部変数が取得できると楽かなと
思っていたのもので・・・
>>460
REQUEST試してみたんですが、なんか変な
文字列が配列に入ってるので、
おっしゃるとおり、GETとPOST分岐してみます。
ありがとうございました。
0470nobodyさん
2007/01/17(水) 16:53:14ID:???職業プログラマというわけではないからな。
0471nobodyさん
2007/01/17(水) 16:56:47ID:???0472nobodyさん
2007/01/17(水) 17:14:41ID:???foreach($hoge as $key=>$var) {
if(in_array($var, $hoge)) 処理;
}
とすると全てクエリがtrueになってしまいます。
foreach内で1つの要素をとるにはどうしたらいいでしょうか?
0475nobodyさん
2007/01/17(水) 17:28:16ID:???0479nobodyさん
2007/01/17(水) 17:44:18ID:???とかもいいかもね
0481nobodyさん
2007/01/17(水) 17:59:34ID:???このスレを見ている人はこんなスレも見ています。(ver 0.20)
SOHOとかフリーとかで細々食えだした奴 十九人目 [Web制作]
Ads by Goooooogle Part73 [Web収入]
疲れた管理人の憩いの場 23 [同人]
Ads by Goooooogle Part72 [Web収入]
組み込みプログラマーこそ真の一流!その4 [プログラマー]
>>471は、「組み込みプログラマーこそ真の一流」と言いたいんだろ。プッw
0482471
2007/01/17(水) 18:09:26ID:???0483軟式PHP
2007/01/17(水) 18:19:26ID:???まぁ、言語論争は他でやってくださいな。
仕事で使ってる人はPHPは手軽にWebアプリを作れる一言語でしかないわけですので。
0484nobodyさん
2007/01/17(水) 18:23:09ID:???だいたいPHPを生業としてるものは、
他の言語もできて当たり前。
0485nobodyさん
2007/01/17(水) 18:43:08ID:???Javascriptで言うところの >>> が使いたいんです。
0486nobodyさん
2007/01/17(水) 19:38:50ID:???どうしてもMSBを使わなきゃならないなら、工夫汁。
0488nobodyさん
2007/01/17(水) 21:28:42ID:???処理
$time_end = microtime(true);
$time = $time_end - $time_start;
この経過時間を計る処理なんですが、
結果で4.6014785766602E-05って、このE-05とかE-06はなんなんでしょうか?
早いのか遅いのかさっぱーり分かりません。。。
0490nobodyさん
2007/01/17(水) 21:46:45ID:???<a href="edit.php?id=<?=$id?>">編集する</a>
のリンクから次のページに値を渡し、echo $idなどで表示していたのですが、
違うサーバで試した時、それでは動きませんでした。
それで後に次ぎページで表示する際はecho $_REQUEST["id"]としないと
URL上の変数を表示出来ないみたいなのですが、
これはregist_globalがonになってないからですよね?
また、今後はecho $_REQUEST["id"]という書き方で統一した方が良いのでしょうか?
0491nobodyさん
2007/01/17(水) 21:57:54ID:???0493nobodyさん
2007/01/17(水) 22:57:33ID:???わかりました。サーバを変更して初めて気づいたので
早速、プログラムのソース内全部書き替えます。
ありがとうございました。
0494nobodyさん
2007/01/17(水) 23:19:31ID:I/eWBx8l0495nobodyさん
2007/01/17(水) 23:33:02ID:gVMvFP3J0496nobodyさん
2007/01/17(水) 23:36:59ID:???一般論で言えば理系の演算で用いられる極端に小さい数値や極端に巨大な数値を表現するためにある。
小数点を表現するだけなら浮動小数点以外にも固定小数点という仕組みも世の中には存在する。
固定小数点では誤差という問題が発生しないが浮動小数点では常に誤差の問題に悩まされる。
COBOLなどの事務計算向け言語では固定小数点方式が用いられている。
しかしPHPには浮動小数点以外に小数点を表現する仕組みは標準では用意されていないので
浮動小数点=小数点を使うためにある、という理解でOK。
0498nobodyさん
2007/01/17(水) 23:39:37ID:gVMvFP3Jそしたら、フレームワーク使えなくね?
0501nobodyさん
2007/01/17(水) 23:54:22ID:???, -‐.:.:.:.:.:.:.:.:.:.:.:.:‐- 、
/:.:..:.:.:.:.:.:.:.:.:.:.ヽ、:.:.:.:.:.ヽ
/.:.:,r─-----─¬尸:.:.:.:.:.:l
/.:.:/{-─、 _,─-尸:.:.:. ||
| i{ |!:.:.:.:.::|:.| えっ、phpてそれ以上にスゲー事できんの!?!
レー| ◯ ◯ イ:.:/.:/.:|rァ
{ ハ! ' ' ' ' 'ノイィ介//')
ト、j| r‐--─‐、 に'// /
ノ:ハ:.ヽ、 |/ ̄ ̄ } /-イ/ 厶
/ ̄ ̄ `ヽ:.:.\───' イ川:/ { /
/ \父_ー-‐ '´ /ノ.:.:/ | !
/ ヽ 〉 \ 厶‐、/ lノ
厂 \ / {⌒>'´ ヽ\ イ
/ \,-┴‐n< \ヾ |
0503nobodyさん
2007/01/18(木) 00:18:53ID:u+PvmfUj販売している所などございましたら教えていただけないでしょうか?
0504nobodyさん
2007/01/18(木) 00:34:58ID:???PHPの公式マニュアル
http://www.php.net/manual/ja/
↑これと同じ内容の本は売ってないと思いますが、上記サイトのページを全部印刷したらいいんじゃないでしょうか?
全部印刷したら何ページくらいになるんだろう?
http://www.phppro.jp/phpmanual/
↑こんなサイトもありました。
PHPプロに頼んで本を出してもらえないですかね?
0506nobodyさん
2007/01/18(木) 01:07:25ID:???0509503
2007/01/18(木) 01:28:20ID:???>>504
それも考えたのですが、製本作業をしないと見づらそうなので。
>>506>>508
一度読み通すために紙媒体が欲しくて。。
無いようなので、製本サービスに依頼するか、電子ペーパーブックを検討してみようと思います。
ありがとうございました。
0510ふ
2007/01/18(木) 01:42:54ID:QmQzu1gN0511nobodyさん
2007/01/18(木) 02:32:01ID:???0512nobodyさん
2007/01/18(木) 02:43:03ID:???0513nobodyさん
2007/01/18(木) 03:11:54ID:???インターネットが使えないから、仕方なく製本したいんだ。
0514nobodyさん
2007/01/18(木) 03:17:34ID:dfwRUKzsASPとMySQLを連携させて、既にHPを作っています。
さらに機能を拡張させるため、PHPを導入しようと思いまして、
設定でISAPIフィルタに「php5isapi.dll」を読み込ませたのですが
それをすると元のHPが表示されなくなってしまいます。
原因が分かる方いましたら、よろしくお願いします。
0516nobodyさん
2007/01/18(木) 03:37:41ID:???そんなことしてたら言語の特徴やら機能の全体像を把握できない。
歯抜けの断片的な知識なんかより、2〜3日かけてリファレンスを
熟読して全体像を把握した方が断然早いし楽。
…素人さんなら別だけどね
0517nobodyさん
2007/01/18(木) 03:38:04ID:???同じ機能で複数のI/Fの関数があったりするんで
リファレンス全体に1度目を通しておくのは確かに基本。
書いて覚えようとすると知識が偏る。
0518nobodyさん
2007/01/18(木) 03:41:27ID:???0519nobodyさん
2007/01/18(木) 03:42:41ID:???0520nobodyさん
2007/01/18(木) 03:56:17ID:???いきなりリファレンス通読はやめといたほうがいいんじゃ
0521nobodyさん
2007/01/18(木) 05:00:35ID:???0522nobodyさん
2007/01/18(木) 07:03:33ID:???PHP4とふるいけど、基礎的なことはわかるから、
ttp://www.net-newbie.com/support/pdf2/
これでも読んどけと。
まぁ今となってはあまり書かない書きかたしてたりするんで、
マニュアルとあわせて読むと効果的。
0523nobodyさん
2007/01/18(木) 10:49:38ID:Ra9i1bGqしたいんですが どうやってカレントURLを取得したらいいのかがわかりません
(PHP4.3.2)
何か良い方法をご存知の方 ご教授いただけると幸いです
0525457
2007/01/18(木) 12:00:47ID:???送信できないんでしょうか?
GET見たいにリンク形式では不可能ですか?
0526nobodyさん
2007/01/18(木) 12:07:33ID:???0527nobodyさん
2007/01/18(木) 12:08:35ID:???それらを使うプロジェクトで即戦力になるかな
0531nobodyさん
2007/01/18(木) 12:53:31ID:???http://hoge.com/a/b/c/d.html
というリクエストあったら、
hoge.com/index.php
実行して、「a/b/c/d.html」は変数として受け取りたいんだけど、
そういうことはPHPだけでは不可能ですか。
やっぱりサーバ設定しないとだめですよね。
サーバはindex.htmlと、index.phpを自動的に表示するようになってる。
0532nobodyさん
2007/01/18(木) 12:59:49ID:???同じような質問
ttp://oshiete1.goo.ne.jp/kotaeru.php3?q=1418972
http, https の $_SERVER を見比べて判別するしかないんじゃね?
0534nobodyさん
2007/01/18(木) 13:16:17ID:???できないよ。普通に404not found。
http://example.com/index.php/a/b/c/d.html
ならできるけど。
>>531
mod_rewrite
0535nobodyさん
2007/01/18(木) 13:24:35ID:???$arr['d']='a';
$arr['c']='b';
$arr['b']='c';
$arr['a']='d';
とあったとして、ループを $arr['b'] からはじめたいのですが、
どうやったら効率がよいでしょうか。
current($arr); とか each($arr); だと先頭の $arr['d'] の値を返して、
配列カーソルを1つ勧めるわけですが、一気に $arr['b'] から始めたいのです。
キーが 'b' だということはわかっているので。
php だとキーが数字じゃなくても、実際順番はあるわけで、
$arr['b'] のポインタは 2、 みたいなかんじで取得できてもおかしくないとは思うのですが、どうにも見つからないもので。
0536nobodyさん
2007/01/18(木) 13:25:50ID:???0537nobodyさん
2007/01/18(木) 14:01:26ID:???section内で$hoge[$foo]みたいなことしたいのですが、どのようにやれば出来ますでしょうか?
{section name="val" loop=$data}
{$hoge.$foo[val].name}
{/section}
でできませんでした…
0538nobodyさん
2007/01/18(木) 14:27:03ID:???0539nobodyさん
2007/01/18(木) 15:08:23ID:???phpをhtmlとして表示とか、できそうだねw
偽装しまくろぅwww
0540nobodyさん
2007/01/18(木) 15:10:16ID:???ヤフーオークション ID / Pass 【ボタン】
楽天 ID / Pass 【ボタン】
イトレード証券 ID / Pass 【ボタン】
のようなフォームを作り【ボタン】を押すと、新たなブラウザ(タブ)が開き
Yahooオークションのページへ進み、IDとPassが自動で入力され、ログイン後の画面に進む
このようなスクリプトをこしらえたいのですが、どういうロジックで進めばいいか悩んでいます
fopenでYahooオークションのURLをひっぱり、ソースにIDとPass情報を追加させて、HTMLを表示させようとしたのですが無理でした・・・
皆様のご意見お願いします
0543nobodyさん
2007/01/18(木) 15:30:53ID:???自分用です
実際、IDとPassはDBにMD5で格納してそれを呼び出す感じですが
どうにも既存サイトのIDとPass入力を自動化させるスクリプトが思いつかないのです
0544523
2007/01/18(木) 15:31:09ID:Ra9i1bGq>>532
ご回答ありがとうございます
ちょっと予定とは異なりますが リンク元のURLを表す$_SERVER["HTTP_REFERER"]
を用いました
現在のURLではなかったため 結構大変でしたが 何とかできました
ありがとうございました!
■ このスレッドは過去ログ倉庫に格納されています