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

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

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

◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 103
http://hibari.2ch.net/test/read.cgi/php/1295956018/
◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】5.3
【連携ソフトウェア】MySQL ImageMagick
【質問内容】

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

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

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

【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0196nobodyさん2011/02/19(土) 12:46:43ID:???
>>195 >>1
エディターにお任せが良い。
0197nobodyさん2011/02/19(土) 13:06:27ID:???
エディターは何使ってる?
0198nobodyさん2011/02/19(土) 13:33:20ID:???
ノートパッド
0199nobodyさん2011/02/19(土) 13:36:56ID:???
peggy
0200nobodyさん2011/02/19(土) 14:02:24ID:???
ノートパッド
0201nobodyさん2011/02/19(土) 14:15:37ID:???
peggy
0202nobodyさん2011/02/19(土) 14:27:22ID:???
ここまでPHP Editorなし、と
0203nobodyさん2011/02/19(土) 16:04:54ID:???
>>195
そういう質問をするとこういうのを見ろとか言う奴が出てくると思うが
http://framework.zend.com/manual/ja/coding-standard.php-file-formatting.html
↑ここではタブを使わずスペース4文字とか書いてある

個人的にはスペース2文字が好み
ネストが深くなってインデントが多くなっても右に寄り過ぎないのがいい
タブ使うと環境によって見え方が変わるから嫌い
0204nobodyさん2011/02/19(土) 16:08:34ID:???
俺は秀丸(フリー版)つこうてる
0205nobodyさん2011/02/19(土) 16:24:22ID:???
えくりすぷ
0206nobodyさん2011/02/19(土) 16:34:15ID:???
エディタスレ池
0207nobodyさん2011/02/19(土) 16:47:43ID:???
>>203
ネストが深くなるなら関数化しようぜ
0208nobodyさん2011/02/19(土) 16:53:27ID:???
>>207
まぁなーでも同じ処理を何度も行うわけではないのに関数化する意味はないよな
ネストが深いといってもこの程度の話だから

