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

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

レス数が900を超えています。1000を超えると表示できなくなるよ。
0001nobodyさん2010/09/18(土) 19:20:37ID:???
質問者はまず>>1を良く読むこと(必須!)
過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。

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

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

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

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

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

【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0830nobodyさん2010/10/08(金) 12:36:54ID:???
まぁ問題は>>819-821だわな
0831nobodyさん2010/10/08(金) 12:40:32ID:???
したり顔で教えながらPDOでmysql_real_escape_stringって・・・
0832nobodyさん2010/10/08(金) 13:01:04ID:gdsV0D6r
prepareってなんですか?
0833nobodyさん2010/10/08(金) 13:44:14ID:???
>>816
>$query = $dbh->prepare($sql);
>$result = $query->execute(array($id,$pass));
>$res = $result->fetchAll(PDO::FETCH_ASSOC);
ここおかしくね?
$resultにfetchAllなんてあるわけない
$query->fetchAllだろ

>>832
816に書いてあるようなやり方
0834nobodyさん2010/10/08(金) 15:00:00ID:puBZJtRM
RSSリーダーを自力で作ってるんだけど
ブログ名を取得する方法教えてください
タイトルとかurlとか時間は取得できるみたいなんだけどブログ名は無理なのかな?
↓ソースの一部


