【PHP】下らねぇ質問はID出して書き込みやがれ 103
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2011/01/25(火) 20:46:58ID:???過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 102
http://hibari.2ch.net/test/read.cgi/php/1292670453/
◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】5.3
【連携ソフトウェア】MySQL ImageMagick
【質問内容】
◆質問する時の注意
・ 出来るだけスレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・IDを出さない場合、偽者や成りすましの出現を覚悟すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)
◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に極力IDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0413nobodyさん
2011/02/03(木) 22:14:03ID:???今まで通りID必須に決まってんだろ
0414nobodyさん
2011/02/03(木) 22:21:43ID:???このスレは元々ID必須ではなかったのに、途中で誰かが勝手にID必須にしちゃったんだよ。
だから軌道が少し元に戻っただけで>>1に非は無い。
0415nobodyさん
2011/02/03(木) 22:27:27ID:???何しろ、スレ立て後10日も立ってからでないと「何か俺がうろ覚えの
テンプレと違う気がする。俺のアンチが勝手に書き換えてスレ立て
したんだ」と言い出さないほどですし、このスレの中には(このレスを
除いて) >>1 というアンカーが63ヶ所もあるのです。
専ブラを使っていれば苦もなくポップアップしますから >>1 >>1 と連
呼していた『大馬鹿』も全然 >>1 を読んでいなかった事は明白です。
0417nobodyさん
2011/02/03(木) 22:49:13ID:???0420nobodyさん
2011/02/03(木) 23:31:37ID:???0421nobodyさん
2011/02/03(木) 23:37:37ID:rsuWL5MG$_GET['KEYWORD']のKEYWORDが小文字だったりする場合も取得するにはどう書けばいいですか?
パラメータが大文字だったり小文字だったりでも対応したいです
0423nobodyさん
2011/02/03(木) 23:43:13ID:???array_change_key_case
http://www.php.net/manual/ja/function.array-change-key-case.php
0424nobodyさん
2011/02/04(金) 00:36:26ID:???http://www.php.net/manual/ja
↓
キーワードを入力して検索する
↓
検索結果を見てみる
↓
それでもわからない
↓
ここで「IDを出して質問」する
↓
ここでの質問は「日本語」でお願いします。
0425nobodyさん
2011/02/04(金) 00:51:44ID:???ここで質問するのに何でそんな面倒臭いことしなくちゃなんねーの?
勝手なルール導入してんじゃねぇよクズが
テメーら黙って聞かれたことに答えてりゃいいんだよボケ
0426nobodyさん
2011/02/04(金) 01:08:58ID:???【PHP】下らねぇ質問はID出さずに書き込みやがれ 1
http://hibari.2ch.net/test/read.cgi/php/1289117484/l50
0427nobodyさん
2011/02/04(金) 01:46:22ID:???0428nobodyさん
2011/02/04(金) 02:56:22ID:???0429nobodyさん
2011/02/04(金) 04:08:11ID:???以下のディレクトリ内のファイル名を取得するプログラムでいうと
$handleの指す値?を変更していないにも関わらず、ループ処理でファイル名を読み出せるのはどうしてですか?
if ($handle = opendir('.')) {
while (false !== ($file = readdir($handle))) {
if ($file != "." && $file != "..") {
echo "$file\n";
}
}
closedir($handle);
}
0430nobodyさん
2011/02/04(金) 04:09:53ID:???0435nobodyさん
2011/02/04(金) 07:44:23ID:???あとID出してな
0436nobodyさん
2011/02/04(金) 08:07:31ID:???どうしたら良いですか?
0437nobodyさん
2011/02/04(金) 08:46:36ID:4MRcrEwZ$url = 'http://ws.ponpare.jp/ws/wsp0100/Wst0201Action.do?key=sample&format=json&large_area=2';
$item = file_get_contents($url);
$item = json_decode($item, true);
return $item;
上記の$urlをdecodeできないです。
ググってみて、第二引数をfalseにしても駄目で、JSON_BIGINT_AS_STRINGもサポートされてなかったりとお手上げ状態です。
http://php.net/manual/en/function.json-decode.php
ちなみに、
$url = 'http://ws.ponpare.jp/ws/wsp0100/Wst0201Action.do?key=sample&format=json&large_area=1';
このアドレスだとちゃんとdecodeするのです。
どなたか解決方法わかる方いれば教えてもらえないでしょうか?
0438nobodyさん
2011/02/04(金) 08:51:53ID:4MRcrEwZうーむ、困った。
$url = 'http://ws.ponpare.jp/ws/wsp0100/Wst0201Action.do?key=sample&format=json&large_area=2';
$item = file_get_contents($url);
$item = mb_convert_encoding($item, "UTF-8", "auto");
$item = json_decode($item, true);
return $item;
0441439
2011/02/04(金) 09:50:12ID:???エンコードの方法がおかしいだけかもね
0442nobodyさん
2011/02/04(金) 10:11:03ID:4MRcrEwZレスありがとうございますm(_ _)m
かれこれ2時間以上ハマっていたのですが、
json_last_errorで調べたところ、decodeできないJsonは
「JSON_ERROR_SYNTAX 」
と元のJson自体に構文エラー表示が出ていました。
ということは、API提供側が修正してくれなければどうしようもないということですよね?
提供側にお願いしようと思っていますが、自力で解決できる問題であれば嬉しい。
0443nobodyさん
2011/02/04(金) 10:18:10ID:???0444nobodyさん
2011/02/04(金) 10:21:23ID:4MRcrEwZ配列に変換するのがJsonのほうが楽なのですが、
最悪xmlでやるしかなさそうですよね。
0445nobodyさん
2011/02/04(金) 10:26:23ID:???速度面はしらないけど。
0446nobodyさん
2011/02/04(金) 11:50:21ID:???$this->m_separatorはタブです。
var_dump($line);
$items = explode($this->m_separator,$line);
var_dump($items);
string(56) "501 東京IOM一般大豆 2011年2月限 48500 48700 47210 48700"
array(7) {
[0]=>
string(3) "501"
[1]=>
string(15) "東京IOM一般大豆"
[2]=>
string(12) "2011年2月限"
[3]=>
string(5) "48500"
[4]=>
string(5) "48700"
[5]=>
string(5) "47210"
[6]=>
string(5) "48700"
}
0447446
2011/02/04(金) 11:53:56ID:???0449nobodyさん
2011/02/04(金) 13:20:35ID:jenXX3GNエラーの部分を特定して、置換で自力修正すればいいんじゃね?
0450nobodyさん
2011/02/04(金) 14:38:05ID:dUJAf6je○が付いてる箇所のテーブルでinnodbで作成されてるのでinnodbか使える状態です。
どなたか助けてください
Windows
Apache2.2
MySQL5.5 (my.iniで文字コードをutf-8に指定)
PHP5.3.5
×:追加テーブル(dtb_session)の作成に失敗しました。
×:追加テーブル(dtb_module)の作成に失敗しました。
×:追加テーブル(dtb_campaign_order)の作成に失敗しました。
○:追加テーブル(dtb_mobile_kara_mail)の作成に成功しました。
○:追加テーブル(dtb_mobile_ext_session_id)の作成に成功しました。
×:追加テーブル(dtb_site_control)の作成に失敗しました。
×:追加テーブル(dtb_trackback)の作成に失敗しました。
×:テーブルの作成に失敗しました。
>> DB Error: syntax error
[nativecode=1064 ** You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'TYPE=InnoDB' at line 7]
0451nobodyさん
2011/02/04(金) 16:05:02ID:???「TYPE=InnoDB」で失敗するケースは多々見た事あるし
0452nobodyさん
2011/02/04(金) 16:10:51ID:???http://blog.pdns.jp/?p=406
0453450
2011/02/04(金) 16:36:45ID:???全てのsqlファイルをgrepでTYPE=InnoDBをENGINE=InnoDBに置換することでクリアできました!!!!!!!!!!!!!!!!!!!!!!!!
こんなに興奮したのは初めてです!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
0454450
2011/02/04(金) 16:58:28ID:???452先生本当にありがとうございます
0455nobodyさん
2011/02/04(金) 18:08:52ID:???0456nobodyさん
2011/02/04(金) 18:13:21ID:???いい加減[]とかにしてほしいんだが。
0460nobodyさん
2011/02/04(金) 20:54:59ID:???巣に帰れ荒らしさん
http://hibari.2ch.net/test/read.cgi/php/1289117484/
0462nobodyさん
2011/02/04(金) 22:30:27ID:???0463nobodyさん
2011/02/04(金) 22:31:08ID:???0465nobodyさん
2011/02/04(金) 23:42:00ID:tIWpoqCmFLASHのXMLSocket通信みたいなことをやりたいです。
二つ目の送信(LOGOUT)がどうやら向こうに届いていないか、結果を読み込めないようです。
$fp = pfsockopen('hoge.co.jp', $port, $errno, $errstr, 10);
fputs($fp, '<LOGIN />' . "\0");
fputs($fp, '<LOGOUT />' . "\0");
echo fread($fp, 2000); // => "ログインしました。"
fclose($fp);
サーバ側ではLOGIN,LOGOUTに対してそれぞれのメッセージを用意しています。
LOGINは"ログインしました。" で、LOGOUTは"ログアウトしました。"なのですがこちらのメッセージが表示されません。
ちなみにFLASHクライアントでは両方共のメッセージを受け取れましたので、サーバ側に問題はありません。
アドバイスよろしくお願いします。
0466nobodyさん
2011/02/04(金) 23:46:11ID:???0467nobodyさん
2011/02/04(金) 23:53:52ID:???0468nobodyさん
2011/02/05(土) 00:24:52ID:???そんな決まり、いつできたのでしょうか。
0469nobodyさん
2011/02/05(土) 00:42:01ID:???0470nobodyさん
2011/02/05(土) 06:18:54ID:???荒らしとして通報しますよ。
0471nobodyさん
2011/02/05(土) 06:19:27ID:???phpinfo()で --enable-mbstring が付いてなかったのですが
後から有効にするにはどうすればいいのでしょうか?
php.iniの php_mbstring.dll と [mbstring] 関連のは設定してるのですが
phpinfo()にはでてきません。
0472nobodyさん
2011/02/05(土) 06:20:08ID:OsiWw13l0473nobodyさん
2011/02/05(土) 06:27:31ID:+gMkAquMhttp://idol.nm.land.to/helloup_v2/upload.php
<?php
require "../upload.php";
?>
こういう風にrequireで呼び出して複数のフォルダから呼び出して使いたいのですが、
日当たり100万回200万回とアクセスを想定した場合
負担という観点からはどうなんでしょうか?
余り変わりがないのならこういう使いからをしたいのですが、どうでしょう?
0477nobodyさん
2011/02/05(土) 07:38:31ID:WeGs7GE9そういう個別の話ではなくて、PHPの特性としてどういう風に動くのかを知りたいんです。
requireやinclude等は負担増要因になるのか、と言う話しです。
0478nobodyさん
2011/02/05(土) 07:40:59ID:???echoもなるしコメントもなるし改行だってなる
0479nobodyさん
2011/02/05(土) 07:49:54ID:???生半可な知識だけで負荷の話をしたら、結論はこれ一つになっちまうぜ…
0480nobodyさん
2011/02/05(土) 07:57:28ID:???18禁ではなく、22禁にすべきキリッ
0481nobodyさん
2011/02/05(土) 08:17:13ID:???他に退散するか
バイバイお前ら
0482nobodyさん
2011/02/05(土) 08:25:27ID:???> 日当たり100万回200万回とアクセスを想定した場合
> 負担という観点からはどうなんでしょうか?
↑この質問のどこがPHPの特性に関する疑問なんだ?
requireやincludeの動作負荷に対する疑問ならアクセス回数は関係ないだろ
0484nobodyさん
2011/02/05(土) 09:11:26ID:???そういう人が一人でも住み着いて荒らすとどのスレでも駄目になる
なんども見てきた現象
0485nobodyさん
2011/02/05(土) 09:22:17ID:???それ以外はキャッシュされるし最近の鯖だと微々たる差。
0488nobodyさん
2011/02/05(土) 10:11:00ID:???煽るだけが目的で住み着く奴は後を絶たない
0489nobodyさん
2011/02/05(土) 10:12:07ID:???芋場規制秒読み乙
http://hato.2ch.net/test/read.cgi/operatex/1287911161/
0490nobodyさん
2011/02/05(土) 10:12:12ID:???0491nobodyさん
2011/02/05(土) 11:16:24ID:QxaE9H+Bこの場合、どうすれば<br>を取り除けるでしょうか?
$items = "趣味も<br>Excel、Wordをビジュアルで、わかりやすく、<br>短期間で自宅で学べる";
strip_tags($items);
上記でやっても上手くいかず。。なんでだろう。。
何百個と繰り返すのでできれば軽い方法を探しております。
0492nobodyさん
2011/02/05(土) 11:25:39ID:???string strip_tags ( string $str [, string $allowable_tags ] )
だからでは?
0493nobodyさん
2011/02/05(土) 11:26:06ID:???$itemsの中身を変更してくれるわけじゃないんだぞ?
0494nobodyさん
2011/02/05(土) 11:29:58ID:???0496nobodyさん
2011/02/05(土) 11:39:20ID:???0498491
2011/02/05(土) 13:40:19ID:QxaE9H+B$items = "麻布十番・名物スタンドの<br>「高級和牛の";
$items = strip_tags($items);
var_dump($items);
テストでこのようにすると普通にタグは削除されるのですが、
実際にプログラムの中でapiでxmlから抜き出した文字列になぜかstrip_tagsが効かないのです。
str_replaceなどでも同様でした。
mb_convert_encoding($str, "UTF-8", "auto");などで文字コード変換してから、
strip_tags使っても上手くいかず。。
もしかすると、cakephpでxmlを抽出するクラスを使っているので文字列が通常と変わっているのかも。
下記のようにデータを抽出しています。
$url = 'http://ws.ponpare.jp/ws/wsp0100/Wst0201Action.do?key=sample&large_area=1';
uses('Xml');
$items = new XML($url); //make xml content into object
$items = Set::reverse($items); //xml to array
$items = $items['Results']['Ticket'];
foreach($items as $item){
$item['title'] = strip_tags($item['catchcopy']);
}
0499491
2011/02/05(土) 13:48:33ID:QxaE9H+Bxmlの問題ではないみたいです。。
うーむ、ハマりにハマっている。
0500nobodyさん
2011/02/05(土) 13:51:18ID:???$itemで出力しているのはオブジェクトではなくて文字列になっているか確認しましょう
今すぐstrip_tagsの使用をやめましょう
strip_tagsの利用は初心者までです
strip_tagsを推奨しているサイトや参考書は今すぐ記憶から消し去りましょう
警告
・strip_tags() は HTML の検証を行わないため、 不完全または壊れたタグにより予想以上に多くのテキスト/データが削除される可能性があります。
・この関数は、allowable_tags で許可した全てのタグの属性を修正しません。 これには、style および onmouseover属性が含まれており、 悪意のあるユーザが他のユーザに見せるようなテキストを投稿する際に危険な行為を行う可能性があります。
0501491
2011/02/05(土) 13:58:28ID:QxaE9H+Bstrip_tagsが効かないのが分かると思います。
$url = 'http://ws.ponpare.jp/ws/wsp0100/Wst0201Action.do?key=sample&format=json&large_area=3';
$items = file_get_contents($url);
$items = json_decode($items, true);
$items = $items['results']['ticket'];
foreach($items as $item){
$item['title'] = strip_tags($item['catchcopy']);
echo $item['title'];
}
0502491
2011/02/05(土) 13:59:47ID:QxaE9H+Bレスありがとうございます。
オブジェクトになってないか、var_dumpしてみたのですが、見た感じ
オブジェクトではないと思うのです。
str_ireplaceとかを使うほうが安全なのですね。
0504nobodyさん
2011/02/05(土) 14:13:14ID:???/*@*/var_dump($item['catchcopy']);
$item['title'] = strip_tags($item['catchcopy']);
echo $item['title'];
}
strip_tags する対象を確認して結果をお知らせください。
0505491
2011/02/05(土) 14:13:43ID:QxaE9H+Bレスありがとうございます。
下記のようなタイトルから、 <br> を削除したいのですが、これはタグと認識されてないから
関数が効かないということでしょうか?
[catchcopy] => 高級鮨に加え、すき焼き&しゃぶしゃぶも食べ放題90分!<br>飲み放題もついてくる!<br>“極上生鮨コース”7,300円を驚きの54%オフ3,300円でどうぞ♪
0506491
2011/02/05(土) 14:16:04ID:QxaE9H+Bレスありがとうございます。
string(182) "海の幸も山の幸も♪<br>「北海道産食材にこだわる濃厚塩ちゃんこ鍋コース」<br>刺身6点盛りも付いた全6品、5,500円が2,500円に!"
var_dumpしてみたところ、上記のような結果になりました。
0507nobodyさん
2011/02/05(土) 14:27:18ID:???ブラウザ上じゃなくてソース表示で確認してみ?
こうなってると思うぞ。
string(182) "海の幸も山の幸も♪<br>「北海道産食材にこだわる濃厚塩ちゃんこ鍋コース」<br>刺身6点盛りも付いた全6品、5,500円が2,500円に!"
<br> じゃタグとして認識されるわけねぇよなぁ
0508nobodyさん
2011/02/05(土) 14:28:39ID:???海の幸も山の幸も♪&lt;br&gt;「北海道産食材にこだわる濃厚塩ちゃんこ鍋コース」&lt;br&gt;刺身6点盛りも付いた全6品、5,500円が2,500円に!
0509nobodyさん
2011/02/05(土) 14:29:37ID:???2chの仕様で変換されてるか知らないが
$item['catchcopy'] には <br> じゃなくて <br> が入ってる
これを取り除きたかったら
preg_replace('/<.+?>/', '', $item['catchcopy']);
0510nobodyさん
2011/02/05(土) 14:32:50ID:???これが実行された時点で、$item は文字列になっているはず。
その文字列から、 $item['catchcopy'] で値を取り出せるのですか?
0511491
2011/02/05(土) 14:35:22ID:QxaE9H+Bおおーーーー!!
ありがとうございます!! 上手くいきました!
これだけで2時間以上ハマっていたので感動です。
本当に助かりました。
0513nobodyさん
2011/02/05(土) 14:43:29ID:???foreach について誤解しているな。このコードで理解できるよね?
<?php
{
$hoge[ 0 ] = array( "catchcopy" => "hoget-0" );
$hoge[ 1 ] = array( "catchcopy" => "hoget-1" );
$hoge[ 2 ] = array( "catchcopy" => "hoget-2" );
$hoge[ 3 ] = array( "catchcopy" => "hoget-3" );
//
var_dump( $hoge );
//
foreach( $hoge as $item ) {
var_dump( $item );
}
}
?>
■ このスレッドは過去ログ倉庫に格納されています