トップページ⇒php
991コメント258KB

【PHP】下らねぇ質問はID出して書き込みやがれ 138©5ch.io

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

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

◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】5.5
【連携ソフトウェア】MySQL ImageMagick
【質問内容】

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

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

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

【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0175nobodyさん2014/11/06(木) 23:29:06.26ID:???
>>172
なんでID出せばいいだけだと思ったの?
0176nobodyさん2014/11/06(木) 23:51:47.07ID:8wOV4PX2
>>173
>>174
実行ユーザー変更することでできました!ありがとうございます
0177nobodyさん2014/11/07(金) 00:01:40.01ID:CW1t2BNk
rasbianつーのもあるのか
0178nobodyさん2014/11/07(金) 00:24:38.71ID:???
お、ゆるゆるサーバがひとつ誕生したな
0179nobodyさん2014/11/07(金) 00:31:34.68ID:???
ゆるふわの弄ばれサーバ
0180nobodyさん2014/11/07(金) 03:00:38.93ID:???
今後何かできないことがあって困りたくないならrootで動かすとよい。
0181nobodyさん2014/11/07(金) 13:32:18.60ID:???
PHPのオンラインマニュアルサイト、おかしくなってない? メンテ中?
0182nobodyさん2014/11/07(金) 15:09:43.68ID:???
>>181
もっと具体的に言えよ。恥ずかしいから。
0183nobodyさん2014/11/07(金) 18:27:05.96ID:VT/GxKSd
記事の途中で、条件付きで広告を出力したいと考えています

条件とは、
記事が特定の長さに達していて、
小見出しが出力されたときに、広告を出力するというものです

考えてもコードが思いつかないので
ヒントでもいいので何かアイディアください
0184nobodyさん2014/11/07(金) 18:35:58.82ID:???
>>183

>>1

色々手段があり過ぎてわからない。
制約もわからん。

なんでもいいなら記法を作ってそのうちの見出しで位置決めすればいいんじゃん?
0185nobodyさん2014/11/07(金) 19:23:34.32ID:VT/GxKSd
>>184
ありがとうございます
0186nobodyさん2014/11/07(金) 19:38:05.80ID:NozSs+6t
オレじゃまったく分からなかったのでお力を

array(1,2,3,4)という配列とarray(2,3,4,5)という配列を縦に乗算させて、array(2,6,12,20)という配列を作りたいんです。
それで、試しに
$a =array(array(1,2,3,4),array(2,3,4,5));
echo array_product($a);
なんてのを作ってみましたが、ダメでした・・・。

ネットで見てもなかなかいい情報がなく四苦八苦しております。
なにかヒントをお教えいただけたらと思います。
0187nobodyさん2014/11/07(金) 19:42:16.96ID:???
とりあえずループで作れば?
0188nobodyさん2014/11/07(金) 19:51:33.06ID:???
>>186
配列のキーが同じもの同士かけあわせればいいんだよね。
あとは、>>187
0189nobodyさん2014/11/07(金) 19:53:53.72ID:NozSs+6t
>>188
そうです!
やっぱりループしかないですか・・・
0190nobodyさん2014/11/07(金) 20:28:03.89ID:???
$a = array(1,2,3,4);
$b = array(2,3,4,5);
$c = array_map(function($_a, $_b){
return $_a * $_b;
}, $a, $b);
print_r($c);
0191nobodyさん2014/11/07(金) 20:30:25.12ID:???
R使えよって感じもするな
0192nobodyさん2014/11/07(金) 21:16:02.80ID:???
Ginq使えば
$c= Ginq::from($a)->zip($b,function($a,$b){return $a*$b;})->toList();
こんなのだけに使うべきじゃねーな。

C#なら
a.Zip(b,(x,y)=>x*y)
で済むんだがな
0193nobodyさん2014/11/08(土) 00:43:21.13ID:E06mWUNe
>>190
こんなに短く・・・

$a = array(1,2,3,4);
$b = array(2,3,4,5);
for($i=0; $i<4; $i++) {
$c[] = ($a[$i]*$b[$i]);
}
print_r($c);