foreach ($rss->item as $item) {
$dc = $item->children('http://purl.org/dc/elements/1.1/');
$link = $item->link;
$title = $item->title;
$date = $dc->date;
$desc =$item->description;
0835nobodyさん2010/10/08(金) 15:34:59ID:???
サイトの宣伝ご苦労様です
0836nobodyさん2010/10/08(金) 15:46:32ID:???
>>829
考え方っていってないのになんで考え方というかっていったの???
0837nobodyさん2010/10/08(金) 15:54:18ID:puBZJtRM
>>835
宣伝じゃないです
0838nobodyさん2010/10/08(金) 16:00:48ID:rSpcfsYf
イチゴケーキを作ってるんですが、
バナナケーキは出来ないですかね。

↓イチゴケーキのおいしさ
ほのかに香るいちごのあまずっぱさ
プチプチとイチゴの小さな種の食感も最高


-------------------------------------------------
何いってるかわかんねwww
0839nobodyさん2010/10/08(金) 16:05:04ID:puBZJtRM
分かりやすく書き直します。

phpでrssからブログタイトルを取得する方法を教えてください
0840nobodyさん2010/10/08(金) 17:01:55ID:rSpcfsYf
rssってのには必ずブログタイトルが入ってるのが仕様なのか?
0841nobodyさん2010/10/08(金) 17:11:43ID:???
>>834
その形だと$rss->channel->titleとかでしょ。
XMLの構造見てお目当てのを探せばいいだけ。
RSSのバージョンによって構造が違うので幸運を。
0842nobodyさん2010/10/08(金) 17:26:49ID:puBZJtRM
>>841
ちょっと試してみるですありがと
0843nobodyさん2010/10/09(土) 01:37:40ID:???
PDOでmysql_real_escape_string使っていけませんか。
0844nobodyさん2010/10/09(土) 01:55:06ID:???
使っていけないということはないが普通使わない
使う必要性もないしむしろ使ったらPDO使ってる意味がない
特定のドライバにこだわらずどのRDBでも使えることを想定してるのに
わざわざドライバ固有の関数使うってどうなのよって話
0845nobodyさん2010/10/09(土) 01:59:56ID:???
ではどうすればいいのですか。
0846nobodyさん2010/10/09(土) 02:02:59ID:???
>>845
>>1
ていうか前の方にさんざん書いてるだろ・・・
プリペアードステートメント使えって
0847nobodyさん2010/10/09(土) 02:11:36ID:???
>>845
ttp://www.php.net/manual/ja/pdo.quote.php
ここの説明を読みなさいよ
0848nobodyさん2010/10/09(土) 02:14:03ID:???
せっかく本家でマニュアルが整備されているのにそれを読まない人が居るんだね
0849nobodyさん2010/10/09(土) 02:24:26ID:???
$pdo = new PDO(略);
$res = $pdo->prepare("INSERT INTO hoge(foo, bar) VALUES (:foo, :bar)");
$res->bindValue(":foo", $_POST['foo']);
$res->bindValue(":bar", $_POST['bar']);
$res->execute();

↓のようなことはする必要がないの
$res->bindValue(":foo", mysql_real_escape_string($_POST['foo']);
0850nobodyさん2010/10/09(土) 02:29:53ID:???
ふーん。ところでPDOって日本語を正しく扱えないってホント?
0851nobodyさん2010/10/09(土) 02:34:57ID:???
ゆとり量産スレときいて
0852nobodyさん2010/10/09(土) 09:53:36ID:???
多次元配列でキーが同じものだけをソートする方法を教えてください、
以下の例で、「[num] => 3」 が3つあり、それを逆順にソートしたいです。
ソート関数の使い方はわかります。多次元配列の扱い方がわかりません。

Array
(
  [0] => Array
  (
    [num] => 1
    [body] => aaa
  )
[1] => Array
  (
    [num] => 2
    [body] => bbb
  )
[2] => Array
  (
    [num] => 3
    [body] => eee
 )
[3] => Array
  (
    [num] => 3
    [body] => ddd
  )
[4] => Array
  (
    [num] => 3
    [body] => ccc
  )
)
0853nobodyさん2010/10/09(土) 10:18:33ID:???
ヒント
array[0][num]=1
array[1][num]=2
array[2][num]=3
0854nobodyさん2010/10/09(土) 10:29:04ID:Cr7uTEHe
windowsです
PHP5.3.3使ってます
MysqldeでPDOを使いたいんですけど
php_pdo.dllが入ってないんですけど
どこでphp_pdl.dllをダウンロードするのですか?
0855nobodyさん2010/10/09(土) 10:40:55ID:???
PDOは最初から含まれてるはずだが
ていうかマニュアルみなさいってばぁ
http://www.php.net/manual/ja/pdo.installation.php
0856nobodyさん2010/10/09(土) 11:22:45ID:Cr7uTEHe
PHP5.3にはphp_dlo.dllがはいらなくたったけぢ
php.iniでextension=php_pdo.dllは書いたほうがいいですか?
0857nobodyさん2010/10/09(土) 11:33:52ID:???
このステップは不要って書いてるんだからいらないってことだろ
いちいち聞かんとわからんのか?
0858nobodyさん2010/10/09(土) 12:12:44ID:Cr7uTEHe
PDOって便利だね
0859nobodyさん2010/10/09(土) 16:40:12ID:???
mysql_real_escape_stringでググレ
0860nobodyさん2010/10/09(土) 22:43:54ID:???
小っちゃいって事は便利だね
0861nobodyさん2010/10/10(日) 00:05:53ID:ouOWFWUJ
Googleで特定サイトの(画面上から入力されたURL)ページランクを
調べるにはどうすれば良いでしょうか?
0862nobodyさん2010/10/10(日) 00:29:20ID:???
Googleに聞いてください
0863nobodyさん2010/10/10(日) 00:33:16ID:???
mysql_real_escape_stringでググレ
0864nobodyさん2010/10/10(日) 00:37:49ID:???
昨日からPDOの使い方がわからなくて発狂してるのがいるなw
0865nobodyさん2010/10/10(日) 00:48:04ID:???
Google板ができてたね。
0866nobodyさん2010/10/10(日) 11:58:32ID:???
>>860
ネズミのドラマーw
0867nobodyさん2010/10/10(日) 12:52:11ID:3r76ILk1
現在時刻から一ヵ月後の時刻を取得するのはどうやるのでしょうか?
0868nobodyさん2010/10/10(日) 13:02:31ID:???
1ヶ月後の基準がわからん
0869nobodyさん2010/10/10(日) 13:13:30ID:???
来月の同じ日ってことでどうや?
0870nobodyさん2010/10/10(日) 13:14:31ID:???
1/30の1ヶ月後は2/30ですねわかります
0871nobodyさん2010/10/10(日) 13:14:38ID:sl1VHVin
現在時刻の一ヶ月後の時刻って、現在時刻と一緒だろ
0872nobodyさん2010/10/10(日) 13:30:43ID:???
この世界の時刻ってのはunixタイムとかのことだろ
0873nobodyさん2010/10/10(日) 16:10:38ID:???
>>867
strtotime("next month") でどぞ。
0874nobodyさん2010/10/10(日) 16:28:21ID:???
>>871
m9
0875nobodyさん2010/10/10(日) 17:06:50ID:vFML8UIU
フォームに他サイトのアドレスを入力する

そのページの特定の文字列を正規表現で取得(+できれば画像も)

取得したデータを整形して表示

こんか感じの動作をPHPで実現できませんか?
イメージとしてはにこサウンド(http://nicosound.anyap.info/
のように、フォームからアドレスだけ入力→整形データ表示
とできるようにしたいのです。
ですが他のページからデータを抽出する方法が
(あるのかどうかすら)わかりません。
もし似たようなシステムを組んだことがある方、
どうかご教授をお願いします。
0876nobodyさん2010/10/10(日) 17:35:29ID:???
>>875
file_get_contentsで読め
0877nobodyさん2010/10/10(日) 19:44:33ID:R6wxDE8S
公共のサイトに定期的にPHPでアクセスして文字列を取得するのはダメですか?
0878nobodyさん2010/10/10(日) 19:52:30ID:???
>>877
逮捕されるよ
岡崎図書館事件でググれ
0879nobodyさん2010/10/10(日) 20:10:08ID:???
mysql_real_escape_stringでググレ
0880nobodyさん2010/10/10(日) 20:45:02ID:???
困ったらとにかくpreg_matchかpreg_replaceを使っとけば解決する
0881nobodyさん2010/10/10(日) 20:54:27ID:lA2cYk+u
TwitterAPIの仕様について知りたいんだけど、どこで聞けばいいかわからずここにします。
SearchAPIでURL検索するとき、短縮URLの書き込みも展開後のものを対象に検索してくれるんでしょうか?
ググったらbacktweet?backtype?そういうの使うって記事がいっぱいあるけど、
でもSearchAPIでurl検索かけるとbit.lyとかow.lyとか展開後のURLが検索対象になってる気がする
この辺詳しく書いてあるところないですか?
TwitterAPIの仕様書にも目を通してるんですが短縮URLに関する言及が一切なくて困ってます。
わかる方助けてください。

最適なスレがあれば誘導してもらえると嬉しかったりします。
0882nobodyさん2010/10/10(日) 21:02:08ID:???
>>881
圧縮されたURLもヒットする、内部の処理の仕方なので仕様には乗らないとおもう
0883nobodyさん2010/10/10(日) 21:09:06ID:lA2cYk+u
ありがとうございます。

全URLを一旦チェックし、リダイレクトされるものはリダイレクト後のURLを保存してある
という仕様が考えられますが、それだとUAによって違ったURLに飛ばされるようなURLだった時に厄介な気がします
従いまして、短縮URLサービスのリストを持っていて、該当するURLの場合は展開しているのではないかと思うのですが、
だとしたら仕様に乗らないのはおかしいなと思っておりました。

なにはともあれ私以外の方から、明確に「圧縮されたURLもヒットする」というお言葉をいただけたので
backtypeといった外部サービスを利用せず、公式検索APIを使って開発したいと思います。
どうもありがとうございました。
0884nobodyさん2010/10/10(日) 21:33:56ID:???
>>883
bit.lyとかAmazonのamzn.toとか、Pixivのp.tlとかはtwitterで展開されるのを確認してるけど
個人で作ったものまではやってみたことが無いので気を付けて
それでもほとんどの短縮URLは検索できるから問題ないが
0885nobodyさん2010/10/11(月) 00:58:16ID:BmMGNfcc
PHPにはC++のような関数の多重定義は実装されていません。
そこでデフォルト引数の機能を使って擬似的に関数の多重定義を実現してみました


function hoge ($a, $b = 0) {

 if ($b === 0) {
  // hoge($a) が指定されたことにする
 }

・・・
}

このような実装にすれば

hoge("ahya");
hoge("ahya", "hoge");

のように擬似的に関数の多重定義を実現できると思うのですがこのやり方はありでしょうか?
もっとスマートな方法があるようでしたら教えてください。
0886nobodyさん2010/10/11(月) 01:08:48ID:???
オーバーライドのことかね?
0887nobodyさん2010/10/11(月) 01:09:38ID:???
>>885

$b = null

の方がいいと思う.
0888nobodyさん2010/10/11(月) 01:37:15ID:???
可変引数とかあったろ
0889nobodyさん2010/10/11(月) 05:52:26ID:???
>>885
引数によって処理を変えてるだけだから多重定義と呼べるかどうか。
目的によってはオーバーライドのほうがスマートかも知れん。
0890nobodyさん2010/10/11(月) 07:24:03ID:C9wk+ULb
PHPで、arrayにある値があったら取り出して元のarrayから消すという操作を
1文でできる関数ないでしょうか


$list1 = array('aaa', 'bbb', 'ccc');
$list2 = some_func('bbb', $list1);
結果 list1 = ('aaa','ccc') list2 = ('bbb')
0891nobodyさん2010/10/11(月) 07:44:21ID:???
ないから作ってください
0892nobodyさん2010/10/11(月) 08:00:33ID:VsEhTdxo
適切なスレを見つけることができなかったので、こちらで相談させてください

pixivチャット(http://chat.pixiv.net/)と言うphpで構成されたサイトがあるのですが、
そこでamfファイルというものが扱われています
このamfファイルというものがよくわかりません
phpとamfファイルはどのような関係なのでしょうか?

また、質問に対して他に適切なスレをご存知でしたら
誘導していただければとても助かります
よろしくお願いします
0893nobodyさん2010/10/11(月) 08:24:27ID:???
ttp://wiki.minaco.net/index.php?Flash%2FAMF
ttp://blog.asial.co.jp/323
これ?よくわかんないけどXML-RPCとかJSONの仲間なのかな
もしこれならこのスレで待ってれば分かる人が答えてくれるかもね

AniMationFileの略とかいうオチではないよね
08946232010/10/11(月) 10:10:47ID:???
フォーラムにも書かれてました
ttp://www.smarty.net/forums/viewtopic.php?p=67137&sid=7c16c90aaa2aacb822de0aef8b4d3853
0895nobodyさん2010/10/11(月) 11:20:30ID:???
ifの使い方って基本的にはこうだと思うんですが

if (true) {
  echo $a;
} else {
  echo $b;
}

オープンソースなどのコードを読んでると、
同じ動作をこんなふうに書いていることがあります

if (true) {
  echo $a;
  break;
}
echo $b;

この書き方をすると、どんないいことがあるのでしょうか。
前者と後者でどう使い分ければいいのか、教えてください。
0896nobodyさん2010/10/11(月) 11:31:00ID:???
良い事も悪いこともねえよ
自分のコーディングスタイルでやればいい

0897nobodyさん2010/10/11(月) 11:37:07ID:???
んなあほな
構文からしておかしいじゃん
if-else文にbreakなんて使えない
0898nobodyさん2010/10/11(月) 11:40:22ID:???
ヒント:ループの中
0899nobodyさん2010/10/11(月) 11:42:15ID:???
>>897
バカはもう一度基本文法からやり直して来い
0900nobodyさん2010/10/11(月) 11:44:40ID:???
ループでもないんじゃないの
だって上の場合ループ毎に必ず$aか$bのどちらかが出力されて
下は一致して$aが出力されたあとに$bが出力されじゃん
だいたいcontinueならともかくbreak使ってたら上と違って全て回りきらないよ
ようするに>>895の2通りの書き方はどうみても違う結果が出る
09019002010/10/11(月) 11:46:33ID:???
あぁすまない
>下は一致して$aが出力されたあとに$bが出力されじゃん
これ嘘 $bは出力されないね
0902nobodyさん2010/10/11(月) 11:49:48ID:???
言いたい事をちゃんとまとめて
0903nobodyさん2010/10/11(月) 11:51:42ID:???
>>902
ループ中で

if (true) {
  echo $a;
} else {
  echo $b;
}

if (true) {
  echo $a;
  continue;
}
echo $b;

じゃないと同じ動作にならない
0904nobodyさん2010/10/11(月) 12:05:03ID:???
変に深読みしすぎでは?
上と下が同じ動作とか誰も書いてないわけだし
>>895さんは、単にこういう書き方どうなのって聞きたいだけでしょ
0905nobodyさん2010/10/11(月) 12:07:54ID:???
$i = 1;
$j = 1;
while (1 == $i){
if (1 == $j) {
echo $a;
break;
}
echo $b;
$i++;
}
0906nobodyさん2010/10/11(月) 12:08:24ID:???
>オープンソースなどのコードを読んでると、
>同じ動作をこんなふうに書いていることがあります
0907nobodyさん2010/10/11(月) 12:12:23ID:???
>>906
ごめんなさい
0908nobodyさん2010/10/11(月) 12:15:44ID:???
まぁ細かいこと抜きにして答えは>>896で出てるんだけどね
0909nobodyさん2010/10/11(月) 13:08:47ID:STo2MEV2
O/RとかORMって言葉をフレームワークとかで見かけますがこれは何ですか?
0910nobodyさん2010/10/11(月) 13:20:06ID:???
きみ の ぱそこん に ぐーぐる は ついていないのかい?
0911nobodyさん2010/10/11(月) 13:37:54ID:???
説明できない奴に限ってこういうレス
0912nobodyさん2010/10/11(月) 14:44:54ID:???
>>903
条件が見つかった段階でループをやめたい時などはbreak使ったりするよ
>>911
「○○」って何ですか?て質問は最も無駄な質問のうちの一つ
0913nobodyさん2010/10/11(月) 14:56:52ID:???
>>912
的外れやり直し
0914nobodyさん2010/10/11(月) 15:06:21ID:???
if文の式にtrueとか書いてるから問題になってるのでは?
0915nobodyさん2010/10/11(月) 15:09:38ID:???
if (condition)
と同じ意味で書いたことぐらいは察してやれよ
0916山下太郎2010/10/11(月) 15:10:51ID:???
野球やろうぜ!
0917nobodyさん2010/10/11(月) 15:11:24ID:???
>>913
なんで?
0918nobodyさん2010/10/11(月) 15:13:05ID:OkdHn3lD
PHPフレームワークでの開発業務経験半年以上、仕様定義・DB設計スキル

これって具体的にどんなことするんでうsか
0919nobodyさん2010/10/11(月) 15:15:08ID:???
>>918
案件による
0920nobodyさん2010/10/11(月) 15:15:42ID:???
>>918
奴隷開発
0921nobodyさん2010/10/11(月) 15:16:41ID:OkdHn3lD
業界未経験なので仕様定義とかDB設計っという用語は使ったことないのですが
会社に入るまで気にしなくていいですかね?
0922nobodyさん2010/10/11(月) 15:18:45ID:???
SEの募集要件じゃん
プログラムの設計をするお仕事です
0923nobodyさん2010/10/11(月) 15:20:09ID:???
>>920
どの穴を開発するんですか?
0924nobodyさん2010/10/11(月) 15:22:18ID:OkdHn3lD
seですか
apache+php+mysql+linuxを覚えれば30歳でも就職できますかね?
0925nobodyさん2010/10/11(月) 15:22:39ID:???
>>921
>PHPフレームワークでの開発業務経験半年以上
って所に未経験で行くの?
0926nobodyさん2010/10/11(月) 15:23:30ID:???
未経験でSEは無理だろ
設計できないのにできますっていっちゃあかん
プログラマーの募集要件に設計求めるのはブラック会社だから注意
0927nobodyさん2010/10/11(月) 15:27:44ID:???
事前知識も0みたいだしやめといたほうが
0928nobodyさん2010/10/11(月) 15:40:00ID:???
>>924
プログラマーなら未経験でも平気だよ
でも最近は不況で社内育成とかしてる余裕ないから即戦力が欲しい
だからプログラマー募集といいつつ要件きつくしてるとこもある
嘘偽りのない自分にあった要件のとこさがすといいよ
プログラマーは30歳定年というけどそれはプログラマーのままだと
給料が割に合わなくなるからで(プログラマーは楽で給料が安い)
後進に枠譲ってSEになっていく運命
SEはプログラマー5年もやってればそういう知識が身につくでしょう
安いの我慢して若い子たちの中でプライド捨ててやる勇気があれば
30からプログラマーでも全然OK
0929nobodyさん2010/10/11(月) 15:46:11ID:???
DBは経験がものを言う
経験浅いやつが設計したDBにまともなものはない
レス数が900を超えています。1000を超えると表示できなくなるよ。