for(){
 ;
 if(){
  ;
  for(){
   ;
   if(){
    ;
   }
  }
 }
}
0209nobodyさん2011/02/19(土) 18:38:26ID:???
くだらん。お前の話はくだらん
0210nobodyさん2011/02/19(土) 19:11:51ID:???
一つ減った(`・ω・´)
for(){
 ;
 if(){
  ;
  continue;
 }
 for(){
  ;
  if(){
   ;
  }
 }
}
0211nobodyさん2011/02/19(土) 19:13:53ID:???
せめて 
0212nobodyさん2011/02/19(土) 19:14:51ID:???
タブにして表示をスペース2つ分にすればいいじゃん
0213nobodyさん2011/02/19(土) 19:29:50ID:???
>>212
> タブ使うと環境によって見え方が変わるから嫌い
0214nobodyさん2011/02/19(土) 19:36:13ID:???
 
0215nobodyさん2011/02/19(土) 19:37:16ID:???
forのネストはたいてい解消できるんだけどな
for ($i=0, $j=1, $k=0, $fib=0; $i<50; $i++, $fib=$j+$k, $j=$k, $k=$fib) {
echo $fib."<br>\n";
}
0216nobodyさん2011/02/19(土) 19:37:42ID:???
&nbsp;
0217nobodyさん2011/02/19(土) 19:38:57ID:???
>>215
そのfor文、1行に収まってるからいいけど、
50行くらいなったらどうすんの?
0218nobodyさん2011/02/19(土) 19:39:26ID:???
&nbsp;はコピペするとそれも含まれるのが不便だな
0219nobodyさん2011/02/19(土) 19:55:29.65ID:???
>>213
おまえさん、HTML書くときもwidth=800とかで固定するタイプだろ
width=100%で相手の環境に合わせようとは考えないタイプだ





俺もだよ
0220nobodyさん2011/02/19(土) 22:47:51.40ID:???
>>219
HTMLは書いたこと無いですよ。
というより、いまどきHTMLを書く必要ってあります?
0221nobodyさん2011/02/20(日) 00:27:40.54ID:???
>>220
PHPから何を書き出してるの?
漢はtext一択?
0222nobodyさん2011/02/20(日) 00:30:48.59ID:???
>>221
何を書き出してる?
質問の意図がよくわかりませんが、標準出力のことでしょうか。
ファイルやデータベース出力も利用しますが、画面表示なら標準出力を使っています。
0223nobodyさん2011/02/20(日) 00:39:04.16ID:???
>>222
ああ、ほんとにHTML使わないんだ。
HTML書き出さないなら、pythonとかの方が便利じゃね?
0224nobodyさん2011/02/20(日) 01:14:48.73ID:s/fCDBml
Mixi等のログインしないと中身が見れないサイトに関してですが
ああいうサイトはどこにアクセスしてもCookieにログイン情報がない場合はログイン画面にリダイレクトされると思います。
あれは、各ページ全ての先頭でログインチェックをやっているということですか?
それとも、.htaccessかなんかで一括で前処理が出来るのでしょうか?
0225nobodyさん2011/02/20(日) 01:43:38.10ID:???
普通はセッションチェックする処理をインクルードファイルにして全ページに組み込むと思う
0226 冒険の書【Lv=1,xxxP】 (´・ω・)ス2011/02/20(日) 02:18:18.39ID:???
>>224

質問の意図が見えない。

何かをしたいから mixi だうんぬんを質問しているんだろ?

背景…自分が何をしたいかを正直に書いてはどうだろうか?

何らかの答えを求めるならば質問する理由を明確にしないと自分が欲しい回答が得られないのは当たり前のことです。

0227nobodyさん2011/02/20(日) 02:44:28.37ID:???
新参な俺に教えてください
>>226はおバカさんなのかしら?
0228nobodyさん2011/02/20(日) 02:45:28.82ID:s/fCDBml
>>225
ありがとうございます
それでやってみます

>>227
ちょっとなに生きてるのかよくわからないです
0229nobodyさん2011/02/20(日) 02:59:20.89ID:???
>>227
だから>>226のコテハン野郎は馬鹿だと前スレから言ってるじゃないか。
0230nobodyさん2011/02/20(日) 03:07:14.16ID:???
回答者にID出せ厨かつAjax厨だからな
自作自演でしか盛り上げられないかわいそうなやつなんだよ
残念な脳の持ち主であることは前々から言動を見ればわかっていたことなんだから
今更小突き回しても面白くないし華麗にスルーするのがよい
俺も含めてかまったら負け
0231nobodyさん2011/02/20(日) 08:38:16.10ID:gro3cDqj
引き続き、土は生ぶ 明あき弘ひろをさがしています。
三十歳 programmer 日藝出身 最寄り駅はさぎのみや駅もしくは阿佐ヶ谷駅
福岡県出身との情報があります。
連絡先・hayakudetekoi@hotmail.co.jp
0232 冒険の書【Lv=1,xxxP】 (´・ω・)ス2011/02/20(日) 09:46:39.54ID:???
>>230
困った奴ですね。
0233nobodyさん2011/02/20(日) 11:22:18.24ID:6qTRErru
設定ファイルconfig.phpの中に書かれた変数をfunction内で呼び出すのにいい方法ありますか?
functionは10個ほどあり、function外にincludeを置くと変数を読み込んでくれないので、function内で同じincludeを計10個書いています。
global 変数 とすれば読み込んでくれますが、設定項目が増えるとglobalも増やさなくてはいけないので面倒で。。
0234nobodyさん2011/02/20(日) 13:24:40.04ID:???
Configクラスを用意する。
staticでアクセスする
0235nobodyさん2011/02/20(日) 14:14:04.00ID:TBXYZPd+
MySQL関連の質問で恐縮なんですが、

一般的に処理が重くなるのは、 saveなどの書き込み系で、
findなどはそこまで気にしなくて良いと考えていいでしょうか?

最近、ループの中でsave を何回も繰り返していたので、
一気にまとめて save Allとするようにしました。
0236nobodyさん2011/02/20(日) 14:15:16.02ID:???
標準関数でsaveなんてあったっけ?
0237nobodyさん2011/02/20(日) 14:23:53.47ID:???
>>234
classをfunction内で読み込むのにstaticというのを使うのですか?
0238nobodyさん2011/02/20(日) 14:25:08.80ID:TBXYZPd+
>>236

すいません。 cakePHPを使っているので、データベース関連の関数はsave とかで覚えてしまっていて。
0239nobodyさん2011/02/20(日) 14:43:56.82ID:???
更新系が重くなるのは勿論だけど参照系だって多少は重いよ
0240nobodyさん2011/02/20(日) 15:36:51.57ID:TBXYZPd+
>>239

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

やはり、80000ぐらいのデータから findとかを繰り返すと重くなりますよね。
saveは重いだろうけど、 findは軽いだろうから大丈夫だと勘違いしてた気がします。
0241nobodyさん2011/02/20(日) 21:34:15.34ID:xXHeI12p
「a()[0]」という感じにa()の結果のarrayを変数に入れずにすぐに使いたいのですが
どう書けばいいですか?
<?php
echo a()[0]; //エラーが出ます
function a()
{
return array('b', 'c');
}
?>
0242nobodyさん2011/02/20(日) 21:54:32.14ID:???
無理です
0243nobodyさん2011/02/20(日) 22:02:15.46ID:???
>>241
基本的にには無理だし、a()[0]、a()[1] と別々に呼び出すと
a()関数を2回コールすることになるので無駄
どうしても1行で収めたいのなら別の関数を作ってそこからa()を呼び出すとか
function b($func, $var){$ret = $func(); return $ret[$var];}
echo b("a", 0);
0244nobodyさん2011/02/20(日) 22:05:03.39ID:???
>>242-243
どうもありがとうございます
0245nobodyさん2011/02/20(日) 22:30:27.58ID:???
それも2回コールするけどな
0246nobodyさん2011/02/21(月) 00:16:45.14ID:???
Nowdoc って何て読むんだろ。ナウドック?
0247nobodyさん2011/02/21(月) 00:30:18.28ID:???
>>241
こんなんでどうでしょうか

class hoge {
public $result;

public function foo() {
$this->result = array('aaa', 'bbb');
return $this;
}
}
$obj = new hoge();
echo $obj->foo()->result[0];
0248nobodyさん2011/02/21(月) 00:36:24.71ID:???
newの分多いじゃんw
0249nobodyさん2011/02/21(月) 00:57:18.94ID:???
247じゃないけど、本質はそこじゃないだろ>>248
0250nobodyさん2011/02/21(月) 01:03:08.65ID:???
どこなの?
0251nobodyさん2011/02/21(月) 01:36:46.56ID:???
>>250
249じゃないけど本質はナウドック
0252nobodyさん2011/02/21(月) 01:39:13.82ID:???
>>251
250じゃないけど、お前みたいなヤツ、嫌いじゃないぜ///
0253nobodyさん2011/02/21(月) 01:40:18.09ID:???
>>247
それするなら

class hoge {
public $result;
function __construct(){
$this->result = array('aaa', 'bbb');
}
}
$obj = new hoge();
echo $obj->result[0];
0254nobodyさん2011/02/21(月) 01:46:22.22ID:???
1行で済ませたいんだろ
0255nobodyさん2011/02/21(月) 01:55:13.43ID:???
1行
class hoge{public $result;function __construct(){$this->result = array('aaa', 'bbb');}}$obj = new hoge();echo $obj->result[0];
0256nobodyさん2011/02/21(月) 02:01:00.32ID:???
関数名受け取って実行のほうがいいじゃん
0257nobodyさん2011/02/21(月) 02:02:57.42ID:???
>>255の言うとおり、1行で済ます方法なんていくらでもあるんだから、きっと深い理由があるんだよ
他社の巨大なWebシステムをカスタマイズしなきゃいけなくて、触れるコードがそこだけだとか、
なにか社内規約等の特別な理由で一時変数を用意できないだとか、


さあ、>>241さん、はりきって質問の趣旨をどうぞ!
0258nobodyさん2011/02/21(月) 02:13:13.95ID:???
なんでもかんでもクラスにいれればいいってもんじゃねえだろ
オブジェクト脳が見たらどうみても不思議なコードだ
0259nobodyさん2011/02/21(月) 02:14:45.10ID:???
>>241じゃないけど、
$ret=a();
func($ret[0], ...);
みたいに2行になるのが嫌なんだろ。a()[0]という書き方が許容されるなら
func(a()[0], ...);
だけで済むってことだと思うけど
0260nobodyさん2011/02/21(月) 02:16:18.64ID:???
単純に、正規の方法はない、やるとしても>>247のような形になるよってことでおわりのような。
0261nobodyさん2011/02/21(月) 02:18:01.79ID:???
>>258
オブジェクト脳からみて、func()[0]というコード片自体には違和感ないでしょ。それをどう実装するかって話で。
0262nobodyさん2011/02/21(月) 02:26:07.93ID:???
function g(&$a, $n) {
return $a[$n];
}

func(g(a(), 0));

0263nobodyさん2011/02/21(月) 02:37:33.89ID:ryPTOETx
$strgin = "<p>
 </p>
<p>
東京メトロ各線 「赤坂見附駅」ベルビー赤坂口より徒歩約2分<br />
東京メトロ千代田線 「赤坂駅」1番出口より徒歩約3分</p>";

上記のような文字列の改行をのぞいて、すべて横一行にしたいです。

(こんな感じに)
東京メトロ各線 「赤坂見附駅」ベルビー赤坂口より徒歩約2分 東京メトロ千代田線 「赤坂駅」1番出口より徒歩約3分


$string = strip_tags($string);
$string = preg_replace('/ /', '', $string);

こんな感じでいろいろ試したのですが、2行目が上手くいかず。。
やり方をどなたか教えてもらえないでしょうか?
0264nobodyさん2011/02/21(月) 02:40:19.46ID:???
phpもperlみたいに正規表現を関数無しで使えるようにすべき
5.4ではなってるだろうな
0265nobodyさん2011/02/21(月) 02:52:00.47ID:ryPTOETx
>>263では & n b s p ; が消えてました。

実際には上記の記号が空白の / / の間に入っております。
0266nobodyさん2011/02/21(月) 02:59:41.56ID:???
>>263
改行コードを取ろうとする気配が見えないんだけど、改行コードを空文字列に置換すればいいんでないの
0267nobodyさん2011/02/21(月) 03:03:58.80ID:???
[\r\n]
0268nobodyさん2011/02/21(月) 03:29:30.53ID:ryPTOETx
>>266-267

ありがとうございます!

$shopNearStation = strip_tags($item['shop_near_station']);
$shopNearStation = preg_replace('/[\r\n]/', '', $shopNearStation);
$shopNearStation = trim($shopNearStation);

結局こんな感じで上手くいきました!
本当は一発で出来るのかもしれませんが、正規表現がよくわからず三行に。
0269nobodyさん2011/02/21(月) 07:27:06.39ID:???
>>268

行数は気にしない

よくできました
0270nobodyさん2011/02/21(月) 07:42:03.69ID:???
改行コードを置換するために正規表現使う必要なくないか?str_replaceでおk
0271nobodyさん2011/02/21(月) 13:12:30.66ID:???
スパムや詐欺、犯罪などのサイトに使われることが最も多い言語で、書き手の質も他の言語に比べて総じて低い
0272nobodyさん2011/02/21(月) 13:13:42.40ID:???
いろいろな実装を手軽に行えることができ、それゆえ間口も広く、ユーザが多い
0273nobodyさん2011/02/21(月) 15:30:35.85ID:OHQAldZA
変な事聞きますけど、mb_send_mailとかmail関数でメールを送信する時、
サーバにpostfixやらqmailなどのソフトがインストールされていないと
メールが送られないのでしょうか?
0274nobodyさん2011/02/21(月) 15:48:40.07ID:???
>>273
基本的にはそうだね。他のSMTPサーバーに接続して送信したいなら、fsockかPEARのMail使えばいいと思うよ。
0275nobodyさん2011/02/21(月) 16:20:49.39ID:OHQAldZA
>>274
ありがとうございます。そう理解します
0276nobodyさん2011/02/21(月) 16:57:15.86ID:???
理解しようとするな。感じるんだ。
0277nobodyさん2011/02/21(月) 17:15:18.29ID:???
>>271-272
そのためにAjaxが存在する
0278nobodyさん2011/02/21(月) 19:18:00.69ID:???
で?結局nowdocの読み方はナウドックでいいのかよ
0279nobodyさん2011/02/21(月) 19:38:51.31ID:???
脳毒
0280nobodyさん2011/02/22(火) 01:21:40.06ID:???
>>271
犯罪者の9割はパンを食べている
0281nobodyさん2011/02/22(火) 01:49:10.22ID:6ISDoM5D
携帯からメール送信して貰った画像でFLASH時計を作成するサービスってどう作りますか?
ActionscriptでFLASH時計は作れますが、サーバーサイドでのやり方がわかりません。
0282nobodyさん2011/02/22(火) 01:56:57.91ID:???
画像とXMLをちょっと編集するだけで使いまわせるように拡張すればいいだけでは?
0283nobodyさん2011/02/22(火) 02:40:14.82ID:6ISDoM5D
すみません。
それはコンパイラをサーバーにあげてPHPから使えるようにすると
いう事でいいのでしょうか?
0284nobodyさん2011/02/22(火) 02:40:40.63ID:???
PHP関係あるの?
0285nobodyさん2011/02/22(火) 02:46:31.47ID:6ISDoM5D
PHPと連携させたいと考えていまして。
0286nobodyさん2011/02/22(火) 02:58:06.67ID:???
どこまでをPHPでどこからをFLASHで?
0287nobodyさん2011/02/22(火) 03:18:45.07ID:6ISDoM5D
すみません。
そう聞かれてしまうと良く考えていませんでした。
ローカルだと単純なasファイルをコンパイルするだけですがサーバーサイドだとどのようにするのかわかりません。
0288nobodyさん2011/02/22(火) 03:48:42.04ID:???
Actionscriptでサーバーにupされた画像を読み込んで表示するとか?やりかたは知らんが
メールで画像を送られるならPHPでメールを受信して添付ファイルを保存するようにする
0289nobodyさん2011/02/22(火) 06:28:24.73ID:???
PHPでメールを受信って斬新に思える。
あんのかね。

メールのフィルタにPHP仕込むってことならわかる。簡単。
0290nobodyさん2011/02/22(火) 06:33:35.10ID:???
>>289
SMTP,IMAP,POPあたりに対応してるから、
送受信共にPHPでやるグループウェアとか普通。
0291nobodyさん2011/02/22(火) 06:35:04.71ID:???
ん?受信してってそういうこと?
てっきりSMTP鯖にするのかと
0292nobodyさん2011/02/22(火) 06:45:38.57ID:???
>>291
ああ、PHP単体で?
それは、ちょっと無理じゃないのかな。
自作してcliをxinetdとかで待ってれば
やってやれないことも無いんだろうけど、
smtpなんて、使えるやつがいっぱいあるんだから、
ありもの使うのが現実的。
0293nobodyさん2011/02/22(火) 06:56:40.18ID:???
でも今回の流れで、「PHPでメールを受信して」のところを、
PHPをSMTP鯖として機能させると読むのが間違いだとすると、
PHPでPOPするってことだよね。

と、ここまで書いて、SMTP鯖とWeb鯖が別なら十分ありえる出来事だった。お騒がせしました。

んで、共存してるなら、aliasesに当該アカウントに対するフィルタを書いて、
送信元によって添付画像を振り分けて保存して、Flashはユーザに対応したファイルを
読み込むつくりにしておけばいいんでないかな。
PHPを使うところは受信フィルタだけかな。
0294nobodyさん2011/02/22(火) 11:15:24.45ID:???
ユーザインタフェースの雛形をいくつか用意してそれを選択させるのがPHP
受信したメール(画像ファイル)をPHPに渡すようにして画像をPHPで取得する
(もっともHTTPのみを使うアップローダー式のほうが簡単だと思うが・・・)
あとはPHPでFlashで使う形式に変換する
(PHPから受信したものを元にASを吐くのは難しいと思うので>>282のような仕組みを予め作っておく)
0295nobodyさん2011/02/22(火) 16:51:26.36ID:xabu6f+m
掲示板にアップロードされた画像のURLを表示したい

こちらのPHPを設置しています。
http://php.s3.to/bbs/bbs7.php

どこをどのようにすれば画像のURLを表示できますか?
できれば画像の下に画像のURLを表示させたいです。

よろしくお願いします。

■ このスレッドは過去ログ倉庫に格納されています