一応ループで作ってみたのですが、どっちの方がいい動きするんだろう・・・
0194nobodyさん2014/11/08(土) 00:44:19.69ID:???
>>193
いい動きって?
0195nobodyさん2014/11/08(土) 00:58:46.75ID:E06mWUNe
>>194
なんていうか、どちらが正しい動きというかいい処理になるのかな?って
0196nobodyさん2014/11/08(土) 03:36:33.05ID:???
つまり、どちらかは正しくない結果になるということ?
0197nobodyさん2014/11/08(土) 09:12:18.81ID:???
>>195
煽りではないが
正しい動きとかいい処理というのは着眼点によって変わる
どんな手法でもメリットとデメリットがある
君が何をもって正しい動きと定義するか次第じゃないかな
0198nobodyさん2014/11/08(土) 09:39:13.44ID:???
クロージャーコールバックするarray_mapよりループのほうがたいていパフォーマンスはいい
0199nobodyさん2014/11/08(土) 11:40:30.33ID:???
そのまま4行並べる奴はいないのか
0200nobodyさん2014/11/08(土) 11:56:01.34ID:???
>>195
いい処理というのが速さなら、ベンチマーク取って両者を比べるといいよ。
あとはコードの読みやすさとかかなぁ。
0201nobodyさん2014/11/08(土) 12:36:44.99ID:???
>>199
繰り返し回数が固定なら
ループより4回書いたほうが速い
言語もあるけどPHPはどうだろ
試したこと無いや
0202nobodyさん2014/11/08(土) 16:08:29.94ID:0dvAjdf3
$aa = $_FILES['image_file']['tmp_name']; //画像ファイル
$bb = bin2hex(file_get_contents($aa));

画像ファイルの処理なんだけど、
ここから$bbを$_FILES['image_file']['tmp_name']に戻すにはどうしたらいいの?

file_put_contents($cc,hex2bin($bb));
だと思ったんだけどエラーが出てよくわからない
0203nobodyさん2014/11/08(土) 16:44:42.77ID:???
$ccなんてどこから出てきたの?
0204nobodyさん2014/11/08(土) 16:53:46.42ID:???
あー、普通に$_FILES['image_file']['tmp_name']に入れたら大丈夫だった
ありがとう
0205nobodyさん2014/11/09(日) 11:50:49.40ID:???
その配列の値変えて何したいのさw
0206nobodyさん2014/11/10(月) 21:37:32.33ID:???
phpを上げて動作テストできるアップローダって無い?
0207nobodyさん2014/11/10(月) 22:37:51.77ID:???
あるよ
0208nobodyさん2014/11/10(月) 23:05:12.48ID:???
アップロードしたphpがどういう動作するのか問わずにか?
0209nobodyさん2014/11/10(月) 23:34:29.35ID:???
>>208
おう問わないぜ。俺の方がテクニックで合わせる
0210nobodyさん2014/11/10(月) 23:36:49.76ID:???
実行するとブラックホールを生成し、宇宙を飲み込んでしまうようなPHPでもか?
0211nobodyさん2014/11/10(月) 23:41:56.16ID:???
実行すると女子高生のスカートがめくれ上がるphp早く
0212nobodyさん2014/11/11(火) 00:22:33.33ID:???
ネット上の画像検索を実行し、それらしきものを見つけて、
画像データを編集して、>>211の願望を満たすPHPを誰かはよ
0213nobodyさん2014/11/11(火) 00:35:45.18ID:???
>>206
アップローダーじゃないけどあるよ
0214nobodyさん2014/11/11(火) 07:55:43.43ID:???
>>213
そのURLをだな・・
0215nobodyさん2014/11/11(火) 08:14:18.44ID:tisSPGyh
PDOを使うと、MySQLを直接操作するのに比べて、どれくらい遅くなるん?
ほとんど体感なしと考えていいのかな。
0216nobodyさん2014/11/11(火) 08:24:21.89ID:???
試せ
0217nobodyさん2014/11/11(火) 08:47:36.51ID:LlNQBbua
AサイトのAPIを叩いて返ってきた結果をDBに書き込みます。
Aサイトは30分に1度更新され、APIのアクセスも30分に1回だけ可能な仕様です。
中途半端に取ってきちゃったり、アクセスが出来なかった時のために、
類似サービスのBサイトからもAサイトがだめなときのミラーとして取得することにします。
AサイトとBサイトでは、返ってくる内容が違います。(加工方法を別にしなければならない)

こういうときにinterfaceを使うのでしょうか?
0218nobodyさん2014/11/11(火) 08:50:44.32ID:???
いいえ
0219nobodyさん2014/11/11(火) 11:06:47.97ID:???
>>215
たいして変わらないよ。ただ、件数の取得とか面倒になるかも。
http://php.net/manual/ja/pdostatement.rowcount.php

>>217
オブジェクト指向のinterfaceのことなら使ってもいいけど、
実装を少し変えるだけなら抽象クラスの方がよさそう。
0220nobodyさん2014/11/11(火) 11:53:10.52ID:???
アップローダーのバグと設定ミスでphp実行し放題なとこあったなw
0221nobodyさん2014/11/11(火) 13:49:53.64ID:???
>>219
レスありがとうございます。
PDOは微妙なところでちょっといやな感じですね。
0222nobodyさん2014/11/11(火) 13:57:08.01ID:???
アンチがどっかいった。質問してるときはこうなのか、それとも去っただけなのか。
後者だといいなぁ。。
0223nobodyさん2014/11/11(火) 16:01:41.30ID:T1ffA8Mf
>>220
サイトを書き換えるなよな
0224nobodyさん2014/11/12(水) 10:13:34.16ID:???
やっぱアンチがゲームの話一人でしてたの?
0225nobodyさん2014/11/12(水) 12:31:35.50ID:???
うん
0226nobodyさん2014/11/12(水) 12:53:40.56ID:???
あれが最後のアンチだとは思えない。第二第三のアンチが必ず現れるだろう。
0227nobodyさん2014/11/12(水) 13:13:44.78ID:???
http://kanae.2ch.net/test/read.cgi/php/1023791370/
いるよ
今は寝てる時間なんだから召喚するなよ
0228nobodyさん2014/11/13(木) 14:34:52.98ID:???
http://peace.2ch.net/test/read.cgi/hp/1414402284/277
アンチがゲームする金がなくなったから仕事くれだってお
0229nobodyさん2014/11/13(木) 20:10:45.79ID:7FcDUVJG
DBをselectしたときにselect条件にuniqueカラムを指定しているため
返ってくるオブジェクトは必ず0か1つになるはずなのですが
0か1がなぜか2以上になるという起き得ない想定外のことが起きるのを考慮して
PDOStatementを閉じるために残ってる結果セット全てを取るfetchAllを呼ぶべきか
1回だけfetchを呼ぶべきかで迷っています
1回だけfetchを呼んだほうがすっきりするのでそうしたいのですが
起き得ないことを考えても仕方ないですよね?
0230nobodyさん2014/11/13(木) 20:51:52.65ID:???
SQL文がおかしいんじゃ?
0231nobodyさん2014/11/13(木) 21:09:00.47ID:7FcDUVJG
例えばハッカーにDBをクラッキングされてunique制約を解除されたとか
DBが壊れたりバグがあったりしてなぜか2重登録出来てしまったとか
そういう自分のプログラムミスによらない外的な要因での話です
0232nobodyさん2014/11/13(木) 21:17:53.85ID:???
>>229
起き得ないなら一件だけ取得すればいいよ。
起き得ると思うなら全件取得するようにして、
2件以上有る場合にはエラーを通知するようにする。
0233nobodyさん2014/11/13(木) 21:37:28.89ID:???
その状態って単にDBだけどうにかするレベルの話ではないよね?
0234nobodyさん2014/11/14(金) 00:12:43.51ID:???
>>231
そんなことを考えているうちは99%以上の確率で内的要因。
0235nobodyさん2014/11/14(金) 03:16:54.34ID:???
クラッカーから見て、2重登録させられるようにするメリットがあるのかね。
0236nobodyさん2014/11/14(金) 06:36:58.90ID:???
そういえば自分も考えたことあったな
select maxした時に2個以上かえってきたらどうしようとか
0237nobodyさん2014/11/14(金) 10:18:29.98ID:???
not nullの制約が無ければ複数はありうる
0238nobodyさん2014/11/14(金) 11:07:05.77ID:???
group byとかで無駄にグルーピングして取っちゃえばいいじゃんw
0239nobodyさん2014/11/14(金) 15:51:43.37ID:???
鍵を確実にしめた様子を動画にとってきたのに何故か鍵が開いてたらどうしよう・・・
さっきガソリンをきっちり満タンにいれたのに今にでもガス欠になったらどうしよう・・・

システムに不正侵入されてDBを書き換えられたり、DBのバグだったりっていうのは、
空き巣や車に穴あける犯罪行為をされたり、単に物が壊れてたりに置き換わるから、
not null制約をつけてありえないはずの複数が返ってきたらっていう話なんじゃ。

そんなとこまで責任もってられねーよ
0240nobodyさん2014/11/14(金) 16:17:30.80ID:???
まあ、なんか設定ミスってます的な警告出す意味はあるとしても、
常時そんなチェックすべきじゃないよな
0241nobodyさん2014/11/15(土) 15:23:56.69ID:???
simple html domめっちゃ便利
0242nobodyさん2014/11/15(土) 15:26:57.92ID:SLGkws0E
あるclassが巨大化したので
classを分割したいのですがどうしたらいいですか?
具体的に言うとC#のpartialのようなことがしたいです
0243nobodyさん2014/11/15(土) 15:39:08.61ID:???
http://stackoverflow.com/questions/21657684/partial-class-in-php-like-we-have-in-c-sharp
0244nobodyさん2014/11/15(土) 15:47:02.29ID:SLGkws0E
>>243
素早い回答ありがとうございまいた!
0245nobodyさん2014/11/16(日) 00:15:38.81ID:b43iwSvA
cakePHPは、
バージョンがどの程度まで進めばリプレースを考えるべきでしょうか?

現在cakePHPの2.2.5を使って

$passwordHasher = new SimplePasswordHasher();
$this->data[$this->alias]['password'] = $passwordHasher->hash($this->data[$this->alias]['password']);

を実行しようとしたところ使えず、

$this->data[$this->alias]['password'] = AuthComponent::password($this->data[$this->alias]['password']);

とコードを記載しています。
0246nobodyさん2014/11/16(日) 04:21:00.51ID:B5CNo3zl
StdClass で宣言と同時にプロパティを宣言するにはどうしたらいいですか?

//syntax error, unexpected '{' エラーになる
$obj = new StdClass() {
public $a = 'a';
}

$obj->a; // 'a'

という感じで宣言したいです。
0247nobodyさん2014/11/16(日) 06:46:50.05ID:???
無理です
継承したsubクラス作ってその中で宣言でもして下さい
0248nobodyさん2014/11/16(日) 10:33:04.81ID:Zt31B99o
よく使うphpのメソッドの暗記用リストを作成したいんですが
どこかにそういう一覧ないですか?
自分で作ってもいいのですが数が多いのでどこかにまとめてあると助かります。
0249nobodyさん2014/11/16(日) 10:37:02.92ID:???
>>248
よく使うの定義は?
0250nobodyさん2014/11/16(日) 10:45:47.87ID:???
よく使うのは使っていくうちに覚えるし必要ない
0251nobodyさん2014/11/16(日) 11:30:07.63ID:???
暗記用リストとはなにか・・・
0252nobodyさん2014/11/16(日) 11:56:51.10ID:???
>>248
メソッドって関数のことかな?
よく使う関数一覧ならPHP入門書とかによく載ってるけど。
0253nobodyさん2014/11/16(日) 12:08:46.29ID:???
phpでなんかそういうのを組むのかと思ったら
たんによく使われるものを知りたかったのかw
人によって何を使うかは違うからな

http://php.net/manual/ja/ref.strings.php
http://php.net/manual/ja/ref.array.php
http://php.net/manual/ja/ref.filesystem.php
http://php.net/manual/ja/ref.network.php
http://php.net/manual/ja/book.pdo.php
http://php.net/manual/ja/ref.image.php

このへんはわりとよくつかうんでないか?
0254nobodyさん2014/11/16(日) 12:48:45.24ID:???
ありがとうございます!
0255nobodyさん2014/11/17(月) 01:18:16.89ID:???
pukiwiki設置して独自ドメインを取得してからそのとおりアクセスするとページは表示されるようになったのですが
Frontpage以外のページにいくとURLが独自ドメインから初期ドメインに変更されていて困ってます
phpと関係あるのかすらわからないし、わかりづらい質問ですけど、もし理解できる方いたらお助け下さい!
0256nobodyさん2014/11/17(月) 01:20:49.00ID:MpiY6wtu
ID晒すの忘れてた!
鯖はサクラ ドメイン取得先はお名前ドットコムです
0257nobodyさん2014/11/17(月) 01:27:55.94ID:???
pukiwikiの設定で初期ドメインを書いてるんじゃないの
0258nobodyさん2014/11/17(月) 01:57:20.63ID:MpiY6wtu
.htaccessっていうファイル
なんかそれを書き換えてドメインを統一したらできました!!
phpと無関係のひっどい質問してすみませんでした!わかってよかったー
0259nobodyさん2014/11/17(月) 02:29:55.34ID:???
まーたソシャゲーのアフィか
0260nobodyさん2014/11/19(水) 20:24:55.09ID:VlVIavcm
if構文の書き方で質問です。
>http://php.net/manual/ja/control-structures.alternative-syntax.php
>開き波括弧をコロン(:)、閉じ波括弧をそれぞれ endif等に変更するのが 別の構文の基本的な形式となります。
ifやforは二通りの書き方があるみたいですが、使い分ける時の基準などはありますか?
0261nobodyさん2014/11/19(水) 20:29:33.69ID:???
使わない。
0262nobodyさん2014/11/19(水) 20:34:15.43ID:???
なぜかwordpress方面で多用されてる不思議な書き方
やめてほしい
0263nobodyさん2014/11/19(水) 20:38:15.08ID:???
まー } が何の閉じなのか分かりやすくなるって利点がないことはない。
使わないけど
0264nobodyさん2014/11/19(水) 20:39:28.46ID:???
コロンでendifってのはテンプレートでの書き方
php自体テンプレートを標準で持ってる言語だけど
テンプレートエンジンを別途使っていない場合はわりと使うと思う
02652602014/11/19(水) 21:46:48.76ID:VlVIavcm
>>260です、ありがとうございました。普段は使わないようにします。
0266nobodyさん2014/11/20(木) 13:02:08.72ID:???
【初級】
単純にechoでHTMLを吐く
↓
ヒアドキュメントを覚える
↓
【中級】
viewロジックを分けるようになる
↓
テンプレートエンジンを導入する
↓
【上級】
フレームワークを導入する

あえて速度を求める場合中級どまり
しかし一番はやいのは初級であった
0267nobodyさん2014/11/20(木) 14:39:21.05ID:fF60GYgV
特に決まったポートで接続待ちとかしてるわけではないのですが
無限ループのphpファイルにアクセスする時
DBやファイルの共有可能なリソースを使わず
そのphpにアクセスしているアクセス数を取得したいのですが出来ますか?

<?php
set_time_limit(0);
header('Content-Type: text/html; charset=UTF-8');
ob_start();
while (1) {
echo 現在の接続数
flush();
ob_flush();
sleep(10);
}
0268nobodyさん2014/11/20(木) 14:42:22.01ID:???
>>267
> DBやファイルの共有可能なリソースを使わず
> そのphpにアクセスしているアクセス数を取得したいのですが出来ますか?
無理
0269nobodyさん2014/11/20(木) 17:44:18.83ID:???
>>267
PHPの外のリソース使う以外に手はないはず。
揮発性のものを使うということであれば、
プロセス数を数えて返すとか手はあるにはあるけど。
0270nobodyさん2014/11/20(木) 17:46:09.25ID:???
わかると思うけど、OSレベル以下で冗長化していると、
もう真っ当にどっかのリソース頼るしかない。
0271nobodyさん2014/11/20(木) 21:04:42.11ID:???
php実行する時ってhttp://localhost/a.phpみたいなのをブラウザに貼ってやるけどさ、
ブラウザ使わず直接apacheに投げる事ってできないのか
0272nobodyさん2014/11/20(木) 21:05:48.96ID:???
phpならphpコマンドで実行すればいいでしょ
apache通す意味は?
0273nobodyさん2014/11/20(木) 21:35:11.54ID:fF60GYgV
>>268-270
ありがとうございます
ボトルネックになる部分をなるべくなくしたのですが
無理ということで諦めたてDBを使うことにします
0274nobodyさん2014/11/21(金) 16:12:31.39ID:???
memcachedとかにすれば?
■ このスレッドは過去ログ倉庫に格納されています