【PHP】下らねぇ質問はID出して書き込みやがれ 78
レス数が1000を超えています。これ以上書き込みはできません。
0001nobodyさん
2008/12/23(火) 19:08:55ID:???過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 76
http://pc11.2ch.net/test/read.cgi/php/1226517332/
◆質問用テンプレ
【OS名】vine linux
【PHPのバージョン】php5.26
【連携ソフトウェア】mysql
【質問内容】
◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)
◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
0002nobodyさん
2008/12/23(火) 19:09:38ID:???・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0003nobodyさん
2008/12/23(火) 19:11:33ID:???【PHP】下らねぇ質問はID出して書き込みやがれ 77
http://pc11.2ch.net/test/read.cgi/php/1228667259/
【PHP】下らねぇ質問はID出して書き込みやがれ 76
http://pc11.2ch.net/test/read.cgi/php/1226517332/
【PHP】下らねぇ質問はID出して書き込みやがれ 75
http://pc11.2ch.net/test/read.cgi/php/1224168721/
【PHP】下らねぇ質問はID出して書き込みやがれ 74
http://pc11.2ch.net/test/read.cgi/php/1221909788/
【PHP】下らねぇ質問はここに書き込みやがれ 73
http://pc11.2ch.net/test/read.cgi/php/1220440493/
【PHP】下らねぇ質問はここに書き込みやがれ 72
http://pc11.2ch.net/test/read.cgi/php/1218855685/
【PHP】下らねぇ質問はここに書き込みやがれ 71
http://pc11.2ch.net/test/read.cgi/php/1216291372/
【PHP】下らねぇ質問はここに書き込みやがれ 70
http://pc11.2ch.net/test/read.cgi/php/1214356448/
【PHP】下らねぇ質問はここに書き込みやがれ 69
http://pc11.2ch.net/test/read.cgi/php/1211879073/
【PHP】下らねぇ質問はここに書き込みやがれ 68
http://pc11.2ch.net/test/read.cgi/php/1209822736/
【PHP】下らねぇ質問はここに書き込みやがれ 67
http://pc11.2ch.net/test/read.cgi/php/1207863515/
【PHP】下らねぇ質問はここに書き込みやがれ 66
http://pc11.2ch.net/test/read.cgi/php/1205655807/
【PHP】下らねぇ質問はここに書き込みやがれ 65
http://pc11.2ch.net/test/read.cgi/php/1203854597/
0004nobodyさん
2008/12/23(火) 19:12:21ID:???■本家マニュアル http://www.php.net/manual/ja/
■日本PHPユーザ会 http://www.php.gr.jp/
■PEARマニュアル http://pear.php.net/manual/ja/
■メーリングリスト http://ns1.php.gr.jp/mailman/listinfo/
■ZFマニュアル http://framework.zend.com/manual/ja/
(以下英語)
■Smarty http://smarty.php.net/
■Zend本家 http://www.zend.com/
■Zend Framework http://framework.zend.com/
■php | architect http://www.phparch.com/
■Smartyマニュアル http://smarty.php.net/manual/en/
■PECL本家(英語) http://pecl.php.net/
0005nobodyさん
2008/12/23(火) 19:13:07ID:???1.文字コードは何を使えばいいの?
→1.UTF-8 2.EUC-JP のどちらか。迷うようなやつはShift_JISは使っちゃダメ。
2. このスレに書き込むときに自分のサイト名を晒したくない
→ http://example.com/が例文などのために予約されている。hogehoge.comは使っちゃダメ。
3. ブラウザに何も表示されないんだけど・・・
→ Apacheの設定を見直せ。ファイルの拡張子は何にしてて、その拡張子でPHPを呼ぶようになっているか?
4. 記号の意味がわからないけどググりようがない
→ 「@」 エラー表示を抑制、「->」 オブジェクトのメンバにアクセス、「::」 静的なメソッド呼び出し、
「==」は暗黙の型変換をしてゆるい比較、「===」は型情報も含めた厳密な比較
5. echo "$arr['hoge']['fuga']"; と書いたらエラーになった
→ {おっぱい括弧}でくくって"{$arr['hoge']['fuga']}"にする
6. 一定時間ごとに自動的に何かしたいんだけど
→ cronかタスクスケジューラを使え。
7.extractって危険なの?
→変数上書き&初期化忘れなどで危険。楽だからという理由だけで安易に使わない。
8. include/requireに「〜.php?a=b&c=d」のようなパラメータをつけたい
→ URL呼び出しなら可能だけど、普通のファイル呼び出しではできません
9.include/requireでURLを指定しても何も起きない
→ .phpの拡張子のファイルをURLで呼び出すと、1度PHPプログラムとして実行された結果になる。
0006nobodyさん
2008/12/23(火) 19:13:41ID:???→ 確認すべきはPHPのconfigureの引数、php.iniの内容と置き場所、
Webサーバの設定(Apacheならhttpd.conf)、起動&再起動あたり
11. SQLの質問はどこで?
→ データベース板に誘導されるのが嫌ならPHPにうまく関連させて質問する
12. 文字列のなかに、英字のみとか数字のみとか記号が入っちゃいやんとかはどうしたらいいの?
→ ctype_〜()が手軽。複雑なパターンはpreg_〜()あたりで正規表現を使う。
13. $a1, $a2, $a3 ... のような変数名をうまく扱いたい
→ 可変変数で実現できるけど、むしろ配列を使って$a[1], $a[2], $a[3]等とするのがベター
14. echoとprintってどう違うの?
→ よく議論される話題であるが基本的に両者とも同じ。 以下ちょっとした議論。
http://www.faqts.com/knowledge_base/view.phtml/aid/1/fid/40
15. クッキーの情報をユーザから隠したい
→ セッション使え。ただしクッキーとセッションは仕組みが違うから同じように扱うな
16. strip_tags()で削除しないタグを複数指定したい
→ strip_tags($html, '<a><p><font>'); // htmlspecialchars()も検討すべし
17. CSVやTSVのファイルをスマートに扱いたい
→ まずはfgetcsv()。ただし日本語を含むと正常に動作しない場合があるので注意だ。
18. 値渡しと参照渡し(「&」を使う)のパフォーマンスの違い
→ C言語じゃないので、パフォーマンス目的で使いわけたらダメ。参照渡しにすると逆に遅くなったりする
参照渡しは引数に戻り値を設定したり引数を関数内で変更するなど、正しい目的に使うこと
19. ファイル入出力関数(fopen等)でリモートファイル(http://〜とか)を扱う際の限界
→ fsockopen()でソケット通信 or PEARのHTTP系 or CURLで解決
必要ならHTTPをはじめとする各種プロトコル(どんなデータを送受信するか)はRFCなどで調べる
20. PHPからPOSTリクエストしたい
→19.を参照
21. 画像処理一般 or GDの限界
→ ImageMagick(PECLのやつ or シェルから実行)
22. 画像・音・動画はファイルで保存?DBに保存?
→ 好きにしてください
0007nobodyさん
2008/12/23(火) 19:14:51ID:???http://pc11.2ch.net/test/read.cgi/php/1228709756/
0008nobodyさん
2008/12/23(火) 19:17:56ID:???「有難う」と言う
感謝の心
「すみません」と言う
反省の心
「おかげ様」と言う
謙虚な心
「私がします」と言う
奉仕の心
「はい」と言う
素直な心
0009nobodyさん
2008/12/23(火) 19:33:00ID:???1.読まない
2.調べない
3.試さない
4.理解力が足りない
5.人を利用することしか頭にない
0010nobodyさん
2008/12/23(火) 19:39:10ID:???0011nobodyさん
2008/12/23(火) 19:41:32ID:???0012nobodyさん
2008/12/23(火) 19:47:21ID:???ここまで貼ってやれよ気が利かないな
0013nobodyさん
2008/12/23(火) 19:49:02ID:???0014nobodyさん
2008/12/23(火) 19:50:12ID:???ググレ、ググレって覚えたての言葉をうれしそうに連呼する猿を見ると吐き気がする。
手元にある書籍で思いっきりひっぱたいてやりたい気分。氏ねw
日本のphpが終わってるのはコミュニケーション能力のないキモヲタしかつかわないから。
そういう豚は「ググレググレググレ」ばっか。だからユーザーが育たない。
0015nobodyさん
2008/12/23(火) 20:02:17ID:???ググレってのはググった方が力になるし、理解も速いってことだと思うけどな。
ドキュメントを読む力、Webの情報を正しく解釈する力ってのは宝になる。
すまんね、こんなジジィなこと書いて。
すくなくとも、みんな、「うれしそうに連呼」してるわけじゃないってことはわかってやれ
0016nobodyさん
2008/12/23(火) 20:03:15ID:???0017nobodyさん
2008/12/23(火) 20:04:06ID:???そこに疑問を持つなら来なきゃいい。
2chのすべてのスレに当てはまる。
存在意義のわからないスレを訪れる意味などどこにもない。
0019nobodyさん
2008/12/23(火) 20:20:33ID:???一、有り難うという感謝の心
一、済みませんと言う反省の心
一、お陰様でと言う謙虚な心
一、私がしますと云う奉仕の心
一、ハイという素直な心
(「何でも相談室」に寄せられたメイルより、1998.10.29)
0020nobodyさん
2008/12/23(火) 21:12:47ID:59V79J7s昨日、結局、サーバにZIP関数のモジュールがないためと
判明しました。なので、必死になって、
PECLのインストールを試みましたが、できません。
先にPEARをインストールせよと書いてあって、
それはできました。
で、PECLをインストールしようとすると、
コマンドが見つからないと出ます。
サーバーはXREAで、なんかbashというのに制限があるらしい。
で、回避する方法が書いてあるhpがあるのですが、
この通りにやっても、うまく回避できません。
http://hain.jp/index.php/tech-j/2007/06/11/p154
Xreaで、PECLのインストールできた人、
やり方、教えてもらえませんか。
0021nobodyさん
2008/12/23(火) 21:21:16ID:???0022nobodyさん
2008/12/23(火) 21:26:15ID:59V79J7sもしかしたら、できないのかなとも思うのですが、
できた人、いませんか?
コマンドがちょびっとしかないんです。
困ります。
0023nobodyさん
2008/12/23(火) 21:31:12ID:???0024nobodyさん
2008/12/23(火) 21:45:27ID:59V79J7sあと、ZIP関数はあきらめて、PEARでやる場合、
HTTPなんたらというのと、アーカイブなんたらというのがあるようですが、
どっちがいいか、やった人いませんか?
やりたいこと=複数ファイル+透過的書込み
0025nobodyさん
2008/12/23(火) 21:46:45ID:???0026nobodyさん
2008/12/23(火) 21:51:01ID:???わからない5大理由
1.読まない
2.調べない
3.試さない
4.理解力が足りない
5.人を利用することしか頭にない
0027nobodyさん
2008/12/23(火) 21:51:47ID:59V79J7s0028nobodyさん
2008/12/23(火) 21:54:00ID:59V79J7s0029nobodyさん
2008/12/23(火) 21:55:24ID:???0030nobodyさん
2008/12/23(火) 22:07:50ID:???0032nobodyさん
2008/12/23(火) 22:17:11ID:59V79J7s0033nobodyさん
2008/12/23(火) 23:28:05ID:???0034nobodyさん
2008/12/23(火) 23:38:00ID:59V79J7sほんとうですか?
ダメなんですか。
xreaのやや高いコアサーバーはできるんでしょうか。
0035nobodyさん
2008/12/23(火) 23:50:35ID:???あそこの女管理人はユーザーの要望によく答えてくれる
0036nobodyさん
2008/12/23(火) 23:59:16ID:???0037nobodyさん
2008/12/24(水) 00:15:33ID:???0038nobodyさん
2008/12/24(水) 02:57:36ID:sZzY7XPXあるテーブルにこのようなデータがあるとします。
・fruite テーブル
fr_id fr_name
1 りんご
2 みかん
3 ぶどう
4 もも
・person テーブル
name fr1 fr2
田中 1 2
佐藤 3 1
中島 2 4
こんな感じでfruiteテーブルのidカラムをキーにして内部結合したいのですが。
SELECT name,fr_name from person INNER JOIN fruite fruite.id = person.fr1 and fruite.id = person.fr2
これだと 結果を連想配列で受け取ると fr1 も fr2 も同じ値が帰ってきます。(fruite_id が重複してしまう)。
これを回避する方法はありますか?
003938
2008/12/24(水) 03:01:36ID:sZzY7XPX整理して質問しなおします。スルーしてくださって結構です。
失礼しました。
0041nobodyさん
2008/12/24(水) 03:19:06ID:???1次正規形になっていないので俺だったら分割する。
あくまでその形で取りたい場合は、サブクエリ使うかANDじゃなくてOR使えば良いかと。
0042nobodyさん
2008/12/24(水) 03:35:33ID:???スレチの上に誤答
1次正規形にはなってる、3次が出来てない。
正規化にこだわるなら、ステータス付きの多対多参照テーブルを作ってもよいが、
Web用ならそれは冗長だから正規化にこだわる必要はない。
>>38は単にクエリが間違ってるだけ。
正解は "personテーブルでエイリアス"だ
0043nobodyさん
2008/12/24(水) 03:42:33ID:???そうか?なんで?
0044nobodyさん
2008/12/24(水) 03:49:21ID:???りんご、みかん等のデータが直接入っている場合のこと。
これは分割出来てるので、すでに1次正規形。
fr1、fr2のように同じ参照先を持つカラムが複数ある場合は、
テーブルをpersonテーブル、person-fr1参照テーブル、person-fr2参照テーブル
のように分割するのが3次正規形
0045nobodyさん
2008/12/24(水) 03:59:22ID:???0046nobodyさん
2008/12/24(水) 04:12:12ID:???適当にぐぐって上の方にあった解説サイト
http://www.kogures.com/hitoshi/webtext/db-seikika/index.html
>第1正規化
>第1正規化とは,繰り返しの部分を複数のレコードにして,繰り返しを排除する操作です。第1正規化をした結果を第1正規形といいます。
とありますが?
0047nobodyさん
2008/12/24(水) 04:17:51ID:???初心者向けに説明しただけ。
fr1 fr2 がfr1は好きなくだもの、fr2は嫌いなくだものだったとして、
それを同じカラムに入れるのが1次正規系だとでも思ってるの?
0048nobodyさん
2008/12/24(水) 04:21:33ID:???0049nobodyさん
2008/12/24(水) 04:25:02ID:???主キーにすべきものが重複してる時に、主キー化するのが第1正規化 だよ
フルーツがカラムとして重複してるときにfruitsIDを振って独立させるのが
第1正規化。つまり、fruiteテーブルが正規化されたテーブル
外部キー側で複数カラム持ってる場合を一緒にするなよ
005038
2008/12/24(水) 04:30:19ID:xtfjZM1O>>40,45
スレチ、申し訳ありません。以後気をつけます。
>>42
ありがとうございます。
SQLのミスでしたか。
教えられたとおりやってみます。
スレチにも関わらずご回答いただき、ありがとうございました。
0051nobodyさん
2008/12/24(水) 05:01:04ID:???正規系がどうのこうの、第一次がどうの、
三次がどうの、とか書いてあるが、あそこの章って
重要なのか?
キモヲタのざれごとだと思って、いままで
読まないで飛ばしてた。
005238
2008/12/24(水) 05:50:33ID:???こんなことできるんですね。
(文には自信がありませんが、一応動く)。
SELECT name, f.fr_id as ok_id, f.fr_name as ok_name, f2.fr_id as ng_id, f2.fr_name as ng_name FROM person p
inner join fruite f on p.ok_id = f.fr_id
inner join fruite f2 on p.ng_id = f2.fr_id
order by ok_id;
ok_id,ng_id は上で挙げたf1,f2です。わかりにくいのでこうしました。
ありがとうございました。
0053nobodyさん
2008/12/24(水) 05:50:36ID:???firefoxの欠陥を見つけたお
JavascriptでPOST出来やがるお
141 :名無しさん@九周年 [sage] :2008/12/24(水) 05:18:56 ID:IlO7k8r00 (3/3) [PC]
利用したサイトも見つけたお
表示しただけで掲示板にスパム書き込みするお
0054nobodyさん
2008/12/24(水) 05:58:34ID:???俺が何かするたびに女子に笑われまくった。
で、もういい加減イライラしてたんだ。
そんなとき俺を一番馬鹿にしてた女が誰が見ても俺とわかる落書き
を前の黒板に書いてた・・・そしてみんな笑う
怒りは頂点に達した。そして1に至る。
全く後悔はしてないし、殺意もあった。
0055nobodyさん
2008/12/24(水) 07:29:47ID:???このページわかりやすい
0056nobodyさん
2008/12/24(水) 07:47:39ID:???日本統治下に合ったときは日本政府によって廃止されたが
韓国、北朝鮮が独立して復活したものである
0057nobodyさん
2008/12/24(水) 10:41:42ID:???大事。理論の話に見えてあれは実践。
正規化は要するにDBの持つデータの量を、情報量をと一致させるため(なるべく少ないデータで済ますため)の技術。
完全な正規化がなされていると、送受信するデータが最小になるし、最適化もしやすくなる。
正規化がなされていないと、本来SELECT一発で済むものを、ややこしい検索条件を含めないと取れなかったり、
あるいは取得結果をもっかい処理しないと欲しいデータが手に入らなかったりする。
突き詰めると、性能を満たすために一部正規化を崩す場合もあるのだが、その判断も完全に正規化された状態からの方がしやすいし。
ある程度の経験がないとピンと来にくい場所ではあるけどな。
0058nobodyさん
2008/12/24(水) 11:56:31ID:AHayykgc【PHPのバージョン】php5.28
【連携ソフトウェア】mysql
【質問内容】
Configuring extensions
checking whether to enable LIBXML support... yes
checking libxml2 install dir... /usr/lib
checking for xml2-config path... /usr/bin/xml2-config
checking whether libxml build works... no
configure: error: build test failed. Please check the config.log for details.
ここで止まっちゃうんだけど、ぐぐってもよくわかりませんでした
0059nobodyさん
2008/12/24(水) 12:04:08ID:9cQH1zL0というエラーがとあるタイミングで出ます。
正常に表示されていたはずなのに、F5を押しまくると、たまに上記のエラーが出て、
またF5を押すと、エラーが表示され続け、またすぐに正常に戻ります。
一体なんなんでしょうか・・・。
41行目はクラス変数を配列で初期化している部分で、
41行目をコメントアウトすると、また別のクラス変数でエラーが出るんですが、
そこをコメントアウトすると、次はまた別の場所で
Parse error: syntax error, unexpected T_STRING in *** on line 70
というエラーがでます。
ここはコメントアウトしても変わりません(70行目がエラーだとずっと言う)
そして、正常表示される場合もあるのです。
006059
2008/12/24(水) 12:06:43ID:9cQH1zL0【OS名】CentOS 5
【PHPのバージョン】 5.26
PHPは下記の設定でコンパイルしています。
'./configure' '--with-apxs2=/usr/local/apache2/bin/apxs' '--enable-mbstring'
'--enable-mbregex' '--enable-zend-multibyte' '--with-mysql' '--with-gd'
PHPのソースファイルは全てUTF-8で書いています。
0061nobodyさん
2008/12/24(水) 12:11:41ID:???ソースを確認しないとわからないけど、
F5でエラーが変わるのは文字コードの問題があるときに起きることがある。
文字コード周りの設定と、ソースファイルの中に問題のある文字コードが
混入していないか調べてみるのもいいかもよ。
とりあえず、最初のエラーのソース周り出してみたら?
0062nobodyさん
2008/12/24(水) 12:13:16ID:???config.logを見ろと書いてあるけど、そこになんて書いてある?
あと、Configureオプションを削って通るかどうか試してみて
0063nobodyさん
2008/12/24(水) 12:20:49ID:9cQH1zL0秀丸で確認していますが、関連ファイル全てUTF-8(BOM無)です。。。
一体なんだろう・・・
0064nobodyさん
2008/12/24(水) 12:32:36ID:???0065nobodyさん
2008/12/24(水) 13:00:10ID:???0066nobodyさん
2008/12/24(水) 13:23:03ID:9cQH1zL00067nobodyさん
2008/12/24(水) 14:12:57ID:???まさかとは思うが開発をPHP5でやって本番はPHP4とかないよな?
あと変数の初期化はコンストラクタで行っているんであって
宣言時にarray値をぶちこんでたりしないよな?
0068nobodyさん
2008/12/24(水) 14:19:03ID:???0069nobodyさん
2008/12/24(水) 14:23:45ID:oUm0Exnm例えばtxtファイルが100MBくらいになるとか。
また既存のシステム(txt)からmysqlにアップグレード可能ですか?
0070nobodyさん
2008/12/24(水) 14:26:48ID:???この場合、41行目じゃなくて、
それより前に(の後のクォートが閉じられていないんだと思うよ。
(もしくは、そのクォートが文字コードの問題でエスケープでこけてるとか。)
だから、41行目の開始クォートで逆にクォートが閉じ、
そこに期待される閉じ括弧がなくて文字列があるぞってエラー
だから、41行目をコメントアウトすると、正しいはずの別の宣言文で
同じロジックでエラーが移動していく。
59氏は恥ずかしがらずにソース貼ってみて。
0071nobodyさん
2008/12/24(水) 14:28:07ID:???とりあえず、やってみたら?
プロセスに十分なメモリが当たってれば大丈夫でしょう。
テキストから、MySQLにインポートとか、普通にできる。
0072nobodyさん
2008/12/24(水) 14:30:38ID:oUm0Exnmありがとうございます
mysqlは『基礎からのMysql』の95ページを読み終えたレベルですが、がんばってやってみます。
0073nobodyさん
2008/12/24(水) 14:34:12ID:???100Mになる前にメモリーのリミットが限界値を越えて
テキストから全データを呼びだして配列にしたりすることが
出来なくなる
もしくはリミットが200Mとかになっているなら開くまでに
かなりの時間がかかりどうさが遅くなりタイムアウトに
ひっかかって落ちる
0074nobodyさん
2008/12/24(水) 14:37:01ID:???メモリーリミットってそこ?
fopenするだけなら、ファイルハンドルを取得するだけだから、
file()しないでfread()なら大丈夫じゃない?
007558
2008/12/24(水) 14:52:51ID:AHayykgcconfig.logがどこにあるかわからん初心者です
./configureだけで通しても、同様にだめでした
0076nobodyさん
2008/12/24(水) 14:54:58ID:???config.logが読めないんなら、おとなしく、yumで入れるとかしたら?
リポジトリを[centosplus]にすればPHP5だよ。
007858
2008/12/24(水) 15:02:54ID:AHayykgc実験鯖でいじくりまわす練習してるので、yumだと意味がないです
参考サイトでも教えてくだされ
0079nobodyさん
2008/12/24(水) 15:03:49ID:???0080nobodyさん
2008/12/24(水) 15:11:53ID:???とりあえず、config.logを探してみたら?
unixコマンドの知識0でソースからコンパイルしても何の意味もないでしょ。
まぁ、普通に./Configureした作業ディレクトリ内にあると思うけど。。
0081nobodyさん
2008/12/24(水) 15:15:10ID:???鯖管にでもなりたいのか?
ならスレ違いだ
phpをやりたいのか?
なら慣れてるwindowsでとっとと環境整えて始めろ
0082nobodyさん
2008/12/24(水) 15:33:03ID:???0083nobodyさん
2008/12/24(水) 15:40:57ID:Gn6DSPVu$arr = array('a', 'b', 'c');
という変数から
$data['a']['b']['c']
にアクセスするような関数を作りたいと思っています。
何か良い方法はありますか?
0085nobodyさん
2008/12/24(水) 15:46:30ID:???0086nobodyさん
2008/12/24(水) 15:51:00ID:???引数をループしてアクセスすれば?
配列の要素数が決まってるなら、0 1 2でもいいと思うけど。
まぁ、遊びとしては
eval('$res = $data[\'' . implode("']['", $arr) . '\'];');
008783
2008/12/24(水) 16:04:06ID:Gn6DSPVu出来るだけ綺麗に仕上げたいのでevalは避けたいのです。
call_user_funcあたりの変数呼び出し版みたいなのがあると一番良いんですが。.
0088nobodyさん
2008/12/24(水) 16:06:45ID:???どれだけ綺麗さを求めてるのか知らんけど
008958
2008/12/24(水) 16:24:42ID:AHayykgc-lresolv -lm -ldl -lnsl -lxml2 -lz -lm 1>&5
/usr/bin/ld: skipping incompatible /usr/lib/libz.so when searching for -lz
/usr/bin/ld: skipping incompatible /usr/lib/libz.a when searching for -lz
/usr/bin/ld: cannot find -lz
collect2: ld returned 1 exit status
configure: failed program was:
#line 20123 "configure"
#include "confdefs.h"
char xmlInitParser();
int main() {
xmlInitParser();
return 0;
}
ここまでです
0090nobodyさん
2008/12/24(水) 16:25:39ID:???while($res = mysql_fetch_array( $sql )){
print "<a href='".$res["url"]."'>".$res["name"]."</a><br>";
$month = date("n月j日", $res["time"]);
print $month."<br>";
}
これでカラム名time(date型)に入ってる(2009-1-1)のようなデータを
1月1日というように表示させたいです。
上の文だと一番上のレコードの日時はきちんと表示されるんですが
以降ずっと最初の日時のみ表示されてしまいます。
なぜですか?
0091nobodyさん
2008/12/24(水) 16:28:05ID:???009290
2008/12/24(水) 16:34:44ID:???【PHPのバージョン】php5.26
【連携ソフトウェア】mysql
【質問内容】
>>90
補足ですが
$month = date("Y:n月j日", $res["time"]);
としたら1970:1月1日 と表示されたので根本的に間違ってました。
もう一度まとめますが
カラム名time(date型)に入ってる(2009-1-1)のようなデータを
1月1日というように表示させるにはどうすればよいでしょうか?
0093nobodyさん
2008/12/24(水) 16:37:32ID:???スレチだな。
しかし、一応ヒントだけldの設定をちゃんとすればOKだと思うけど、
yum install zlib-devel
してみそ。
あとは、祈れ
0094nobodyさん
2008/12/24(水) 16:38:01ID:???0095nobodyさん
2008/12/24(水) 16:38:51ID:9cQH1zL0mbstring.script_encodingが意図しないものになり、たまにエラーになったようです。
'--enable-zend-multibyte' を消して再コンパイルしたら発生しないようになりました。
009690
2008/12/24(水) 16:40:23ID:GAo/2aEbすみません。
全然ちゃんと読んでませんでした。
009758
2008/12/24(水) 16:43:00ID:AHayykgc無事成功しました、ありがとう
0098nobodyさん
2008/12/24(水) 16:44:11ID:???date関数の第二引数はunixタイムスタンプです。日付を渡しても無理。
strtotimeかませばOK。
$month = date("Y:n月j日", strtotime($res["time"]));
010090
2008/12/24(水) 16:47:48ID:GAo/2aEbありがとうございます。
きちんと表示されました。
0101nobodyさん
2008/12/24(水) 17:37:15ID:???0102前スレ745
2008/12/24(水) 18:07:23ID:???やってみました.基本的に $this-> 付けないとダメだと理解しました
C++ のときは何もつけなくてもよかったのでややこしいです
$hoge = "global::hoge";
// 次の関数定義を削除すると A::func() の最後の行で Fatal error: Call to undefined function piyo()
function piyo() {
echo "global::piyo()\n";
}
class A
{
private $hoge = "A::hoge";
private function piyo() {
echo "A::piyo()\n";
}
0103前スレ745
2008/12/24(水) 18:08:45ID:???public function func() {
var_dump($this->hoge);
var_dump($hoge);
// これは予期した通りに動作する
$this->hoge = 'with $this->';
var_dump($this->hoge);
var_dump($hoge);
// この $hoge は関数 func() のスタックに積まれた変数を参照?
$hoge = 'without $this->';
var_dump($this->hoge);
var_dump($hoge);
// A::piyo() を呼ぶ
$this->piyo();
// グローバルな piyo() を呼ぶ
piyo();
}
}
$a = new A();
$a->func();
0104前スレ745
2008/12/24(水) 18:09:27ID:???出力結果:
string(7) "A::hoge"
NULL
string(12) "with $this->"
NULL
string(12) "with $this->"
string(15) "without $this->"
A::piyo()
global::piyo()
0105nobodyさん
2008/12/24(水) 18:24:58ID:???報告乙です。マニュアルも見たらいいよ
ちなみに、PHPはオブジェクト指向言語ではないので、過剰な期待はしないように
http://jp2.php.net/manual/ja/language.oop5.php
javaでもperlでもc++でもないんですよ、PHPは
0106nobodyさん
2008/12/24(水) 19:06:28ID:???0107nobodyさん
2008/12/24(水) 19:56:58ID:???0108nobodyさん
2008/12/25(木) 03:10:56ID:aKyYzPmfどちらを使うべき?
0109nobodyさん
2008/12/25(木) 03:15:10ID:???0110nobodyさん
2008/12/25(木) 03:28:44ID:aKyYzPmf0111nobodyさん
2008/12/25(木) 03:29:37ID:aKyYzPmfって書いてあるけど、もし派生クラスが30もあったら
調べるの大変だよね?
0112nobodyさん
2008/12/25(木) 03:31:18ID:???0113nobodyさん
2008/12/25(木) 03:37:29ID:aKyYzPmf0114nobodyさん
2008/12/25(木) 03:38:06ID:???0115nobodyさん
2008/12/25(木) 03:43:27ID:???それだと継承する意味ないよね。
子クラスから親クラスのメソッド一切使えないなんて。
だから、半分private、半分protectedにするのが最適解?
0116nobodyさん
2008/12/25(木) 03:47:27ID:???お前の巣
クリスマスに女性声優が男と過ごしていないか監視するスレ
http://tsushima.2ch.net/test/read.cgi/news/1230135292/
0120nobodyさん
2008/12/25(木) 04:26:20ID:???子クラスから親クラスのメソッド使用不可になる?
0121nobodyさん
2008/12/25(木) 04:27:15ID:???0122nobodyさん
2008/12/25(木) 04:57:35ID:???一人OOPで何悩んでるだよw
外から使うメソッド=publicで、その他privateだろうが
protectedなんざ何に使うの?
え?継承?www
またまたご冗談を
一人で開発しててポリモるなんて無理やりだろ
てんで必要のないとこでポリモるってかw
そんなことしても後からメンテするときにこっぱ恥ずかしくなるだけだからやめとけって
どうしても使いたいなら俺ライブラリを一般化して公開することだなw
0123nobodyさん
2008/12/25(木) 04:58:56ID:???そいつが合流したらすぐに2人になるだろ
0124nobodyさん
2008/12/25(木) 05:20:43ID:???PHP→低額案件多い→だれもやりたがらない→ダメな人だけ残る→php板に隔離される
0125nobodyさん
2008/12/25(木) 05:38:20ID:???0126nobodyさん
2008/12/25(木) 05:59:21ID:???というような方々は 「くらす ってなに? おぶ
じぇくとってなに?いんすたんすってなに?」
というような方々を多いように見受けられま
すね。
業務としてシステム構築する際に人がいない
からといって、PHPのみの経験者を開発メン
バーに入れると SEさんが痛めみます・・・・orz
そういう方々がセキュリティ的な意識も低いせ
いか、PHPはセキュリティに甘い という風潮が
あるようです
0127nobodyさん
2008/12/25(木) 06:04:37ID:???ってPHP4から仕方なく引き継いだグダグダ仕様らしいな
0128nobodyさん
2008/12/25(木) 06:36:01ID:???0130nobodyさん
2008/12/25(木) 08:21:19ID:???JavaもC++も、クラス名と同名のメソッドはコンストラクタと見なされる。そう珍しい仕様でもない。
「マジックメソッド(笑)」のような予約された名前を使わないなら、「特別な関数」を関数名だけで表す唯一の方法だからな。
>111
派生クラスを読むときに、親クラスを読む手間がかかるだけ。
派生クラスを読むときに兄弟にあたるクラスを読む必要はないし、親クラスを読む時は親だけ読めばいい。
0131nobodyさん
2008/12/25(木) 08:35:14ID:???解説サイトやらブログやら覘いて質問立てるんなら、引用元書いてくれ
ブログ記事を誤解して質問されてもなぁ
あぁ、でも糞サイト晒すならブログ板かw
0132nobodyさん
2008/12/25(木) 08:35:46ID:???このページに
「オブジェクト指向の世界では変数を参照するのに、
「アクセッサ」と言う関数を通して参照すると言う変な習慣が有ります。
これは値の設定の時にチェックしたり、
値の返却の時に編集したりするのが楽になるためと言われていますが、
多分、ステップ換算の案件の時に、より多くふんだくれるからだと思います。」
って書いてあるが本当?
0136nobodyさん
2008/12/25(木) 09:06:44ID:aKyYzPmf$a="hoge1";
for ($i=1;$i<=10;$i++){
print $a;
print "<br>";
$a++;
}
?>
これ実行したら10番目の結果に吹いた
これを事前に予測できる勇者は
そういないと思う
0137nobodyさん
2008/12/25(木) 09:12:17ID:???で始めるといいよ
0139nobodyさん
2008/12/25(木) 09:26:30ID:???class User{
function getName(){
return $this->name;
}
function getMail(){
if(false === isset($this->mail)){
$this->mail = $this->loadMainAddressFromDb(); // 重い処理
}
return $this->mail;
}
function getUrll(){
return $this->homepage->getUrl();
}
}
・遅延初期化を使える(getMail()。必要になるまで変数の中身を取りに行かない、初期化が重い場合に有効)
・内部構造を隠蔽できる(getUrl()。直接変数にアクセスする構造だと、このような内部構造を取れないし、後からこういう風に変更もできない)
・publicでメンバを公開すると、その値に変数を好き勝手に代入できてしまう。getterだけを公開しsetterを作らないと、メンバーの変更を自分とこだけで管理できる
0140nobodyさん
2008/12/25(木) 09:39:57ID:???0141139
2008/12/25(木) 09:45:53ID:???というか読んで吹いた。ダメだこの記事。
カプセル化はなんとか分かってるがオブジェクト指向が分かってないレベルだな。
O/Rマッパというのは「オブジェクト/リレーショナルDBマッパ」のこと。
例えばUserってテーブルにmailとnameってフィールドがあった場合に、
class User extends ORMapper{}
と宣言するだけで、$user->mailとかにアクセスできるようになるのが正しいO/Rマッパ。
(当然、DBへの値の挿入もメンバー変数代入のように実行できる。永続化のタイミングは実装次第だが)
こいつの書いてる「O/Rマッパ(笑)」は、単なるDB抽象化レイヤー。つまりPDO。
PHPだと、CBL_ActiveRecordがコンパクトな実装で比較的読みやすい。
0142nobodyさん
2008/12/25(木) 09:56:11ID:???初期化が必要なのがダサいが。
0144nobodyさん
2008/12/25(木) 10:10:09ID:mYLTQOpT【PHPのバージョン】PHP 5.2.6
【連携ソフトウェア】mysql
【質問内容】PHPでExcel-XMLを操作できるライブラリ
PHP で Excelファイルを操作、編集できるライブラリはないでしょうか?
JavaならApache POIに相当するようなものです。
Class: Excel XML Parser (excel, xmlparser, xml_parser.php, excel reader) - PHP Classes
http://www.phpclasses.org/browse/package/3187.html
検索して見つけたこれを試してみましたが、Excelのセルのを一つずつ書き換え
ることができるだけでした。
0145nobodyさん
2008/12/25(木) 10:20:24ID:???0146nobodyさん
2008/12/25(木) 10:25:04ID:RfhezXXN日本語対応は可能でしょうか?
注意点などありますか?
0147nobodyさん
2008/12/25(木) 10:30:28ID:sOMAc6ie$test['aaa']の方が速いのは分かるんですが、
$test['aaa']と$test[0]だとどっちが速いですか?
コード上見て分かりやすいって理由だけで連想配列にするなら、
ただの配列にしといた方が良かったりしますか?
0149nobodyさん
2008/12/25(木) 10:54:42ID:???天然?
> $test['aaa']と$test[0]だとどっちが速いですか?
forループして、CLIで実行すればすぐわかると思うよ。
やってみてレポートしたら?
> コード上見て分かりやすいって理由だけで連想配列にするなら、
> ただの配列にしといた方が良かったりしますか?
良いかどうかはどういう観点かによる。
どういう観点での良しあしが知りたいの?
0150nobodyさん
2008/12/25(木) 11:22:44ID:sOMAc6ie試しに3万個の要素入れて計ってみました
連想配列にしない方が若干速かったです。
質問するようなことじゃなかったですね。すんません。
経緯をいうと、
キーを2種類どちらかのフラグとして持ちたかったので、
以下のように文字列としてもつか数字としてもつか悩んでたんです。
$test[]['default'] = 'hoge';
$test[]['advance'] = 'wwww';
$test[][0] = 'hoge';
$test[][1] = 'wwww';
コード上は文字列にしといた方が何のフラグがすぐ分かるので良いかなぁと、
でも速度に差があるなら数字の方が良いのかなぁと。
若干速いので数字で持つことにします。意味はコメントにいくらでも書けばいいので。
0151nobodyさん
2008/12/25(木) 11:42:13ID:???計測乙。
3万個も使うのか・・・そこまで速度が必要なケースなんだ・・
設計は人それぞれだからいいんだけどね。
0152nobodyさん
2008/12/25(木) 11:47:31ID:???015383
2008/12/25(木) 14:18:17ID:2wMGCLSI変数を取得するのはforeachで実現できました。有り難う御座いました。
しかし変数をsetする方法が思いつきません。
クラス内の変数にsetする例を考えています。
$arr = array('a', 'b', 'c');
$data = 'abc';
$cls->setVar($arr, $data);
とするとsetVar()内では
function setVar($arr, $data)
{
// $arrを下記の通りに展開して$data代入
// つまり以下のようなことがしたいです
$this->data['a']['b']['c'] = $data
}
何か良い案がありましたらお願いします。
0155nobodyさん
2008/12/25(木) 14:26:01ID:???何がやりたいんだか知らんが、構造的に破綻すると思うぞ。それ
そんなにぐだぐだやるんだったら、素直にArrayObjectでも使った方がいいぞ。
015683
2008/12/25(木) 14:32:02ID:2wMGCLSI具体例お願いします。
ちょっとお手上げです。
>>155
QuickTimeのAtomにObject的にアクセスするって云うことをやっています。
ファイル構造ググって頂ければ何となく分かるかと思います。
0157nobodyさん
2008/12/25(木) 15:07:42ID:???class test {
public $data = array();
function setVar($arr, $val)
{
do{
$val = array(array_pop($arr) => $val);
}while($arr);
$this->data = array_merge_recursive($this->data, $val);
}
}
0158nobodyさん
2008/12/25(木) 15:12:57ID:???ttp://okayama.cool.ne.jp/dvd2cd/atom/atomformat.html
俺なら、ArrayObjectでメソッドチェーンするけど、
ま、自由だから好きにやったらええわ。
015983
2008/12/25(木) 15:30:11ID:2wMGCLSI有り難う御座います。正確に動作しています。
こういう方法は思いつきもしませんでした。
>>158
ArrayObjectを使用したことがないのでちょっとあれなんですが、
上記のコードよりも簡単に>>153を実装できるのでしょうか?
宜しければサンプルコードを教えて下さい。
0160nobodyさん
2008/12/25(木) 15:41:03ID:???>>153みたいな実装はしないってことなんだけどね。
a,b,cに意味を持たせる必要があるわけでしょ。
それだったら、
$quickTime
->getBlock(2)
->getMoov("main")
->getTrack("hoge");
みたいに、それぞれの階層に合わせたオブジェクトを作成して、
メソッドで順次取得するっていう話。
んで、ArrayObjectを使えばショートカット的に配列で処理できる。
$quickTime[1]["main"]["hoge"]で、参照を取得できるから、
値のセットもゲットも普通に実装出来るしね。
まぁ、offsetSetの時に一工夫は必要だけど。
ただ、簡単に実装というのは人によって意味が違うから何とも言えん。
わかりやすいかどうかは主観の問題だからね。
0161nobodyさん
2008/12/25(木) 15:44:18ID:???016283
2008/12/25(木) 16:10:25ID:2wMGCLSI現状でパース後の配列は
$quickTime[1]["main"]["hoge"] = $data;
のようになっています。
$arr = array(1, 'main', 'hoge');
から
$quickTime[1]["main"]["hoge"]
にどうsetやgetが簡単にできるかっていうので悩んでいます。
わかりやすいというよりかは直感的な操作が目的です。
確かにそのように関数作るのも良いのですが、ツリー型で出来れば記録したいところです。
ただAtomってのはややこしいんですが、同一断層に同じ名前のAtomが出てくることもあるので、
そこら辺の条件分岐をやってるとどうしても複雑になってきます。
XMLに似てる感じです。
>>161
結局内部ではarrayとして扱われるのでそれをどう処理するかがミソです。
0163nobodyさん
2008/12/25(木) 17:28:45ID:???foreach + 参照渡しを使えばいいよ
$tree = array('a' => array('b' => array('c' => 'C')));
$indexes = array('a', 'b', 'c');
$node =& $tree;
foreach ($indexes as $index) {
$node =& $node[$index];
}
echo 'node: ', var_export($node, true), PHP_EOL;
echo 'tree before: ', var_export($tree, true), PHP_EOL;
$node = array('new' => 'value');
echo 'tree after: ', var_export($tree, true), PHP_EOL;
注意点は $value =& $array[$key] が実行された際にキー $key が存在しない場合
無言で配列に要素が作られてしまう事
これはPHPのアンドキュメントな動作なので
嫌なら array_key_exists() でチェックしてね
0164nobodyさん
2008/12/25(木) 19:23:56ID:???$indexes = array_keys($tree);
でいいな
0166nobodyさん
2008/12/25(木) 19:49:40ID:???それは質問の答えになってないんじゃない?
新しいノードを追加じゃなくて、cにarrayが追加になってるよね。
c=>'C'の'C'を書き変えたいわけでしょ
0167nobodyさん
2008/12/25(木) 19:52:41ID:???foreachで回すならarray_reverseしてもいいけど。
ノードを扱うならappendなのかsetなのかgetなのかが明白な
IteratorってのがFAだとは思うが。
0169nobodyさん
2008/12/25(木) 20:27:42ID:???FlexからArray型の配列やByteArray型の配列をPHPに渡したいんですが、
PHP側ではObjectとして認識されます。これは、どうやったら
中身を取り出す事ができるんでしょうか?
0170nobodyさん
2008/12/25(木) 20:36:02ID:???もっとも単純なのは、get_object_vars かな。
取得したObjectを調べればいいと考えれば、
ReflectionObject::export($obj);
で、プロパティやメソッドをチェックしてそれを使う。
017183@規制
2008/12/25(木) 20:40:17ID:gzkDkyEFgetはforeachぶん回しした後でissetでキーを確認すれば良いんで簡単なんですが
setは書き換えが何度もあるので>>157のを元にちょっと面倒ですが書き換えだけの関数を作りました。
ただ>>163のような参照っていう手もありますね。
>>168
Array/ArrayObjectの違いってなんなんでしょうか?
JavaのString/StringBufferみたいに書き換えメインなら後者使えって感じですか?
0172nobodyさん
2008/12/25(木) 21:06:26ID:???168?? ま、いいけど。
だいたい、そんな感じだけど、書き換えメインだからってわけじゃない。
あんまり気にしなくていいよ。質問スレなのに語ってしまってスマソ。
0173nobodyさん
2008/12/25(木) 21:30:25ID:???>>171
Javaで言うプリミティブ型と参照型の違い、
bool 型と Boolean クラスの違いと考えて欲しい
0174nobodyさん
2008/12/25(木) 22:44:06ID:???> Javaで言うプリミティブ型と参照型の違い
それは、そうなんだけどね。
「だいたい、そんな感じ」っていう程度の答えで収めちゃいかんかね・・・
0175nobodyさん
2008/12/26(金) 09:10:34ID:???0176nobodyさん
2008/12/26(金) 09:11:08ID:???『ちゃんと動いているから、あとは使う人が分かってくれる
だろう』と、考えをストップするところがあった。本当は、動
いたものを説明して分かってもらい、使ってもらうところま
で来てやっと完成なのに
0177nobodyさん
2008/12/26(金) 09:31:34ID:YvHk/8hRfopenをブロックしているのか?
それとも、fgetでの読み取りをブロックしているのか?
0178nobodyさん
2008/12/26(金) 09:35:59ID:???0180nobodyさん
2008/12/26(金) 09:48:29ID:???0181nobodyさん
2008/12/26(金) 09:51:47ID:???0182nobodyさん
2008/12/26(金) 09:53:25ID:YvHk/8hR0183nobodyさん
2008/12/26(金) 09:54:11ID:YvHk/8hRそれとも、fopenは自由で、
そのあとにfgetでファイルの内容を読み取ろうとしたときに
ブロックするのか?
0185nobodyさん
2008/12/26(金) 10:03:30ID:YvHk/8hR(fopen()へ引数"w"または"w+"を指定して)書き込
みモードでオープンすることにより丸めるファイルに
アクセス保護する 特別なロックファイルを使用する
必要があるかもしれません。
↑この日本語意味わかんねーんだけど?
0186nobodyさん
2008/12/26(金) 10:03:31ID:???せめて、flockしたがfopenではじかれないけどなぜ?ぐらいにしろよ
それでもダメダメだが・・
"ファイルロックとは"って、汎用的な質問ありえんw
荒しだぞそれ。
0188nobodyさん
2008/12/26(金) 10:04:38ID:YvHk/8hRキモヲタはちゃんと日本語しゃべれよ
0190nobodyさん
2008/12/26(金) 10:08:10ID:YvHk/8hRそう、そういう明快で簡潔な回答がほしかった
ありがとう、ありがとう
次からもよろしくおねがい
0191nobodyさん
2008/12/26(金) 10:09:08ID:YvHk/8hR共有ロックってなんの意味があるの?
0194nobodyさん
2008/12/26(金) 10:10:54ID:???0195nobodyさん
2008/12/26(金) 10:13:00ID:???0196nobodyさん
2008/12/26(金) 11:24:10ID:YvHk/8hRこのページおもろい
0197nobodyさん
2008/12/26(金) 11:30:57ID:???は多数存在します。本来カウンタで同じ数字が2つ
出てきたり、数字が出てこなかったりしたらとんでも
ないことです。「OSとロックの仕様の限界でしょうが
ないんですよ」という名言を聞いたことがありますが
、そんな人に会員番号の発行プログラムとか、コン
サートチケットや座席番号発行とかのアクセスが集
中する業務プログラムを委託しちゃったら怖すぎま
す。
0198nobodyさん
2008/12/26(金) 11:52:45ID:???分が処理をしている間はずーっとファイルは
開きっぱなしで自分以外の誰にも触らせな
い」のが、データを守るためには最も安全な
のです。
「データファイルが大きくなるほど、データが
飛ぶ可能性が飛躍的に高まります」とか「こ
まめにファイルを閉じることでデータが飛ぶ
危険を最小限にしています」とか言っている
人のCGIは信用しないようにしましょう。2回
もファイルを開いたり閉じたりすると、その間
に何が起こってるか分からない、怖い! …
そういう感覚が自然に沸くようになるとOKで
す。一旦理解すれば、簡単なことですよね?
0199nobodyさん
2008/12/26(金) 11:55:17ID:???0200nobodyさん
2008/12/26(金) 12:15:28ID:???紹介時にはID出すのに
コピペするときだけID隠すとか細かい芸はしなくてよろしい
さっさとトリップつけてくれ
俺の視界から消し去ってやるから
0201nobodyさん
2008/12/26(金) 12:24:09ID:???できるプログラマーって何を聞いても親切に教えてくれるよな。
できないプログラマーってひたすら人をバカにしたがるよな。
なんなんだろうなこの違い。やっぱり謙虚さが大事なのかな。
0202nobodyさん
2008/12/26(金) 12:41:22ID:???「この娘、ブスでしょ?」
0203nobodyさん
2008/12/26(金) 12:42:08ID:???それがわからないなら死ねばいい
0204nobodyさん
2008/12/26(金) 12:43:20ID:???http://pc11.2ch.net/test/read.cgi/php/1158647441/
いつもの質問の人はこっちに移動してくれい
0205nobodyさん
2008/12/26(金) 12:44:14ID:???ずいぶん、浮世離れしたページだと思ったら、20世紀のサイトじゃないか。
掲示板がスパム満載になってて、マルウエア放置w
それで基本的なことを、勘違い付きでエラそうなこと書いてんなよなww
0206nobodyさん
2008/12/26(金) 12:46:03ID:YvHk/8hR2.読み込む
3.一時データファイルに書き込む
4.一時データファイルを正規ファイル名にリネームする
5.ロック解除する
これってしないとダメなの?
0208nobodyさん
2008/12/26(金) 12:55:00ID:???c、 `っ( ヽ
( v)c、 `っ
V''V ( v) / ̄`⊃
V''V | ⊃
( v) ハ,,ハ
V''V ( ゚ω゚ )
⊂ ⊃
> )
(/(/
ハ ,,ハ
( ゚ω゚ ) お断りします
/ \
((⊂ ) ノ\.つ))
(_⌒ヽ
ヽ ヘ }
ε≡Ξ ノノ `J
0209nobodyさん
2008/12/26(金) 13:01:50ID:???>>1は守ってください
◆質問用テンプレ
【OS名】vine linux
【PHPのバージョン】php5.26
【連携ソフトウェア】mysql
【質問内容】
◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)
◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
0211nobodyさん
2008/12/26(金) 13:07:12ID:???一切シカトでよろしく
たまにID伏せるが特徴あるので分かるだろう
0212nobodyさん
2008/12/26(金) 13:07:46ID:Ag3DX8xC【OS名】centos5 linux
【PHPのバージョン】php5.26
【質問内容】
PHPをテンプレートエンジンとして使用するとき
<?php if($foo): ?>
<div>fooだよ</div>
<?php endif ?>
こんな風にかけるじゃないですか?
多分{}を使うブロック構文はこの書き方がいけそうな気がするんですが
switchもいけるのでしょうか?いまいち書き方がわからない。
たしか公式マニュアルでこの書き方の解説が書いてあるところを見た気がするんですが
探しても見つかりません。URL知っていたら教えてください。
お願いいたします。
0213nobodyさん
2008/12/26(金) 13:09:10ID:???移動しないというなら話は早い
一切シカトでよろしく
たまにID伏せるが特徴あるので分かるだろう
0214212
2008/12/26(金) 13:11:36ID:Ag3DX8xCすいません。いきなり見つけました。
switchもいけるっぽいですね
試してみます。
0215nobodyさん
2008/12/26(金) 13:25:18ID:YvHk/8hRとよく書いてあるが、もしかして、カプセル化しないと
すべてのサブルーチンは自動的に全部
グローバル化してしまうの?
0216nobodyさん
2008/12/26(金) 13:31:40ID:???0217212
2008/12/26(金) 13:33:35ID:Ag3DX8xC<?php case 'a': ?>
<div>aだよ</div>
<?php break; ?>
<?php endswitch ?>
だめみたいですね
下は動きました。
<?php
switch($foo):
case 'a':
echo 'aだよ';
break;
endswitch;
?>
上の方が書けたら便利なのになあ。書き方がまずいのか、それとも不可能なのでしょうか?
>>215
カプセル化ってもっと抽象的な意味じゃないのかな?
例えば部下にレポートを書くように命令するんだけど、
その部下がどうやって調べたとか、レポートを何のソフトで入力したとか、そういう詳しいやり方は一切関知しないけど、
欲しいレポートだけは確実に手に入る
こんな感じだと思ってるけど。
0218nobodyさん
2008/12/26(金) 13:38:05ID:???0219nobodyさん
2008/12/26(金) 13:42:02ID:???0220nobodyさん
2008/12/26(金) 13:44:39ID:???0221nobodyさん
2008/12/26(金) 13:47:27ID:???htmlモードで<div>aだよ</div>
ここの部分は出力されてるわけで
phpモードでの条件文に関係なくここは必ず表示されてしまう
条件文によって表示させたいのなら
phpモード内でやらないとだめだろう
0225nobodyさん
2008/12/26(金) 14:01:11ID:???質問者じゃないんなら、余計な御世話だろ
でなけりゃ、自作自演
>>221
[だめみたいですね]じゃなくて、
エラーがでるのか、
期待した動作と違うなら、期待した動作はなんなのか、
ちゃんと、>>1をよく読んで質問してください。
そうすれば、答えが貰える。ちうか自然に答えに辿り着く。
0227nobodyさん
2008/12/26(金) 14:04:07ID:???<?php switch() {
0228nobodyさん
2008/12/26(金) 14:04:47ID:???まぁいいや
しかしPHPは気持ち悪い言語だな
0230nobodyさん
2008/12/26(金) 14:09:49ID:???0231nobodyさん
2008/12/26(金) 14:10:08ID:???0233nobodyさん
2008/12/26(金) 14:18:30ID:???0234nobodyさん
2008/12/26(金) 14:29:35ID:Mk7Gnz+aテキストファイルを指定されたフォーマットに基づき、
行毎に取り出したいプログラムを作ろうとしています。
(任意のアクセスログの解析プログラムです)
フォーマット自体の Syntax はまだ未定なんですが、
今後取り出したい項目が増えることを想定しています。
例えば、以下のようなフォーマットだった場合。
$format = '%{ip} %{host}';
テキストファイル(アクセスログファイル)の各行とマッチングをし、
「127.0.0.1 example.com」という行があれば、
$data[0]['ip'] = '127.0.0.1'
$data[0]['host'] = 'example.com'
という形でデータを取り出したいです。
こういった場合、どういったロジックで書けば良いのでしょうか。。。
というか、こんなことは結構良くありそうなので、
PEAR でライブラリを探してみましたがそれらしきものはありませんでした。
ライブラリがあれば理想ですが、ご存じでしたら教えて下さい。
よろしくおねがいします。
0235234
2008/12/26(金) 14:33:44ID:Mk7Gnz+a指定フォーマットが可変なのが今回の目標です。
上述例であれば、半角スペースで explode() すればよいのはもちろん分かるんですが、
例えば、
$format = '%{ip}<>%{host}' となったり、 (KENT式)
$format = '%{ip} "%{host}"' になるかもしれない、ということです。
動的に正規表現を無理矢理作るようなイメージなのでしょうか…。
同じイメージとしては、
AWStats でのログのフォーマットを指定出来るところ、あれのイメージです。
よろしくおねがいします。。。
0237212
2008/12/26(金) 14:48:00ID:Ag3DX8xCすいません。出たエラーはこんな感じです。
Parse error: syntax error, unexpected T_INLINE_HTML, expecting T_ENDSWITCH or T_CASE or T_DEFAULT
下のようにしたら実現できました。
<?php switch($foo):
case 'a':
?>
<div>a</div>
<?php break; ?>
<?php case 'b': ?>
<div>b</div>
<?php break; ?>
<?php endswitch ?>
気持ち悪いですね。
最初のcase句を別の<?php?>に入れるとエラーが出ます。
う〜ん・・・気持ち悪い。使っていいものか悩みますね。バグでした〜とかいって修正されそうな気も。
0238nobodyさん
2008/12/26(金) 14:56:52ID:???日本語としては「じっぷん」が正しいが、レッドブックの「とおふん」も間違いではない
ただ朝鮮人や関西人が良く使う「じゅっぷん」は明らかに間違い
これを使っていると日本人である事を疑われるので気を付けるように
0240nobodyさん
2008/12/26(金) 15:11:02ID:???俺のデバッグ環境だと普通にできるが・・・
<?php $a = 3; ?>
<?php switch($a): ?>
<?php case 1: ?>
1
<?php break; ?>
<?php case 2: ?>
2
<?php break; ?>
<?php default: ?>
default
<?php endswitch; ?>
0241nobodyさん
2008/12/26(金) 15:16:56ID:???explodeは、よくてpreg_matchも理解してるんだよね。
あとは状況応じてパターンを変えればいいんでない?
0246nobodyさん
2008/12/26(金) 15:25:20ID:???いつも
<div><?php if () { echo ""; } else { echo ""; } ?></div>
みたいな感じでやってたわ
0247nobodyさん
2008/12/26(金) 15:25:44ID:Mk7Gnz+aはい、理解しています。
今回の例であれば、%{hoge}の部分を(.+)にして正規表現を作り、
preg_matchの3番目の引数$matchesを使って、
%{hoge}が1番目なら$data[0]['hoge'] = $matches[1]すれば良いですよね。。。
ただ、もっとこう、sscanf 的な感じで簡単な仕組みで出来たりしないかなぁ、とか
一般的にはどうやっているんだろう的な意味合いも込めて質問させていただきました。
どなたかスマートな方法や、ライブラリがあればご教示ください。
0251nobodyさん
2008/12/26(金) 15:41:03ID:???sscanf使えば?
>>246
smartyは独自タグをああいう形に変更してくれるが
あれは記述方法の1つであってテンプレートではない
0252nobodyさん
2008/12/26(金) 15:41:21ID:i1+5wuDM0254234
2008/12/26(金) 15:43:41ID:???あ、すみません、すこし私の文章の字掛かりが悪かったですね。
取り出す単位が行毎というだけで、行毎にフォーマットが違う訳ではないです。
というか、そもそも行とかそういう説明がいらないですね、ごめんなさい。
あくまで1文字列集団に対して指定のフォーマットで取り出したいだけの質問です。
>>250
スマートって定義が曖昧ですね、申し訳ない。
そんな汎用ライブラリ無いですか、と受け取って下さい。
自分でコードを書きたくないのです。怠惰です。開き直りです。。。
0255252
2008/12/26(金) 15:46:29ID:i1+5wuDMありがとうございます。
ご意見を伺いたいのですが、20件〜30件程度のデータをSQLから引き出して、<select>をループで
生成するというのはやはり、負荷がかかってしまいますか?
(<select>は複数あるとします)。
データが変わるたびに、対応してHTML部分も書き換えるのが面倒なので考えたのですが……。
0256nobodyさん
2008/12/26(金) 15:47:41ID:???>あくまで1文字列集団に対して指定のフォーマットで取り出したいだけの質問です。
だったらsscanfでいいじゃん。
連想配列に入れたいなら自分でsscanf使ってパーサー作る感じで
>>255
全然かからない
0257252
2008/12/26(金) 15:51:16ID:i1+5wuDMありがとうございました。
0258nobodyさん
2008/12/26(金) 16:25:35ID:nmEdMuVH何か方法はありますか?
またphpの標準関数はphp以外の言語で実装されているのでしょうか?
return値が異なる関数が(成功したらintやStringを返し失敗したらbool(false)を返すなど)
いくつかあるので中身がどのように実装されてるのか知りたいです
0259nobodyさん
2008/12/26(金) 16:39:09ID:???マニュアルを見るのが一番早い。
しかし、それ以上を知りたいなら、ソースが公開されているので、それを見た方がいい。
ソースが読めないレベルならドキュメントで事足りる。
0260nobodyさん
2008/12/26(金) 16:51:28ID:???0262nobodyさん
2008/12/26(金) 17:59:54ID:nmEdMuVHソースコードを見てみましたが自分には理解できそうもありませんでした
ちょうどJDKのsrc.zipのようなものを期待していたのですが
思ったよりも複雑なようで・・・
var_dumpやgettypeなどを使って
成否による挙動を見ながら中身の実装方法を想像してみたいと思います
0264nobodyさん
2008/12/26(金) 18:36:26ID:???何の経験があるのか知らんが、Cが読めないで言語実装に興味を持つって不自然すぎる
0265nobodyさん
2008/12/26(金) 18:46:49ID:???if (Condition) {
return int val;
} else {
return false;
}
なんてできないから不思議に思ったんだろ
0266234
2008/12/26(金) 19:38:18ID:???実際はクラス化しているので、実コードは全く違いますが、ざっくり纏めて書いときます。
# 入力項目
$format = '%ip %host';
$line = '127.0.0.1 example.jp';
# 独自フォーマットパターン
$pattern = '/%([a-z]+)/';
# 正規表現を作る
$pattern_array = array();
$num = preg_match_all($pattern, $format, $matches);
if ($num > 0) {
for ($i = 0; $i < $num; $i++) {
$pattern_array[$i] = $matches[1][$i];
}
}
$tmp = preg_quote($format);
$tmp = preg_replace($pattern, '(.*)', $tmp);
$format = '/^' . $tmp . '$/';
# マッチング
$num = preg_match($format, $line, $matches);
$data = array();
if ($num == 1) {
foreach ($pattern_array as $key => $value) {
$data[$value] = $matches[$key + 1];
}
}
# 結果
print_r($data);
0268nobodyさん
2008/12/26(金) 19:43:48ID:???まぁログフォーマット未定ならApacheログと同じような感じにして
そこらへんのツール使う方が早いと思うがな
0271nobodyさん
2008/12/27(土) 16:08:47ID:???「話が伝わっているのかいないのか分からない」
国内最大のネットオークション「ヤフー・オークション(ヤフオク)」を巡り、身に覚えのない出品料約24万円を請求された
兵庫県芦屋市の会社員梅田雄一さん(38)は憤る。 自分の会員IDで何者かが偽ブランド品約200点を出品していると
気付いたのは9月29日。運営会社のヤフーに連絡しようとしたが、同社の電話番号は一般に公開されておらず、
問い合わせはメールに限定していた。
すぐメールで事情を伝えたが、翌日、「改めて連絡する」と返信があった後は、音さたなしに。10月中旬に催促のメールを
送ったが、その返信は月末。具体的な措置はとられないまま今月5日、24万円は引き落とされてしまった。
「電話なら1回で済むのに。時代の最先端をいくIT企業のはずだが、まるで江戸時代の手紙のやり取りだ」と梅田さんは話す。
同様の相談は、NPO法人「消費者支援機構関西」(大阪市)にも255件寄せられ、うち約80件は「返信がない」、約50件は
「伝わっているかどうか不明」との苦情だったが、ヤフーは「電話が殺到すると業務の混乱を来す」として、今後も電話番号を
公開する予定はないとしている。
0272nobodyさん
2008/12/27(土) 16:19:39ID:???うちがそうだから分かる。
0273nobodyさん
2008/12/27(土) 17:04:00ID:VWeaVdBZ前スレの番号が間違ってる
お前仕事でもミス多いだろ
0274nobodyさん
2008/12/27(土) 17:08:00ID:???しつこくてすみません。
いろいろ調べました。
結果、PDOには文字セットの変更は伝わらない、伝える手段がないようです。
(SET NAMES しちゃダメってこと……だと思う)。
おとなしく、mysql_* なり mysqli 系にします。
お騒がせしました。
-------------------------
↑これって、あってるでおじゃるか?
0276nobodyさん
2008/12/27(土) 17:10:14ID:???「MySQLを使うならPDOを使え」
というページがやたら多いが、
レンタルサーバーではmy.cnfを編集できない。
すると
skip-character-set-client-handshake
default-character-set = utf8
を設定できないので、それ以外の方法で
文字コードを設定する必要が生じる。
そしてPDOには文字セットの変更は伝える手段がない
そしたら、PDOは使えないジャン。
だとしたら、PEAR::MDB2を使うしかないのか?
0277nobodyさん
2008/12/27(土) 17:34:20ID:VWeaVdBZMySQLのバージョンが4.0.なのだが、
ひょっとしてこの場合は文字化けのことを
心配しなくてもいいのかな?
0278nobodyさん
2008/12/27(土) 17:45:34ID:???あぁ、すまん、コピペで見落とした。スマソ
前スレは77で、
http://pc11.2ch.net/test/read.cgi/php/1228667259/
0279nobodyさん
2008/12/27(土) 17:48:45ID:VWeaVdBZphpinfo();
してみて、そんで、これからPDO使うんで、
PDOの項目を検索してみたら、
PDO
PDO support enabled
PDO drivers sqlite2, sqlite
ってなってて、myslqの文字が見当たらないんだが、
これってもしかしてmysqlをPDOで使えないってことで
おじゃるか?
0282nobodyさん
2008/12/27(土) 17:56:36ID:VWeaVdBZ自分でインストールするとか、
そういうのは無理でおじゃるか?
0284nobodyさん
2008/12/27(土) 17:59:29ID:???0285nobodyさん
2008/12/27(土) 18:01:05ID:VWeaVdBZ何が必要でおじゃるか?
0287nobodyさん
2008/12/27(土) 19:03:29ID:VWeaVdBZインストールされているかどうかって
何を見ればわかる?
0289nobodyさん
2008/12/27(土) 19:24:59ID:VWeaVdBZわかるでおじゃろう?
0291nobodyさん
2008/12/27(土) 19:29:44ID:???require_once('MDB2.php');
echo '入ってたよ!';
?.>
エラーが出るか、何も表示されなかったら入ってない。ちゃんと動きゃ入ってる。
0292nobodyさん
2008/12/27(土) 19:31:07ID:???0293nobodyさん
2008/12/27(土) 19:41:09ID:VWeaVdBZ何も表示されないでおじゃるな。
じゃあ、入ってないってことでおじゃるか?
0294nobodyさん
2008/12/27(土) 19:42:33ID:VWeaVdBZ最後の行にいらんピリオドがついておじゃるぞ
0295nobodyさん
2008/12/27(土) 19:44:32ID:VWeaVdBZ0296nobodyさん
2008/12/27(土) 19:45:50ID:VWeaVdBZ自分でインストールできるものでおじゃるか?
0297nobodyさん
2008/12/27(土) 20:26:01ID:VWeaVdBZ調べるにはどうしたらいいでおじゃるか?
0299nobodyさん
2008/12/27(土) 21:12:44ID:HuO0vYHmpear install MDB2
これできるの?
できないでしょう?レンサバだと。
だからだめじゃない?
0301nobodyさん
2008/12/27(土) 21:39:28ID:???0302nobodyさん
2008/12/27(土) 21:43:18ID:???0303nobodyさん
2008/12/27(土) 22:04:51ID:HuO0vYHm0304nobodyさん
2008/12/27(土) 22:06:09ID:HuO0vYHm0306nobodyさん
2008/12/27(土) 22:12:09ID:HuO0vYHmもっと勉強してきます。
0307nobodyさん
2008/12/27(土) 22:12:48ID:???0308nobodyさん
2008/12/27(土) 22:30:14ID:HuO0vYHmそう見えたならごめん
0310nobodyさん
2008/12/28(日) 07:10:08ID:EDfMX0OA(1)PHPのネイティブ関数
(2)PEAR::DB
(3)PEAR::DBM
(4)PEAR::DBM2
(5)PECL::PDO
と、5種類もあるんだけど、今回はこのうち
(5)PECL::PDO
を使おうと思ったのでおじゃる。
ところが、わらわが借りているレンタルサーバーには
PDOそのものは入っているのでおじゃるが、
ドライバがSQLite用のとかしか入っていないのでおじゃる。
MySQL用のドライバがないのでおじゃる。
この状況で、自分でPDOのMySQL用のドライバを入れたり
できるのでおじゃるか?
それとも、管理人に頼まないとだめなのでおじゃるか?
0311nobodyさん
2008/12/28(日) 08:14:03ID:EDfMX0OAこの$dbを「データーベースポインタ」と呼ぶでおじゃるか?
0312nobodyさん
2008/12/28(日) 08:25:28ID:???0313nobodyさん
2008/12/28(日) 08:49:58ID:???でメールで。
急ぎの場合は、メール送信後に電話で確認。また、長文になる場
合は添付ファイルにするなどして
情報をまとめるよう心がけること。」
もう3年も前から飽きる程言ってるのに、まだこの基本ルールが守れ
ない奴が多すぎて萎える。
今日も、某から4通のメールで新仕様を送ってきた。自分の意見と仕
様を織り交ぜた長文メール。
改行位置もムチャクチャで読むために一旦メールからコピペして、エ
ディタに貼り付けて、
読みながら内容体裁しないといけない始末。何度言ってもこうやって
くるうえ、
修正依頼すると普通に1日とかかかるので、月曜までに仕上げない
といけない関数だから自分で解読した。
2時間半程かかって、ようやく仕様解読。なんだ、まとめればメール1
通で済む内容じゃないか。設計開始。
そこに某から「メールの内容なんですけど、修正箇所がありまして・・
いいですかあ」とか言って「いい」とも答えてないのに
何行目のどこそこはやっぱりこうで、そこの数字は実はこうで・・と、こ
ちらのメールでは改行全然ないのに送信側は一定行数で自動改行
になっているらしく
どこを示しているのかさっぱりわからなかったので、再送信しろと言っ
て電話を切った。
0314nobodyさん
2008/12/28(日) 08:50:31ID:???前のメールの訂正ではなく、新たに書き起こしているからまた
解読が必要・・・
ため息つきながら解読開始したら、いきなり最初の仕様が違う。
引数仕様が全然違ううえ、存在しない構造体の名前とか見える。
意味わからん、どうなってるんだ!と、こっちの解読した仕様をメ
ールで送り
これを元に直せ!と言って、電話したら
「今日は早退しました」
もうこっちで現状の仕様を元に仕様作ってやるから、帰りにダン
プにでも撥ねられてくれ・・
0317nobodyさん
2008/12/28(日) 10:07:10ID:???0318311
2008/12/28(日) 10:12:01ID:???言われたとおりにしてやったんだから今度こそ答えろよ、kuso
$db = mysql_connect ( "hostname", "username", "password" );
この$dbを「データーベースポインタ」と呼ぶで質問?
0320nobodyさん
2008/12/28(日) 10:16:41ID:???0322nobodyさん
2008/12/28(日) 10:28:13ID:???0325319
2008/12/28(日) 11:22:39ID:???管理人に頼まないとだめなのでおじゃるか?
0326nobodyさん
2008/12/28(日) 11:34:03ID:???0327325
2008/12/28(日) 11:46:52ID:???0328nobodyさん
2008/12/28(日) 11:56:36ID:???0329nobodyさん
2008/12/28(日) 13:35:15ID:???phpの時代は終わったよ
請負の適正化の問題で大手がいっせいにphpの採用を手控えた
現在就業している奴は本当にラッキー
新規でphpのスキルで案件に入るなんて不可能
現在修行している奴も契約の更新時で契約社員への転向、単価ダウンを提示されるケースが多い
まあたまに例外はある
どんな世の中でも例外はあるだろ
その例外を皆が目指してもナンセンス
100人に1人になろうなんてクレージー
phpなんてこれまでは必要悪な存在だったんだよ
たまたま技術者不足で仕方なく採用されていただけ
SIサイドでもphpグラマーのスキル不足、社会性の欠如を苦々しく思っていた人も多くいる
この際徹底的にphpグラマーを排除できると喜んでいるよ
phpグラマーに告ぐ
もうphpのようなポジションにしがみ付くのは諦めろ
Javaが無理ならrubyに転向しろ
いくら個人で新規の契約を待っていても99%無理だぞ
それから経済情勢の悪化で単価は間違いなく下がっている
1年前の感覚で営業していると誰にも相手にされない
3割引きは覚悟しな
0330nobodyさん
2008/12/28(日) 13:45:03ID:???初心者同士が教えあうスレだぞ
0332144
2008/12/28(日) 14:01:21ID:l23GN/5cC++でいう strstream みたいな、文字列変数としてデータが格納されるファイ
ルポインタはありませんか?
fputcsv() で、CSVファイルではなく文字列を作りたいので。
0333329
2008/12/28(日) 14:04:09ID:???てめぇらも気をつけな
0334332
2008/12/28(日) 14:04:35ID:l23GN/5c0335nobodyさん
2008/12/28(日) 14:10:32ID:???0337332
2008/12/28(日) 14:33:52ID:l23GN/5c私は、ファイルポインタのようにしてデータを出力すると、ファイルではなく、
文字列変数になる、そういうオブジェクトを探しているのです。
0338nobodyさん
2008/12/28(日) 14:38:25ID:???0339nobodyさん
2008/12/28(日) 14:46:58ID:???ここに住み着いた荒氏がいなくなるまでは、
まともな答えを期待する方が無理というもの
>>335,336,338は意味がわかってない
0340nobodyさん
2008/12/28(日) 14:54:04ID:???頭悪いな
0341nobodyさん
2008/12/28(日) 14:54:57ID:???http://jp.php.net/manual/ja/wrappers.php.php
これのphp://memoryあたりでなんとか?
0344332
2008/12/28(日) 14:57:21ID:???自分で探す努力もしないで、教えて厨になっていて申し訳ありませんでした。
もう二度とここには来ません。
0345nobodyさん
2008/12/28(日) 14:58:38ID:???ファイルハンドルに書きこむタイプの関数で、
実際にはファイルではなくて、変数やオブジェクトを返してくれるような
疑似ファイルハンドルやストリームコンテキストを返す関数はないか?
ってことだろ。
0349nobodyさん
2008/12/28(日) 15:02:28ID:???C++視点での質問したって答えられるわけがないだろ
スレ違いだがC++のスレで聞いたほうが答え返ってくる確率は高い
ていうか>>339はそこまでいったんだから答えてやれよ
0350nobodyさん
2008/12/28(日) 15:03:03ID:???0352nobodyさん
2008/12/28(日) 15:06:45ID:???どこをどう読めばファイルに書けなんて解釈になるんだ?
fputcsvが文字列を作っていないような頓珍漢な質問をしてるから過程を説明してやってんだよ。
お前が読めてないんだろ低脳。
0353nobodyさん
2008/12/28(日) 15:09:43ID:???> [ファイルポインタのようにしてデータを出力すると、ファイルではなく、
> 文字列変数になる]
これの意味がわからないなら質問に答えてるなよ。
>>332の質問は,fputcsvで対象にしているファイルハンドルにストリームを
使えるか?って意味だろ。
で、それに対して>>341が正解だしてるだろ。
fopenの引数にphp://memoryなりphp://tempを使う
0355nobodyさん
2008/12/28(日) 15:14:16ID:???0363332
2008/12/28(日) 15:17:55ID:l23GN/5c>>345
> ファイルハンドルに書きこむタイプの関数で、
> 実際にはファイルではなくて、変数やオブジェクトを返してくれるような
> 疑似ファイルハンドルやストリームコンテキストを返す関数はないか?
> ってことだろ。
おっしゃるとおりです。明快なご説明に感謝します。
他のレスはまだ内容に追いつけてません。今から読みます。
0364nobodyさん
2008/12/28(日) 15:18:05ID:???ガキかよwww
0365nobodyさん
2008/12/28(日) 15:20:17ID:???fopenしてfputcsvしてfreadするぐらいのことって説明しないとわからないんだ。
かわいそうに。
そういう下らない質問をするためのスレなんだからさ、
>>1みてさっさとIDさらして質問しなおしたら?丁寧に説明してくれるひともいるさ
0366nobodyさん
2008/12/28(日) 15:20:18ID:???カス質問者のくせに笑ってんじゃねぇよ
◆質問する時の注意
・ 質問者として、態度をわきまえること。
これ満たしてないのでルール違反
0368nobodyさん
2008/12/28(日) 15:21:14ID:???>ほうほう、んでそれのどこが文字列変数になるの?
↓
>fopenしてfputcsvしてfreadするぐらいのこと
お前は何を言ってるんだ。頭大丈夫か。
0370nobodyさん
2008/12/28(日) 15:22:19ID:???0375nobodyさん
2008/12/28(日) 15:25:06ID:???0376nobodyさん
2008/12/28(日) 15:28:47ID:???日本語組み立て能力が無さ杉。コミュ力無さ杉。思考力無さ杉。
fopenしてとか関数名+動詞でしか説明できないのは抽象力がない証拠。
0377nobodyさん
2008/12/28(日) 15:32:11ID:???fputcsv($f, array("1", "2"));
rewind($f);
$test = fread($f, 100);
fclose($f);
0378nobodyさん
2008/12/28(日) 15:43:44ID:???これじゃだめなん?
http://www.php.net/manual/ja/function.implode.php
なんか外してる気がしないでもないけど
0380332
2008/12/28(日) 15:49:09ID:???下らねぇ質問してすみませんでした。皆さんありがとうございました。
もう少し大人になりましょうね。
0382nobodyさん
2008/12/28(日) 15:51:46ID:???0385nobodyさん
2008/12/28(日) 15:59:23ID:???二度とこないでね=>>>332
>>384
銅賞は語尾が「おじゃる」の某氏にささげようよ
0386nobodyさん
2008/12/28(日) 16:09:38ID:???0387nobodyさん
2008/12/28(日) 16:32:49ID:???0388332
2008/12/28(日) 16:36:03ID:l23GN/5c信じていただけないでしょうが、私はIDを出してしか書き込んでいません。
>>342さんも書いてますが、質問の仕方が分かりにくすぎました。荒れさせてしまっ
て申し訳ありません。
>>341さんのphp://memoryは知りませんでした。>>377さんにまとめていただき、
ここでの議論がよくわかりました。
CSV Helper (PHP 5) (Articles) | The Bakery, Everything CakePHP
http://bakery.cakephp.org/articles/view/csv-helper-php5
実はこういうコードを見つけていたのですが、よく仕組みがわからず、このス
レを読んでやっと理解できました。>>377さんとほぼ同じ内容になっています。
では失礼します。お騒がせして申し訳ありません。
0390nobodyさん
2008/12/28(日) 17:41:20ID:???余計な一言から荒れる例
最近偉そうでバカな荒らし質問者がいるからタイミングが悪かったってのもあるけどな
0392332
2008/12/28(日) 18:21:10ID:???>信じていただけないでしょうが、私はIDを出してしか書き込んでいません。
誰も信じないだろうね。自作自演乙です
賞賛に値する暇人ですね
0393nobodyさん
2008/12/28(日) 18:22:55ID:???ストレートに聞けばすぐに答えが出るものを、
Cakeの情報を持っててそれを出さずに、C++なんぞを例に出して抽象的な質問を作る。
>>390
タイミングが悪いときにそんな質問出す空気の読めなさは(ry
0395nobodyさん
2008/12/28(日) 18:25:33ID:EDfMX0OAこれって基本的には、SQL文をゴリゴリ
ソースコード中にSELECT文で書きまくる
ものなのでおじゃるか?
0400332
2008/12/28(日) 18:41:25ID:???簡単だという例が>>392
名前欄を間違えて入力したと思ってる奴はおつむが悪いよぅwww
0401nobodyさん
2008/12/28(日) 18:43:13ID:???0402nobodyさん
2008/12/28(日) 18:44:51ID:???0403nobodyさん
2008/12/28(日) 18:47:04ID:???あほだなお前ら。消し忘れ乙って言うんだよ。
だいたい、名前欄に332って入れたらなんで、
"「ID晒しだけが自分です」というのは簡単"の例になるんだよ。
偽装するのは簡単の例ならわかるけどな。
0404332
2008/12/28(日) 18:49:07ID:???0406332
2008/12/28(日) 18:50:16ID:???0407332
2008/12/28(日) 18:50:55ID:???0409332
2008/12/28(日) 18:52:09ID:???0411332
2008/12/28(日) 18:53:38ID:???0412332
2008/12/28(日) 18:54:43ID:???0413395
2008/12/28(日) 18:55:46ID:???0415333
2008/12/28(日) 18:59:22ID:???0416332
2008/12/28(日) 19:00:58ID:???ここへの書き込みがばれて先ほど失業したのですが、次の就職先はどこがいい
ですか?できれば派遣じゃないところで。
PHPメインでしたが、JavaとPythonも少しかじってます。
よろしくお願いします。
0417nobodyさん
2008/12/28(日) 19:02:19ID:???これって基本的には、SQL文をゴリゴリ
ソースコード中にSELECT文で書きまくる
ものなのでおじゃるか?
0418nobodyさん
2008/12/28(日) 19:03:07ID:???終わっても質問の人はニートみたいだから毎日いるけど
0419nobodyさん
2008/12/28(日) 19:04:52ID:???0421nobodyさん
2008/12/28(日) 19:11:18ID:ye4GPpuG俺は出すぞID。
>>332
年明けでfind jobで探そうぜ。
javaのかじるっていうのはどのくらい?
0423nobodyさん
2008/12/28(日) 19:12:13ID:???0424416=332 ID:l23GN/5c
2008/12/28(日) 19:18:54ID:???ありがとうございます。
Javaは学生時代に4年ほど勉強しました。卒業後はPHPとPythonだけで
今は2年目です。
職場はできれば千葉県内で。
0425nobodyさん
2008/12/28(日) 19:22:35ID:???入社してから必要なものおぼえさせられるだけ
0426nobodyさん
2008/12/28(日) 19:23:49ID:???> PHPメインでしたが、JavaとPythonも少しかじってます。
つじつまぐらい合わせろ
0427nobodyさん
2008/12/28(日) 19:26:33ID:EDfMX0OA空文字にするべきでおじゃるか?
それとも、NULL?
0428416=332 ID:l23GN/5c
2008/12/28(日) 19:28:18ID:???ということは実質PHPとPythonのそれぞれ2年分しか就業には関係ないんですか...
>>426
PHPメインは仕事の話です。「かじってる」としたのは、仕事で使えるレベルか
自信がなかったからです。釣られてくださって感謝します。
0429nobodyさん
2008/12/28(日) 19:29:01ID:ye4GPpuGweb系ってことでしょう?
JAVA4年もやっていたということは
MVCも理解して書いていたってことだよね。
サーバーも自分で立てれるでしょう?
http://ssl.onemarket.co.jp/www/company/recruit.html
東京ならここ勧め。
放置だけど、残業が一切ない。
残業したくない人お勧め。
俺は暇すぎて1日でやめた。
千葉はしらん。
ところで、いくつ?
俺30歳。
0430nobodyさん
2008/12/28(日) 19:30:07ID:???0431nobodyさん
2008/12/28(日) 19:31:40ID:uVW1Zee4【PHPのバージョン】php5
【質問内容】
連想配列でキーを検索して値を出すことって出来ますか?
array_searchの逆で
0433nobodyさん
2008/12/28(日) 19:33:07ID:ye4GPpuG雑談版じゃないけど。
http://ssl.onemarket.co.jp/www/company/recruit.html
ここはほんとお勧め。自社開発だし、放置playに耐えられるなら、
人もいい人だし、食事誘ってくれたし、質問は答えてくれるし、
たぶん1週間はネットサーフィンをしていればいいんじゃないかな?
0436nobodyさん
2008/12/28(日) 19:53:05ID:uVW1Zee4値を出したいのですが…
0437nobodyさん
2008/12/28(日) 19:55:55ID:ye4GPpuG確か。
面接が2回で。賞与がしっかりでる。(ITではめずらしく)
ただ問題は放置playと日報を英語で書くことだな。
なんかしらないが、日報は英語。
やたら英語にこだわる。後社長が日本の人ではなく、
日本語が意味不明。テストがあるが確か英語のテストで
パソコンの知識はTCP/IPやなんかで言語の問題は特に
聞かれなかったような。
0440nobodyさん
2008/12/28(日) 20:08:46ID:uVW1Zee4ありがとう。
0441nobodyさん
2008/12/28(日) 20:11:33ID:???そんな安いプログラマーいるのか
うちの会社だと、バイト君でも月40は払ってるぞ
0443nobodyさん
2008/12/28(日) 20:18:28ID:???0444nobodyさん
2008/12/28(日) 20:35:45ID:ye4GPpuGここはやめとけ。まじ死ぬ。
会話がなく終わった会社。
あんなにしゃべらずに終わった会社はない。
後find jobで常連のエステートサーチな。
もはやこれは....ってレベル。
トイレにも行かせてくれなかった。
後有楽町でwebのつく会社、最近ほら派遣社員にサーバー
のっとられた会社あったじゃん。
あれどこだっけ?
0445nobodyさん
2008/12/28(日) 21:27:55ID:???>>311
公式のドキュメントでそう言ってるのか?なければそれはオレオレ用語
http://www.php.net/manual/ja/function.mysql-connect.php
> 成功した場合に MySQL リンク ID を、失敗した場合に FALSE を返します。
>>427
どう初期化したいかによる
値が存在しない・指定されていない事を明示したい場合は NULL 型の値を、
デフォルト値を入れておきたい場合は適当な型の値を、それぞれ入れればいい
0446nobodyさん
2008/12/28(日) 21:33:50ID:???0447nobodyさん
2008/12/28(日) 23:04:26ID:???テーブルの高さを超えたかどうかを知ることは可能ですか?
また、同様に大きいテーブルのセル内に小テーブルを何段か詰め込む場合も、
小テーブルの高さの合計が、大テーブルの決められた高さを超えたかどうかを
知ることはできますか?
いずれにせよ、テーブルの中身がテーブルの規定の高さを超えた場合、
テーブルの境界にまたがる中身は、ごっそり次のページに回したいわけです。
0449nobodyさん
2008/12/28(日) 23:36:16ID:???不可能でもないが難しい。
PHPの側で、WEBブラウザのレンダリングイメージを取得する方法は原則的にな
い。せいぜいが出力した行数をカウントするぐらい。そもそもブラウザごとに
表示される大きさは違う。ピクセル単位でコントロールするのは諦めた方がい
い。
一応、実現可能な方法を思いつきで示すと、
1.テーブルを記述するHTMLとCSSを非常に厳密にして、対応ブラウザのすべてで
ピクセル単位でも変化しないようにし、描画されるテーブルのサイズがPHP側か
ら計算できるようにする。
2.Ajaxという技術を使って、ブラウザが描画中のテーブルの高さのピクセル数
をリアルタイムでサーバ側に送り、規定のサイズになったらサーバのデータ送
信を終える。
どっちも初心者には敷居は高いと思うよ。
0451nobodyさん
2008/12/28(日) 23:50:05ID:qmHngp5c0452nobodyさん
2008/12/29(月) 00:48:49ID:pJ2vNT6J【PHPのバージョン】php5.2.8
【連携ソフトウェア】apache2.2.11 mysql5.1
【質問内容】
phpはzipからapacheとmysqlはインストーラーからインストールしました。
インストール後、phpinfoにアクセスしてみたんですが、
mysqlの項目がなく、mysql_connectなどmysql関連の関数が一切使えません。
エクステンションのパスはあっています。
どんな原因が考えらますでしょうか?
0453nobodyさん
2008/12/29(月) 00:56:45ID:???0454452
2008/12/29(月) 00:59:14ID:pJ2vNT6Jコメントとは
extension=php_mysql.dll
の先頭にある ; のことでしょうか
これははずしてあります
0455nobodyさん
2008/12/29(月) 00:59:53ID:???0456452
2008/12/29(月) 01:00:37ID:pJ2vNT6J何度も再起動してみました。
0457nobodyさん
2008/12/29(月) 01:03:53ID:???0458nobodyさん
2008/12/29(月) 01:10:22ID:???0459nobodyさん
2008/12/29(月) 01:11:18ID:6L5BHSgG1つの文字列に対して複数のフィルタをかけたいときはどうのように行えばよいですか?
例えば
<?php
$moji = "test script ABC";
if(eregi("script", $moji)){
$test=1;;
}
else{
$test=2;
}
echo $test;
?>
のようなとき$mojiに"script"が入っているので1と出力されますが、scriptの他にも"ABC"も含んでいたら1と出力させたいです
単純に|やorではできなさそうなので、くだらないですがよろしくお願いします。
0460nobodyさん
2008/12/29(月) 01:17:01ID:???0461nobodyさん
2008/12/29(月) 01:32:58ID:6L5BHSgG確認したところできました ありがとうございました
0462nobodyさん
2008/12/29(月) 02:15:59ID:oaToqhvAライブラリを一切認識しない
これはバグですね
0463nobodyさん
2008/12/29(月) 02:18:45ID:bH2y1A5Xありますか?
0465452
2008/12/29(月) 02:29:32ID:???0466nobodyさん
2008/12/29(月) 02:48:22ID:???0467nobodyさん
2008/12/29(月) 03:58:00ID:XvwvhG3U<?php
require_once("XML/RSS.php");
$rss =& new XML_RSS("url");
$rss->parse();
ところが、突然下記のようなエラーが出るようになりました。PHPの設定がおかしくなったのでしょうか?
よろしくお願いします。
Warning: require_once(XML/RSS.php) [function.require-once]: failed to open stream: No such file or directory in /home/sites/lolipop.jp/users/lolipop.jp-life-mo/web/test.php on line xx
0468nobodyさん
2008/12/29(月) 04:04:01ID:???0469nobodyさん
2008/12/29(月) 04:11:56ID:???if(false !== stripos($moji, 'script') && false !== stripos($moji, 'ABC'){
echo '1';
}
strposは正規表現より一桁速い。
というかeregはマルチバイト文字列で発狂する事があるのでなるべく避けとけ。
正規表現はpregを使った方がいい。マルチバイト対応してるし、eregより速い上に高機能。
0471nobodyさん
2008/12/29(月) 14:21:32ID:5UFVSChdしかし、更新するたびカウントは増えてしまいます。
これでは、何人の方が訪問したか分からないんです
1人1回だけ更新回数を増やす方法を知りたいんですが、どなたか教えてください
fpt系が配布しているアクセスカウンターみたいなのを作りたいんです
<?php
$filnam = "acccntf.cgi";
$fp = fopen($filnam,"r");
$totalc = trim(fgets($fp));
fclose($fp);
$totalc = trim($totalc);
$totalc++;
$filnam = "acccntf.cgi";$fp = fopen($filnam,"w");
fputs($fp,"$totalc");
fclose($fp);
?>
0472nobodyさん
2008/12/29(月) 14:26:05ID:???「1人1回」という仕様を明確にすればロジックになるんじゃない?
・なにを持って「1人」にするの?
・1回っていうのは一生?
この辺りからつめていけば…
0474nobodyさん
2008/12/29(月) 14:33:47ID:5UFVSChd1日1回
>>473
「下らねぇ質問はID出して書き込みやがれ 78」
fockと$_SESSION調べてきます
ありがとうございます
0475nobodyさん
2008/12/29(月) 14:39:10ID:???でてきました
本当にすみませんでした
0476nobodyさん
2008/12/29(月) 14:47:43ID:???0477nobodyさん
2008/12/29(月) 15:12:11ID:???0478nobodyさん
2008/12/29(月) 15:15:33ID:???0479nobodyさん
2008/12/29(月) 15:27:49ID:???とかもあるし
0480nobodyさん
2008/12/29(月) 15:30:23ID:???0481nobodyさん
2008/12/29(月) 18:21:23ID:HrL57s26ドライバがMySQL用のが入っていない。
この場合、自分で入れたりするのが普通なのか?
0482nobodyさん
2008/12/29(月) 18:25:09ID:???詳しくはサーバ管理者に聞くしかないが、普通は無理だろう。
専用サーバやVPSなら自分でインストールできるが、共用レンサバで
PDOドライバをインストールできるところは珍しい。
そういう質問をするときは、もう具体的にどこのレンサバって書く方が早い。
0483nobodyさん
2008/12/29(月) 18:35:00ID:HrL57s26レンタルサーバーの管理人から
メールの返事が返ってきた。
「ウチのサーバーではPDOは使えないからあきらめろ」
と書いてあった。
しかし、PDOそのものはインストールされていて、
ただドライバがSQLite用のものと、MS-SQLserver用の
ものの、2つしか入っていないという状況なのだ。
だから、「PDOはうちのサーバーでは使えない」
という表現はまちがっていると思うんだ。
この場合、MySQLをPDOで使うのをあきらめて、
PDO+SQLiteでいくべきなのか。
それとも、PEAR::MDB2 + MySQLを使うべきなのか。
それとも、素のPHPのネイティブ関数でごりごり書くべきなのか?
0484nobodyさん
2008/12/29(月) 18:43:45ID:???いい加減お前は自分で考える能力が無さ杉だ
0485nobodyさん
2008/12/29(月) 18:46:23ID:???ひろゆきに追い込みかけられても知りませんよ
0486nobodyさん
2008/12/29(月) 19:34:18ID:X3IsYFSg0487nobodyさん
2008/12/29(月) 19:34:29ID:???・web1.nazca.co.jp・・・フリーメールだめ。&php mysqlなどの詳細ページがない。
・ribbon.to・・・mysql利用不可
・srv7.biz・・・php利用不可
・sosite.jp・・・mysql利用不可
・pf-x.net・・・400文字以上はめんどい。
tryhost.net・・・phpバージョンが5.1.4以上ではない。
・kuronowish.com・・・募集休止中
・n.whss.biz・・・フリーメール無理。
・adsv.jp・・・募集休止中( メンテナンスのためなので一時的? )
・abcoroti.com・・・phpバージョンが5.1.4以上ではない。
・meganebu.com・・・phpバージョンが5.1.4以上ではない。(家族BBSにあった)
・space-i.jp・・・mysqlの情報がない。容量が20mb少ない
・best-space.jp・・・phpバージョンが5.1.4以上ではない。
・es.land.to・・・pdo_mysqlがない。
・.my-sv.net・・・phpバージョンが5.1.4以上ではない。
・atpages.jp・・・公開フォルダの一つ上までいけない。
0488nobodyさん
2008/12/29(月) 19:36:56ID:???0489nobodyさん
2008/12/29(月) 20:43:49ID:???0490nobodyさん
2008/12/29(月) 20:57:18ID:???→みんながやりたがる案件は競争がおこる→競争になるので優秀な人だけ残る
PHPは小さい案件が多い→小さい案件は単価が安い→単価が低い案件はみんなやりたがらない
→みんながやりたくない案件は人が集まらない→人が集まらない案件はゴミグラマーが多くなる
→PHPをやってるやつはクズグラマーが多い
0491nobodyさん
2008/12/29(月) 21:03:40ID:bH2y1A5X0492nobodyさん
2008/12/29(月) 21:13:48ID:???0493nobodyさん
2008/12/29(月) 21:40:13ID:???結構あるみたいだね
だとしたら、もしPDO前提のWEBアプリ作って
一般に配布したとしたら、動かない人続出って
結果になるのかな?
0494nobodyさん
2008/12/29(月) 21:45:20ID:???0495nobodyさん
2008/12/30(火) 01:12:14ID:???【質問内容】
初歩的かつくだらない質問。
print TRUE;
ならちゃんと 1 って出力されるのに
print FALSE;
だと何も出力されないんだけど,これってそういうものなの?
0 と出力してほしい気がするんだが。
0497nobodyさん
2008/12/30(火) 01:30:21ID:DZfQMSS9【PHPのバージョン】php5.2.6
【質問内容】
print TRUE;
ならちゃんと 1 って出力されるのに
print FALSE;
だと何も出力されない。これってそういうもの?
0 と出力してほしい気がする。
0498nobodyさん
2008/12/30(火) 01:56:29ID:???printは本来、文字列を受け取って、文字列を出力するための関数。
そこに文字列以外のものを渡した場合、何が起きるのか?
渡したものが文字列に変換される(暗黙的な型変換(型キャスト)と呼ばれる)。
変換ルールは
ttp://jp2.php.net/manual/ja/language.types.string.php#language.types.string.casting
辺りを参照。
全部覚える必要は無い。「決まった型以外を関数に渡すと変換が起きる」という事を知っていればいい。
> boolean の TRUE は文字列の "1" に、 FALSE は "" (空文字列) に変換されます。
これに従って、trueは文字列の"1"に変換され、画面へ出力される。
一方falseは"0"ではなく空文字列に置換されるので、出力したところで何も表示されないわけだ。
0499nobodyさん
2008/12/30(火) 02:29:07ID:DZfQMSS9サンクス。型変換に関しては考えてたんだけど,print で型変換が起きるのかー。
本当は,いくつかの条件をチェックしたくて,一つ一つの条件の真偽値を配列に入れていて,
全部 TRUE だったら(つまりその配列のすべての要素の積が1なら)という判定をしたい。
それで,配列の中身がどうなってるのかと思って print_r してみたら,
FALSE になるべきところが空白になってて心配したというわけ。
ちなみに,全部 TRUE だったら,という判定は,
if (array_product(配列))
で OK だよね?配列の要素が 真偽値 でも。
あと,「糞のようなPHP」とはどゆこと?
これからは別の言語がいいってこと?
PHP 勉強し始めて3日目なんだけど。。。
0500nobodyさん
2008/12/30(火) 02:38:13ID:???0501nobodyさん
2008/12/30(火) 03:43:19ID:???糞のような
はphpのまくら言葉だから気にするな。
カッコつけて付けたがる人が続出なだけで、大人になると自分が恥ずかしくなるような行為と一緒。
例えばJ「-popなんてだせぇよ、洋楽だろ」とか言い出す中学生と同じ。
0502nobodyさん
2008/12/30(火) 04:30:39ID:???0504498
2008/12/30(火) 12:53:40ID:???PHPは「型」の扱いが酷すぎる。
だから、PHPでマトモなプログラムを書こうと思ったら、型の扱いにはいつも注意しないといけない。
型の概念が希薄だから習得が容易なのだPHPの特徴だが、型の扱いをルーズにやってると極めて発見しづらいバグを埋め込みやすい。
以下のプログラムの実行結果を予測してから実際に実行してみるといい。恐らく事前に7問全問正解できるのはスレでも2,3人しかいない。
var_dump(1 == '1+1');
var_dump('1+1' == 1);
var_dump('1+1' == '1');
$ary = array(true, false, 1, 0);
foreach($ary as $i){
switch($i){
case "false":
echo "hoge\n";
break;
default:
echo "default\n";
break;
}
}
0505nobodyさん
2008/12/30(火) 13:32:02ID:???bool(true)
bool(true)
bool(false)
hoge
default
default
hoge
0507nobodyさん
2008/12/30(火) 14:54:57ID:???ほほぉ、非常に勉強になったありがとう。
このコード確認してたら頭が混乱したw
== はやっぱり危険だなぁ、さらにswitchって緩い比較なのね・・。
http://www.php.net/manual/ja/types.comparisons.php
0508nobodyさん
2008/12/30(火) 15:02:03ID:???ウザイけど、実際にコードかきはじめると
信頼できる言語になるってことかな?
0510nobodyさん
2008/12/30(火) 15:07:18ID:???お前らの巣
0511nobodyさん
2008/12/30(火) 15:07:41ID:???そうだね。
だから自己学習で覚えるならPHPはおすすめ。
もちろんいきなり初言語でJAVA余裕だぜってなら、JAVAでもいいと思うけど。
男が一生の仕事でプログラマやるなら、JAVAのほうが食えるんじゃないかな。
あと金払って習うならPHPより、JAVAだと思う。
PHPは自己学習で何とかなる。
でも、使いどころの違いだよね。
JAVAで自分でWEBサービス作るっていうとピンとこないし。
WEBよりならPHPのほうが柔軟性がある気がする。
WEBデザイナーが仕事を広げるためにPHPを習うなら意味があるし。
実際専門上がりでPHPが出来るWEBデザイナーは助かる。
0514nobodyさん
2008/12/30(火) 15:15:49ID:???var_dump("php" == 0);
これは酷いね。
0516nobodyさん
2008/12/30(火) 15:17:48ID:???表張っとくか
0517nobodyさん
2008/12/30(火) 15:18:24ID:???寝不足でもうだめだー
0518nobodyさん
2008/12/30(火) 15:19:29ID:???var_dump("php" == 0); // bool(true)
var_dump(false == 0); // bool(true)
var_dump("php" == false) ; // bool(false)
算数の世界ではありえないね。
0519nobodyさん
2008/12/30(火) 15:23:17ID:???0をfalseに、それ以外をtrueにする仕様をそのまま持ってきちゃったことだろうなあ
0520nobodyさん
2008/12/30(火) 15:42:17ID:???そこまで型意識したアプリケーションをPHでP作ることないだろ?
そこまで厳密に型を意識する必要あるならPHPでつくらなくね?
0521nobodyさん
2008/12/30(火) 15:56:26ID:???他の言語と比較した結果であって、そんな評価はまったくもって意味を持たない。
作るものにあわせた言語を選べば良いだけだし、
>>501がっているようにアタマの硬いお方のたわごとにしか聞こえない。
まぁ>>498はそんなつもりで言ったわけじゃないと思うけど
0522nobodyさん
2008/12/30(火) 16:19:01ID:???レジスタを自分で操作できない糞のようなCと言ってるアセンブラ使いみたい
0523nobodyさん
2008/12/30(火) 16:26:11ID:8nqwT/tk型の概念を知っていれば緩やかに回避するけど、
知らない人はずーっとはまりっぱなしで、糞なロジックや変数を
追加して回避したりしてるよね。困る。
0524nobodyさん
2008/12/30(火) 16:27:33ID:8nqwT/tk視野の狭い人っているよね。自分の世界が絶対だと思っている人。
0525nobodyさん
2008/12/30(火) 17:24:51ID:???0526nobodyさん
2008/12/30(火) 17:42:45ID:???cssが丁度終わったころ少し学校を休んでいて
気づいたらphpにはいっていました
全くついていけず、皆さんはどういった勉強方法をしていますか?
0527nobodyさん
2008/12/30(火) 17:48:30ID:8nqwT/tkhttp://pc11.2ch.net/test/read.cgi/php/1209137730/
0529nobodyさん
2008/12/30(火) 18:01:20ID:???0530nobodyさん
2008/12/30(火) 18:30:45ID:???array('a', 'b', 'c', 'd');
のような形式か
array('a' => 'b', 'c' => 'd');
のような形式かを判断したいのですが、何か良い方法はありますか?
0531nobodyさん
2008/12/30(火) 18:35:45ID:???array('a' => 'b', 'c' => 'd') →ハッシュ(連想配列)
だから、配列が、ノーマル配列なのか、連想配列なのか、
を見分ける関数がありますか?って質問になるかな。
0532nobodyさん
2008/12/30(火) 18:44:48ID:???0533nobodyさん
2008/12/30(火) 18:49:44ID:???キーを調べる関数でarray_walkが早いかな。
0534nobodyさん
2008/12/30(火) 18:58:26ID:???Fatal error: main() [function.require]: Failed opening required 'clsFile.php' (include_path='.:http://○○○
newshttp://○○○/news/libs/PEAR:http://○○○/newshttp://○○○/news/libs/smarty:http://○○○
/newshttp://○○○/news/libs/jpspan:http://○○○/newshttp://○○○/news/classes:http://○○○
/newshttp://○○○/news/ad_classes:http://○○○/newshttp://○○○/news/news/classes') in
/home/sites/lolipop.jp/users/○○○/web/news/news/index.php on line 3
すみません、朝から設置してるのですが、エラー解除できず、くじけそうなので質問させてください。
上記のようなエラーがでるのですが、これはどういった意味なんでしょうか?
すみませんが、分かるた居られましたらよろしくお願いします
0536nobodyさん
2008/12/30(火) 19:00:06ID:???0537nobodyさん
2008/12/30(火) 19:01:16ID:???0538nobodyさん
2008/12/30(火) 19:06:54ID:???allow_url_fopen な環境ならそれは問題ない。
ただ、パスセパレーターがちゃんとあたってなくて、
なおかつ、検索先が正しいPHPソースを返してないんじゃないかな。
0539nobodyさん
2008/12/30(火) 19:08:45ID:???>>537
即レスありがとうございます。
絶対パスじゃなくてinclude_path = ".:/usr/local/lib/php/pear";こんな感じで設定しないとダメってことですか?
もういちど、調べて設置してみます。
また、躓いたらすみませんけど、書き込ませて頂くかも知れません。。。
ありがとうございました。
0541nobodyさん
2008/12/30(火) 19:48:35ID:???http://d.hatena.ne.jp/flyeagle/20080511/1210520151
「PHPは、配列とハッシュの区別がありません。」
「仕方なく、キーが全て整数だったら単純配列とみなす、という格好悪い方法を取らざるを得ませんでした。」
0542nobodyさん
2008/12/30(火) 19:58:28ID:???//フルパスを記入
$fullPath = '/home/sites/lolipop.jp/users/○○○/web/news';
//スライダー用URL
$httpUrl = 'http://●●●/news';
//htmlを書き出す際の文字コード
$targetCode = "EUC-JP";
$pearDbPath = $fullPath . '/home/sites/lolipop.jp/users/○○○/web/news/libs/PEAR';
$smartyPath = $fullPath . '/home/sites/lolipop.jp/users/○○○/web/news/libs/smarty';
$jpspanPath = $fullPath . '/home/sites/lolipop.jp/users/○○○/web/news/libs/jpspan';
$commonClasses = $fullPath . '/home/sites/lolipop.jp/users/○○○/web/news/classes';
$ad_Classes = $fullPath . '/home/sites/lolipop.jp/users/○○○/web/news/ad_classes';
$localClasses = $fullPath . '/home/sites/lolipop.jp/users/○○○/web/news/news/classes/';
$iniFile = $fullPath . '/home/sites/lolipop.jp/users/○○○/web/news/news/news.ini';
$bodyUrl = $httpUrl . "http://●●●/news";
$bodyUrl2 = $httpUrl . "http://●●●/news/news";
umask(0);
}else if(strstr(PHP_OS ,'FreeBSD')){
やっぱり直らないので、ソース見ていただけないでしょうか
上記で>>534と同じようなエラーがでるのですが、どこか間違えてるでしょうか?
$localClassesの行の最後は「/」を付けると書いてあったので、そうしてあります。
よろしくお願いします
0544534,542
2008/12/30(火) 20:17:02ID:GPyST6V+【PHPのバージョン】php5.26
【連携ソフトウェア】MySQL(バージョン4.0.24)利用可。[PHP My Admin]でのみ利用可。
エラー内容
Warning: main(clsFile.php) [function.main]: failed to open stream: No such file or directory in /home/sites/lolipop.jp/users/○○○/web/news/news/index.php on line 3
Fatal error: main() [function.require]: Failed opening required 'clsFile.php' (include_path='.:/home/sites/lolipop.jp/users/○○○/web/news
/home/sites/lolipop.jp/users/○○○/web/news/libs/PEAR:/home/sites/lolipop.jp/users/○○○/web/news
/home/sites/lolipop.jp/users/○○○/web/news/libs/smarty:/home/sites/lolipop.jp/users/○○○/web/news
/home/sites/lolipop.jp/users/○○○/web/news/libs/jpspan:/home/sites/lolipop.jp/users/○○○/web/news
/home/sites/lolipop.jp/users/○○○/web/news/classes:/home/sites/lolipop.jp/users/○○○/web/news
/home/sites/lolipop.jp/users/○○○/web/news/ad_classes:/home/sites/lolipop.jp/users/○○○/web/news
/home/sites/lolipop.jp/users/○○○/web/news/news/classes/')
in /home/sites/lolipop.jp/users/○○○/web/news/news/index.php on line 3
>>543
すみませんでした。
上記のようなエラーが出ます。
どこか間違えてる所ありますでしょうか?よろしくお願いします。
0546nobodyさん
2008/12/30(火) 20:26:21ID:???//フルパスを記入
$fullPath = '/home/sites/lolipop.jp/users/○○○/web/news';
//htmlを書き出す際の文字コード
$targetCode = "EUC-JP";
$pearDbPath = $fullPath . '/home/sites/lolipop.jp/users/○○○/web/news/libs/PEAR';
これで $pearDbPath の内容はどうなると思う?
もうちょっと落ち着いてコード見るといいよ。
0547nobodyさん
2008/12/30(火) 20:35:44ID:???ここのサイトで、
「PHPメーリングリスト全文検索」
「PHP-FAQ JP」
をクリックしても、ページが出てこない。
0548534,542,546
2008/12/30(火) 21:48:18ID:GPyST6V+ありがとうございました。なんとか管理画面までたどり着く事ができました。
そこで設定していたところ
Warning: file() [function.file]: HTTP request failed! HTTP/1.1 404 Not Found in /home/sites/lolipop.jp/users/○○○i/web/news/news/classes/clsOutPutHtml.php on line 55
というエラーが出ます。
配布元よりDLしたファイルにはclsOutPutHtml.phpが存在していないのですが、
これはどういった事が考えられるのでしょうか?質問ばかりで申し訳ありませんが、よろしくお願いします。
0549nobodyさん
2008/12/31(水) 00:00:49ID:0oKh8Ta40551nobodyさん
2008/12/31(水) 00:54:55ID:???0552nobodyさん
2008/12/31(水) 01:03:31ID:0oKh8Ta4すみませんでした。
549の訂正をします。
2009年1月1日0時0分0秒になったら
それ以降であけましておめでとうとPHPで自動で
コメントを出したいのですがどうすればいいでしょうか?
0553nobodyさん
2008/12/31(水) 01:07:51ID:???0555nobodyさん
2008/12/31(水) 01:18:00ID:???はいどうぞ
http://www.php.net/results.php?q=%E6%99%82%E5%88%BB&p=manual&l=ja
>>551
「細かい事言うと」って前置きしてるのに・・
揚げ足取りは・・
0556nobodyさん
2008/12/31(水) 01:28:55ID:0oKh8Ta4すみません。
実は去年自分でstrtotimeで出して同じ事をしたら
失敗し不安だったのでマルチしました。
GMT足し忘れてたのかな。。
本スレからのマルチ失礼しました。
0558nobodyさん
2008/12/31(水) 01:36:28ID:???windowsなりで時間いじりながらテストとかしたら失敗しないと思うけど
本番環境じゃなきゃlinuxでも一緒だけど
0559nobodyさん
2008/12/31(水) 13:32:29ID:???P20 「思いやり」という言葉
一学期が終わってJavaの専門学校に通っている娘が通知表をもらってきました。
担当の先生の所見欄を見ると、娘は「思いやりがあり・・・」と書かれています。
PHPグラマーの妻は、「ここのところ、よくわらからないから全部PHPに訳してみて」といいます。
私は困りました。というのは以前、Javaを長くやっているPHPの友人から
「PHPに絶対訳せないJavaの表現があるんだけど何だか知っているかい?」と
たずねられた事があるのです。それがまさにこの“思いやり”だったのです。
レファレンスを見るとPHP語で「同情すること」「推測すること」などとなっています。
しかしこれでは“思いやり”という言葉に含まれた深い気持は表現できません。
結論から言ってしまえばPHPグラマーは“思いやる”ということをしません。
そういう言葉がないということは、そういう気持も、そういう行為もないことになります。
小さい時から、大学の授業、外部のセミナー、会社の研修の中で“思いやり”に類したことは全く教育されていないのです。
PHPでは大学でも専門学校でも、Javaのように「皆と仲良く」とか「他人に迷惑をかけるな」という教育をー切やりません。
反対に、一貫して強調されているのは、「一番になれ」「他人に勝て」ということです。
私がPHPのプロジェクトで娘たちと職場へ行くとよく目にする光景があります。それは例えばプリンタの前でプログラマーたちが
順番を待っているところへ、プログラマーを連れたPMなり、PLがやってきます。
すると並んで待っているプログラマーはおろか、プリンタを使っているプログラマーもひきはがして
そのPMの連れて来たプログラマーがプリンタを勝手に使ってしまうのです。
その他のプログラマーたちもそれをまたごく当然の事として受けとめているのです。
良い悪いは別にして、これがPHPグラマーの行動パターンの原型です。自分の事しか考えないのです。
他人のことを思いやったり、他人への迷惑を気にするのはバカげた事なのです。
(中略)
JavaとPHPは似たように見えてもこれほど違う言語なのです。
0560nobodyさん
2008/12/31(水) 14:41:17ID:dNBkPk9oいろいろなスクリプトを見てまわってるのですが
こういう設定箇所は定数の人もいれば変数の人もいます
だいたいは定数の人が多いようですが
今回classを使ったものに挑戦しているのですが
オブジェクト定数(const)なんてものもあるようで
classを使ったプログラムをする場合こういう設定項目は
メンバー変数or定数orオブジェクト定数どれにするべきなのでしょうか?
0561nobodyさん
2008/12/31(水) 14:43:39ID:???思いやりがありとか小学生かよwwww
で釣られてやったわけだがどこを縦読み?
0562nobodyさん
2008/12/31(水) 14:45:18ID:???0564nobodyさん
2008/12/31(水) 16:55:54ID:???設定ファイルとかに切り出しやすいからな。
クラス定数は後から場所を移動しにくい。
0565nobodyさん
2008/12/31(水) 17:23:50ID:???0566nobodyさん
2008/12/31(水) 18:35:11ID:???0567nobodyさん
2008/12/31(水) 18:41:52ID:???0569nobodyさん
2008/12/31(水) 18:54:16ID:???0570nobodyさん
2008/12/31(水) 18:55:02ID:???phpもそうしろとは言わないがconstにfinalがつけれないのはなんでだろうな
継承先で変更可能になってしまうのは気持ち悪い
0575nobodyさん
2008/12/31(水) 19:09:14ID:???0576nobodyさん
2008/12/31(水) 19:11:39ID:???javaにもconstが予約語としてあるよ
constはstaticでfinalなものと考えれば良い
>>571
constにした場合
A::HOGEという形で呼ぶべきなので
Aというクラス名が書かれこれを変更する際に手間が増える
0577nobodyさん
2008/12/31(水) 19:23:19ID:???アクセスする毎に毎回読み込むんだよね?
どっかにキャッシュとしてもたれてるのかな?
0578nobodyさん
2008/12/31(水) 19:29:25ID:???例1 定数の定義と使用
<?php
class MyClass
{
const constant = 'constant value';
function showConstant() {
echo self::constant . "\n";
}
}
echo MyClass::constant . "\n";
$classname = "MyClass";
echo $classname::constant . "\n"; // PHP 5.3.0 以降で対応
$class = new MyClass();
$class->showConstant();
echo $class::constant."\n"; // PHP 5.3.0 以降で対応
?>
だそうです
0579nobodyさん
2008/12/31(水) 19:45:54ID:???ハードコーディングよりは遅いさ。
しかし、クラス定数の値を手動で書き変えさせるなんて俺はしない。
状況にもよるが、安全に修正できて設定がしやすいiniファイルは有効
>>575
iniが古くてxmlがいいって?
使いどころの問題でしょう。
Zend_Config_Iniとか、XMLより便利だし。
0580nobodyさん
2008/12/31(水) 19:45:55ID:???なんらかの変数ならば、動的に書き換えられるような設計に作り変える事が可能になる。
たとえば設定ファイルから読み込むとか、サーバー変数から動的に組み立てるようにするとかな。
速度問題や可読性の問題もあるから、どれがいいとは一概には言えないが。
>577
毎回読み込む事になるから遅くなる。特にXMLはパース処理も重いのでダブルで遅い。
APCのようなシステムを組み込んでいて、速度を重視する場合は、読み込んだ内容を丸ごとPHPコードとして吐き出しておくといい。
このPHPコードとiniファイルの更新日時を比較する処理も入れておくのもいいな。
まあ、そこまで性能が要求される事態ってのもそうそう無いが。
APCとかを使ってないならば、ファイル読み込み程度は誤差の範囲。
あと、>575は一周遅れているようだが、XMLの流行はすこし昔の話。
実際問題、そこまで構造化されたデータを必要とする事は少ないからな。
JSONやYAMLなどの、より構造のシンプルな可読性の高いフォーマットを使うのが最近の流行。
PHPならばiniを使うのも悪くない選択だと思う。
0582nobodyさん
2008/12/31(水) 20:06:41ID:???使いどころ。
たとえば、掲示板の簡単な設定をカスタマイズさせるケース
title = someboard
theme = tundra
indextype = thread
logpath = /var/log
0583580
2008/12/31(水) 20:13:54ID:???XMLの利点は、高度に構造化されたデータを表現できる事。
欠点は糞遅い事と、可読性が低く、人間が書きにくい事。SimpleXMLを使う前提で考えるならPHP5以降限定である事。
iniは表現力の低さがデメリット。配列すらややトリッキーな事をしないと使えない。
書き方が分かりやすく、かなり古いPHPでも標準関数で読み込めるというのがメリット。
読み込み速度も最速の部類のはず。PHPコアが使ってる機能だからな。
JSONはiniよりはやや可読性で劣るが、多少構造的なデータが扱えるという強みがある。
構造化と可読性のバランスが良いので個人的に好きなのだが、PHP 5.2.0以降でないと標準で読み込む関数がないのでかなり微妙。
>582の言うとおり、XMLはこのケースで使うには高級すぎる。
iniでじゅうぶんな内容しか書かないなら、iniの方が簡単だし速い。
0584nobodyさん
2008/12/31(水) 20:34:01ID:???アプリケーションがユーザの操作によって自動的に出力するイメージがあるんだけど
Windowsのアプリケーションとかだと窓の大きさとか窓の位置とか
前回どういう状態で終了したとか
設定用の画面を用意すればいいのか
0585nobodyさん
2008/12/31(水) 20:44:27ID:???システムが触るだけなら、var_exportが正確だしincludeするだけで変数作れる
0586nobodyさん
2008/12/31(水) 20:55:34ID:???0587nobodyさん
2008/12/31(水) 21:10:30ID:???0588nobodyさん
2008/12/31(水) 21:25:38ID:???0589nobodyさん
2008/12/31(水) 21:40:01ID:???0590nobodyさん
2008/12/31(水) 23:16:05ID:???0591nobodyさん
2008/12/31(水) 23:20:27ID:???0592nobodyさん
2008/12/31(水) 23:27:49ID:???0593nobodyさん
2009/01/01(木) 02:04:18ID:g1UFnF+nSQLiteManagerで認識できない?
0594nobodyさん
2009/01/01(木) 02:50:35ID:uPL0NuYt0595nobodyさん
2009/01/01(木) 02:55:45ID:???出来ないし、SQLiteManagerは色んな意味で使えない。
関係者以外の人が修正する気の起きない様な未曾有のコードの汚さだから
ある程度需要はあるんだろうけど、3年前に開発がストップしてる。
0596nobodyさん
2009/01/01(木) 03:11:19ID:g1UFnF+nじゃあSQLiteを使うときには、
phpmyadminの代わりに何を使うのが標準なの?
0597nobodyさん
2009/01/01(木) 03:11:59ID:g1UFnF+n開発がストップするというのはいろんな理由があるのだろうけど
「コードが汚すぎて周辺の人が参加できない」
というのも理由の一つになるのか。
0598nobodyさん
2009/01/01(木) 03:59:16ID:g1UFnF+ncould not find driver
というエラーが出るんだが、どうしたらいい?
0599nobodyさん
2009/01/01(木) 04:20:00ID:g1UFnF+n自分のパソコンの中に入っているSQLiteはバージョンが3とかかな?
0600nobodyさん
2009/01/01(木) 04:20:41ID:g1UFnF+n2なのか、3なのか、どうやって調べればいいですか?
xamppなのでデフォルトでは2のはずなのですが。
0601nobodyさん
2009/01/01(木) 04:23:43ID:g1UFnF+nPDOの書き方違う?
0602nobodyさん
2009/01/01(木) 04:30:44ID:g1UFnF+n2は2って入れないとダメなんだ、
3は3って書かなくても良し。
なんで?もし4がでたらどうすんの?
SQLite2 sqlite2:/path/to/pdotest.sq2
SQLite3 sqlite:/path/to/pdotest.sq3
http://codezine.jp/article/detail/433?p=2
0603nobodyさん
2009/01/01(木) 04:32:04ID:g1UFnF+nこれでボクも今日からデーターベースを使いこなすプログラマー
0605nobodyさん
2009/01/01(木) 14:08:35ID:g1UFnF+n書き方や文法はほとんど同じなの?
0606nobodyさん
2009/01/01(木) 14:09:11ID:g1UFnF+nどういう順番で勉強していったらいいのか、
全然わからんな。
0607nobodyさん
2009/01/01(木) 14:42:55ID:g1UFnF+n0608nobodyさん
2009/01/01(木) 15:28:32ID:???0609nobodyさん
2009/01/01(木) 19:11:35ID:g1UFnF+nわざと例外出してみたいんだが、
なにかサンプルコード買いてよ
0610nobodyさん
2009/01/01(木) 19:12:07ID:g1UFnF+nエラーが出るコードではダメなの?
0611nobodyさん
2009/01/01(木) 19:13:07ID:g1UFnF+nググってもサンプルコードがあんまり出てこない。
でも、もしかして、PDO + MySQLのコードと、ほとんど同じなの?
接続のところの、一行だけ変更すれば、あとは全部同じ?
0612nobodyさん
2009/01/01(木) 19:25:59ID:???0613nobodyさん
2009/01/01(木) 19:28:43ID:???0614nobodyさん
2009/01/01(木) 19:30:00ID:???ここはお前のらくがき帳だ、もっとやれ。
0615nobodyさん
2009/01/01(木) 19:31:45ID:???0616nobodyさん
2009/01/01(木) 20:00:22ID:g1UFnF+ntry {
$dbh = new PDO("sqlite2:aaa/bbb");
}
catch(PDOException $e)
{
echo $e->getMessage();
}
?>
このコードで、aaaフォルダに書き込み変更禁止
属性をつけて、上記のプログラムを実行した。
そしたら、bbbというデーターベースは存在しないので、
新規作成にいくが、フォルダが書き込み禁止なので、作成できない。
なのでエラーになるはずで、そしたら例外なんとかのメッセージが
出るとおもったのだが、出ない。なんでだ?
0617nobodyさん
2009/01/01(木) 20:18:51ID:???0618nobodyさん
2009/01/01(木) 20:25:08ID:???0619nobodyさん
2009/01/01(木) 20:27:53ID:???暫らくスレ見てなかったから気がつかなかった( ;^ω^)
0620nobodyさん
2009/01/01(木) 20:40:41ID:g1UFnF+nfunction foo() {
throw new Exception("例外発生!");
}
try {
foo();
} catch (Exception $e) {
$e->getMessage();
exit;
}
このコード実行しても
なんもメッセージ出ないんだけど、
これでいいの?
0621nobodyさん
2009/01/01(木) 21:09:55ID:???0622nobodyさん
2009/01/01(木) 21:17:11ID:???0623nobodyさん
2009/01/01(木) 21:27:23ID:O09m/dw1うまくいきません
require_once('MySmarty.class.php');
//Smartyクラスのインスタンス作成
$smarty = new MySmarty();
中略
function logoutConf(){
if($loginFlg == 0){
$smarty->display('logout.tpl');
exit();
}
}
上記を別ファイル(loginChk.php)として、
require_once('loginChk.php');
logoutConf();
としても動かないんです
$smarty->display('logout.tpl');をコメントアウトしてecho "テスト";としたら出力します
何が原因でしょうか?
インスタンスのfunction内での扱いを間違ってるでしょうか?
あと、あけましておめでとうございます
0624nobodyさん
2009/01/01(木) 21:30:42ID:???0625nobodyさん
2009/01/01(木) 21:41:23ID:O09m/dw1そっか、スコープの問題だ!
また忘れてた、ありがとうございました!
0626nobodyさん
2009/01/02(金) 18:50:02ID:PIvYRgwW現在携帯向けサイトを作ってて
hoge.com/profile?PHPSESSID=ce04068aecfc222ed167f335d7d496de でアクセスすると
それまでに登録した名前($_SESSION['uName'])が表示されるようにしてあります。
で、ログアウトページで
session_unset();
session_destroy();
var_dump($_SESSION);
をしてるのですが、その場では array(0){} となるものの、上記のURLをブラウザ直張りして
アクセスすると、さっきの名前が表示されてしまいます(PCで検証してるので、、)
なにも表示されないようにしたい(パラメータのPHPSESSIDの値を無効にしたい)んですが
どうしたらいいんですか?
0627nobodyさん
2009/01/02(金) 19:16:40ID:???$_SESSION = array("destroy" => 1);
とか。実質的に破棄されたようにできる。
サーバー上に保存されるファイルを直接消したければ、gcのタイミングを早めるしかないかな、
どうだったか覚えてない
0628nobodyさん
2009/01/03(土) 01:13:17ID:???デフォルトのセッション保存関数ではその場でファイルを削除するから復元される事はない
表示されるのはキャッシュを読んでるか実装がおかしいかだ
0629nobodyさん
2009/01/03(土) 07:33:13ID:???ログアウトページで、ちゃんとstartしてから破棄してるか?
0630nobodyさん
2009/01/03(土) 08:33:18ID:???0631nobodyさん
2009/01/03(土) 08:54:27ID:QyZ7nGCj解説ページを見ると、PDO+SQLiteの場合、
SQLite3の解説記事ばっかり。
SQLite2で使いたい場合は、説明のページがあんまりない。
だからSQLite3にしようかと思ったが、自分がつかっている
レンタルサーバーにはPDOのSQLite3のドライバが入っていない。
だから仕方なくSQLite2を使うしかない。
0632nobodyさん
2009/01/03(土) 08:55:07ID:???0633nobodyさん
2009/01/03(土) 09:05:40ID:QyZ7nGCjでもそれだと解説記事が少ないんだよ
0634nobodyさん
2009/01/03(土) 09:19:14ID:???0635nobodyさん
2009/01/03(土) 09:20:14ID:???0636nobodyさん
2009/01/03(土) 09:22:11ID:???0637nobodyさん
2009/01/03(土) 09:33:04ID:QyZ7nGCjそうそれそれ。
SQLite3用のサンプルコードをコピペして、
ワクテカして実行したらエラーで動かないとかひどすぎ。
0638nobodyさん
2009/01/03(土) 09:34:46ID:QyZ7nGCjそんなんできるのか?
http://d.hatena.ne.jp/array/20081119/1227097898
ここを見ると、
「ただ、SQLite2を使うとPDOで使った場
合でもエラー時の例外を投げてくれな
い事が分かったので(3は例外を投げる)」
って書いてあるから、ずいぶんと挙動が違うように感じる。
エラーを投げないってことは、try catchとか
使えないってことだろ?
0639nobodyさん
2009/01/03(土) 09:36:53ID:QyZ7nGCj出なかったのは、SQLite2だからなのか?
0642nobodyさん
2009/01/03(土) 09:46:06ID:???0643nobodyさん
2009/01/03(土) 10:50:33ID:QyZ7nGCj「PDOのSQLITEはver.3系、ビルトイン関数の方は2系。」
↑これってどういう意味で言ってるンだ?
PDOは2系では使えないという意味か?
0644nobodyさん
2009/01/03(土) 11:02:36ID:???0645nobodyさん
2009/01/03(土) 18:48:59ID:???0646nobodyさん
2009/01/03(土) 18:50:11ID:???0647nobodyさん
2009/01/03(土) 21:58:48ID:hw8rEzMz確認画面にリダイレクトしています。
mb_send_mail($toAddress,$title,$_POST['msg'],〜);
header(Location: http://www.hoge.com/);
で、リダイレクト先のページをリロードすると「フォームを再送信します」というメッセージがでて
続行すると再度メールが送られてしまうんですが、二重送信を管理するセッションなどを持たせて
再送を防ぐしかないんでしょうか?
if($_SESSION['doubleSend']==0){
上の処理
$_SESSION['doubleSend']=1;
}
みたいな… もっとうまいやり方ないですか?
0648nobodyさん
2009/01/03(土) 22:01:15ID:QyZ7nGCjSQLitemanagerを使ってますがこれはバグだらけでクソすぎる
既存のデーターベースを読み込んで使うこともできない
0649nobodyさん
2009/01/03(土) 22:01:47ID:QyZ7nGCj0650nobodyさん
2009/01/03(土) 22:20:27ID:???0651nobodyさん
2009/01/03(土) 22:22:54ID:???開店一時間前から並んで、俺は余裕の一番乗りをゲット。いわゆる、ファースト・オブ・ファースト。
開店して着席、一息ついて改めてファーストロットメンバーを確認してふと気づいた。
普段はこの店、学生が多いのだが今日はサラリーマン、OLと客層が豊か。
しかも素人が多いのか、コールの仕方もめちゃくちゃで、他の麺バーとの協調性のかけらも見えない。
これはまずい・・・ファーストロットの乱れは、閉店まで波及しオペレーションに重大な支障を来たす。
ふと店主と目が合う。額に汗を浮かべながらのその表情は明らかに
「たのむ・・・あんたがロットマスターになってなんとかしてくれ」と訴えかけていた。。。
ここまで期待されたら、断る理由は無い。やってやろうじゃないの。
大豚W全マシが俺の前に置かれる。難攻不落の要塞さながらのその野菜の山に、
俺はさっそく箸を刺しこみ、胃袋に詰め込み始める。
しかし、今日はいつもの単純な、自分との戦いではない。俺は自分の要塞を攻略しつつ、店内を注意深く監視する。
さっそく発見。盛りの豪快さをネタに、しゃべりまくる二人連れの学生。
――ロット乱しの元凶その1、『不要な私語』。ギルティー。
俺は勢いよくテーブルをバシッ!と叩く。その音に驚き、店内に再び静寂と規律が戻った。
そしてその隣!長い髪を気にしながら、上品にすぼめた口で一本ずつ麺をすすりこむOL!
――ロット乱しの元凶その2、『女』。ギルティー。
俺は箸で女を指し「すばやく食え!」と麺をかきこむジェスチャーを送る。
OLは髪に添えていた手を放し、一心不乱に麺をかきこみはじめた。そう、それでいい。
ロットマスター(=俺w)の的確な指揮により生まれた規律と調和。
俺はさながら、オーケストラを指揮するコンダクターだ。この全能感、多幸感―――。
結果、全員がほぼ同時にどんぶりをカウンターの上に置くことで、
ファーストロットという名のコンサートは見事に成功し幕を閉じた。
店を出たところで、先ほどのOLと目が合う。軽く俺がウィンクをすると、彼女は恥ずかしそうに逃げていった。
0652nobodyさん
2009/01/03(土) 22:49:06ID:???⇒ dsn を sqlite2:my_sqlitedb にすればsqlite2.x系が読み込める。
PDOのSQLITEはver.3系、ビルトイン関数の方は2系。
一行上くらい読んでな。
PDOは2、3どっちでも使えるけど3で使うのが推奨。
3が使える環境でもsqlite_openで作ると2系のDBしか作れない。
MySQLも使うならプリペアドステートメント使っとけば、大体同じに書ける筈。
普通の生クエリで書いちゃうと、SQLiteはカラムや数値をクォートしちゃダメだから
MySQLとの入れ替えは厳しい。
俺の自分がググリ易いように公開してるSEOスパム用メモ張をあてにしない方が良いよ。
0653nobodyさん
2009/01/03(土) 23:01:09ID:???header(Location: http://www.hoge.com/);
これって、""で囲まないで良いの?
0654nobodyさん
2009/01/03(土) 23:03:24ID:???このスレってなんのためにあるの?
ググレ、ググレって覚えたての言葉をうれしそうに連呼する猿を見ると吐き気がする。
手元にある書籍で思いっきりひっぱたいてやりたい気分。氏ねw
日本のPDOが終わってるのはコミュニケーション能力のないキモヲタしかつかわないから。
そういう豚は「ググレググレググレ」ばっか。だからユーザーが育たない。
0655nobodyさん
2009/01/03(土) 23:06:57ID:???3が推奨なのはあちこちのページに書いてあるのでわかりますが、
自分が使っているレンタルサーバーでは
PDOのドライバーが2用のしか入っていないので
使えないんですよ。だから仕方なく2を使っているという現状です。
だから、2用の解説記事を今から10本書いてください。
しかも初心者が読んでわかりやすいようにね。
いつまでも書けますか?
0656nobodyさん
2009/01/03(土) 23:07:38ID:???○いつまでに書けますか?
0658nobodyさん
2009/01/03(土) 23:12:20ID:???* 忠告しておく。層化を追求すると死人が出る ・ ・ ・ ・。
1. 斎賀孝司 ( 朝日記者 / 病死?)
2. 森田設計士( 耐震偽装関連 / 自殺?)
3. 大西社長 ( LD投資組合社長 / 行方不明 )
4. 古川社長 (平成設計の元社長 / 自殺?)
5. 森田信秀 ( 姉歯に構造計算を発注 / 自殺?)
6. 草苅逸男 ( 岡山 ・ 新勝央中核工業団地 / 一級建築士 / 焼死?)
7. 野口英昭取締役( ライブドア政界窓口 / HS証券 ・ 安晋会理事 / 沖縄カプセルホテルで怪死 )
8. 東江組員 ( 沖縄旭流会幹事 / 惨死 )
9. 小渕恵三 ( 脳梗塞??)
10.竹下登秘書の青木伊平( 自殺??)
11.市議会で創価を追及してた元東村山市議朝木議員→飛び降り自殺
12.映画で創価学会を取り上げようとした伊丹監督→飛び降り自殺
13.国会で創価に噛みついて、議員辞職後も創価と裁判してた永田元議員→飛び降り自殺
0659nobodyさん
2009/01/03(土) 23:12:54ID:???0660nobodyさん
2009/01/04(日) 00:47:56ID:+Z0x0JrP0661nobodyさん
2009/01/04(日) 02:45:22ID:90ycN+/tproperty_exists($obj, "varname")
みたいなのが PHP4 でできるなら教えてください。
0662nobodyさん
2009/01/04(日) 02:49:36ID:???$var = "varname";
echo $obj->$var;
というだけなんですが、error_reporing(E_ALL) をすると
$obj->varname が存在しないときにエラーがでるので、
それを防ぎたいというだけです。
0663nobodyさん
2009/01/04(日) 03:10:02ID:???http://jp.php.net/manual/ja/book.classobj.php
0664nobodyさん
2009/01/04(日) 03:32:33ID:???nullとか空文字列とか空の配列で初期化しとくとそもそも判定の手間が省ける事も多い。検討の余地あり。
0665nobodyさん
2009/01/04(日) 07:49:06ID:lpSLvYGuそこで、fsockopenはうまく繋げたけど、fputsの途中でLANケーブルを
抜いた場合などに、タイムアウトを設定して時間切れになったら任意の処理を
実行するといった動作は可能でしょうか?
可能なら実現方法を教えて頂ければと思います。
個人で調べた範囲のものでは、
stream_set_timeoutが惜しいと思ったのですが、fopen/freadにしか使えないようです。
OS不明/PHP5です。お願いいたします。
0666nobodyさん
2009/01/04(日) 07:51:04ID:???0667nobodyさん
2009/01/04(日) 07:59:51ID:???ttp://jp.php.net/manual/ja/function.fsockopen.php
マニュアルに書いてあるよ
0668665
2009/01/04(日) 15:32:22ID:???>>666
fputsで処理がストップするから値は何も返って来ないんだ
>>667
fsockopenじゃなくて、fputsのタイムアウトをとりたいのです。
fsockopenで接続されたあと、ループをまわしながらfputsで少しづつ情報を
送っているのですが、その途中で接続が切断された場合、fputsで処理が止まり
どうしようもなくなってしまうので・・
何か分かりましたらお願いします。
0669nobodyさん
2009/01/04(日) 16:27:28ID:S9BZj0MWで、"><font color="#ff0000"> と入力して送信したら、確認画面では \"> と表示され
ソースを見ると該当箇所は \"><font=\"#ff0000\"> となってました
なんで\をつけられてるんでしょうか?
かなりレベルの低い質問だと思いますが、御願いします
htmlspecialchars() とかしてないのにと混乱してます
smartyのスレで質問したのですが、それ以前の問題に思えてきたのでこちらで
質問させてもらいました、よろしく御願いします
0670nobodyさん
2009/01/04(日) 16:37:02ID:???0671nobodyさん
2009/01/04(日) 16:37:24ID:???ttp://jp2.php.net/manual/ja/info.configuration.php#ini.magic-quotes-gpc
0672nobodyさん
2009/01/04(日) 17:11:00ID:???どうもありがとうございます、ようやく解決しました
利用非推奨だしONだと遅くなるらしいし、何の意味があるんでしょうかねこれって
とにかくありがとうございました
0673nobodyさん
2009/01/04(日) 17:53:12ID:???MySQLに値を格納するときに
SQLインジェクションされるのを防止
するためにNASAが開発した新機能だ
0674nobodyさん
2009/01/04(日) 17:57:19ID:csR3yzKgMYSQLのデータをPHPで表示させる場合SQLインジェクション対策をする必要はあるのでしょうか?
0675nobodyさん
2009/01/04(日) 18:01:53ID:???0676nobodyさん
2009/01/04(日) 18:14:18ID:8Obh1++8それは
MySQL→PHP
というデーターの流れだよね。
その場合は、htmlspeなんとかで、タグのサニタイズをするべき。
理由はXSSやCSRF.
もし、
PHP→MySQL
というデーターの流れであれば、それは
データーベースにデーターをつっこむわけだから、
適切にエスケープしないと、SQLインジェクションされる。
この時は、mysql_real_escape_stringなんちゃらを使う。
またはPDO+プリペアードステートメントを使えば自動でやってくれる。
0677nobodyさん
2009/01/04(日) 18:15:42ID:???0678nobodyさん
2009/01/04(日) 18:47:22ID:8Obh1++8このページの記述が理解できん
openとcloseが、まったく同じではないのか??
// example opening a connection to SQLITE 2 (available in PHP 5.1)
$dbh= new PDO('sqlite2:/databases/mydb.sq2');
//**************************************************
// example closing a connection to SQLITE 2
$dbh= new PDO('sqlite2:/databases/mydb.sq2');
0679nobodyさん
2009/01/04(日) 18:48:46ID:8Obh1++8SQLite3に以降したほうがいいのか?
しかしxamppではいまだにSQLite2だし、
PHPにデフォルトでついてくるSQLiteも2のままだ。
SQLite3+PDOで使えるレンタルサーバーを探したほうがいいのか?
0680nobodyさん
2009/01/04(日) 19:00:08ID:8Obh1++8PDO
PDO support enabled
PDO drivers sqlite2, sqlite
こうなっているんだが、
「sqlite」
っていうのは、もしかしてsqlite3のことなのか?
0681nobodyさん
2009/01/04(日) 19:01:27ID:8Obh1++8PDO Driver for SQLite 3.x enabled
PECL Module version (bundled) 1.0.1 $Id: pdo_sqlite.c,v 1.10.2.6.2.3 2007/12/31 07:20:10 sebastian Exp $
SQLite Library 3.3.7
って書いてある。3って理解でいいよな?
0682nobodyさん
2009/01/04(日) 19:09:57ID:???HTMLタグをエスケープするならそういえばいいし、SQLエスケープならそう言えばいい。
俺の周りで「サニタイズ」を好き好んで使う奴って無能ばっか。バリデーションとサニタイズの区別もつかないようなアホとか。
まあ、>676の指摘は全面的に正しいから別にいいんだけどな。
0683nobodyさん
2009/01/04(日) 19:11:19ID:8Obh1++8漏れの説明ってすっげーわかりやすくて正確だろ?
お前達みたいなゴミグラマとはセンスが違うんだよ!
0684nobodyさん
2009/01/04(日) 19:13:26ID:hMI53W82こういう事がしたいんですが、出来ません。
プロパティでないと中括弧と変数を使った記法は出来ないのかと思いますが
どう書けば出来ますか?
0686nobodyさん
2009/01/04(日) 19:14:10ID:???0688nobodyさん
2009/01/04(日) 19:15:34ID:???おまえ、どれだけ悲惨な環境で育ったんだ?
今現在、少しは生活が良くなったのか?
だとしたら良かったな。 抑圧された悲惨な生活から何とか抜け出せたなら、次は知性とか教養を身につけないとな。
血の滲むような努力をしてきた君なら、きっと教養は身につけられるだろうから頑張れよ。
もしかしたら、その曲がりきった卑しい根性も、少しは矯正できるかもしれないぞ。
0689nobodyさん
2009/01/04(日) 19:17:03ID:hMI53W82事故解決しました勘違いでした。
0692nobodyさん
2009/01/04(日) 19:22:19ID:???h8sqfukwccm6c3i@yahoo.co.jp
0693nobodyさん
2009/01/04(日) 19:23:04ID:???底辺で生きてる奴はちょっと自分が優位だと思うと豹変するんだよねぇ。
些細なミスをした店員を執拗に罵倒してる客とかたまに見るけど、
普段怒られてばっかで、怒ることに慣れてないから必要以上に相手を罵っちゃうんだろうな。
加減が分からないって可哀想だよね。
0695nobodyさん
2009/01/04(日) 19:49:23ID:+Z0x0JrP0696674
2009/01/04(日) 20:47:58ID:csR3yzKg分かり易い解説ありがとうございました。
すっきりしました
お礼が遅くなり申し訳なかったです。
0698nobodyさん
2009/01/04(日) 22:47:43ID:???0699nobodyさん
2009/01/05(月) 00:56:51ID:g6qRsOWrフレームワークについてくるもので、
単独で使うものではない?(PDOのように)
0700nobodyさん
2009/01/05(月) 01:18:34ID:???単独で公開されてるORマッパだってあるし、フレームワーク付属のO/Rマッパだってそのまま単独で使える事が多い。
0701nobodyさん
2009/01/05(月) 03:26:50ID:g6qRsOWrドライバ、インストールするのはどうやるの?
0702nobodyさん
2009/01/05(月) 03:47:24ID:g6qRsOWr0703nobodyさん
2009/01/05(月) 07:04:48ID:???みんなにわかりやすくしたら反感買わないと思うよ?
答えが出たらそれで納得したのかどうかぐらいはレスした方がいいだろうし
前の質問に回答が出る前に別の質問立てたら、スパムだと思われるよ。
反感を買うために書いてるんならスルーしてくれていいけど
0704nobodyさん
2009/01/05(月) 08:44:11ID:???0705nobodyさん
2009/01/05(月) 14:19:36ID:SSLU+Cc/レンタルサーバーでセキュリティーの問題からallow_url_fopenがOFFになっており
getimagesizeで外部の画像の大きさ等の情報を取得できず困っています
curlを使いgetimagesizeみたいに画像情報を配列で返してくれる関数というのはあるのでしょうか?
それともcurlで1度画像をローカルに取得し、それをgetimagesizeするしか方法はないのでしょうか?
0706nobodyさん
2009/01/05(月) 14:57:59ID:???allow_url_fopen だって、内部的には一度画像をローカルに取得して、
サイズをとってるだけだよ。
0707nobodyさん
2009/01/05(月) 15:10:43ID:SSLU+Cc/ありがとうございます
curlで1度ローカルに画像を保存しても極端に重くはならないということですね
0708nobodyさん
2009/01/05(月) 17:28:48ID:???何かそのような関数はありますでしょうか?
継承したものも全て出力したいです
0709708
2009/01/05(月) 17:29:20ID:l+1z1H6j0710nobodyさん
2009/01/05(月) 18:09:47ID:???これでいけるはず
Reflection::export(new ReflectionClass('クラス名'));
0711nobodyさん
2009/01/05(月) 18:22:51ID:l+1z1H6jおーこれはスゴイ!
希望通りのものを取得できました
どうもありがとうございました
0712nobodyさん
2009/01/05(月) 18:49:49ID:2utmAeel編集する時の手順は
1:ファイルを読み込む
2:編集する箇所を置換(編集しない場合は元のデータを挿入)
3:編集後の内容を書き込み
と言った流れで良いのでしょうか?
それとも「指定行を更新」というような事が出来るのでしょうか?
0713nobodyさん
2009/01/05(月) 19:00:16ID:???編集手順はあってる
読み込んだ文字列から新たな文字列を作成してそれを書き込む
>それとも「指定行を更新」というような事が出来るのでしょうか?
配列に読み込めば擬似的に可能だけど
結局全て読み込んで新しい文字列を作って新規に書き込むという点は変わらない
0714712
2009/01/05(月) 19:36:16ID:???なるほど。では自分が712に書いた方法で作成していきます。
回答ありがとうございました。
0715nobodyさん
2009/01/05(月) 20:41:50ID:CQeOYLFzドキュメントルートに置くのはセキュリティ的によろしくないと聞いたので
ドキュメントルート直下に置きたいのですが相対パスが間違ってるって言われます;;
さくらインターネットを使ってます
ご存知の方よろしくおねがいします
0716nobodyさん
2009/01/05(月) 20:54:53ID:???0717nobodyさん
2009/01/05(月) 20:56:32ID:???0718nobodyさん
2009/01/05(月) 21:15:49ID:g6qRsOWrPDOつかわないでO/Rマッパー使った方がいいの?
その場合、O/Rマッパーは何を使えばいい?
0719nobodyさん
2009/01/05(月) 21:16:21ID:g6qRsOWrsqlite3のバージョンを調べるにはどうしたらいい?
0720nobodyさん
2009/01/05(月) 21:16:58ID:g6qRsOWrできればpublic_htmlと同じ階層においたほうがいい。
ブラウザで見れないところ。
0721nobodyさん
2009/01/05(月) 21:30:11ID:???0722nobodyさん
2009/01/05(月) 22:00:50ID:IAJIgrKJデザインパターンとは今PHPの現場では必須の技術ですか?
PHPで就職を考えてて今デザインパターンを勉強してるんですが
なかなか考え方に慣れなくて・・・
皆さん当たり前に使えるものなんですかね?
0724nobodyさん
2009/01/05(月) 22:09:16ID:CQeOYLFz>>717
絶対パスでも無理でした。
もう一度調べてきます。
0725nobodyさん
2009/01/05(月) 22:23:09ID:g6qRsOWrPDOとO/Rマッパーと、
どちらを使うべきか検討しているのだが、
(1)PDOのメリット
(2)PDOのデメリット
(3)O/Rマッパーのメリット
(4)O/Rマッパーのデメリット
をそれぞれ教えてくれ。
それと、もしO/Rマッパーを使うなら
CakePHPについているのと同じのを
使うつもりです。
0726nobodyさん
2009/01/05(月) 22:33:12ID:???ありがとうでした。
またお世話になります
0727nobodyさん
2009/01/05(月) 22:35:53ID:EpBVQO6BApacheは 2.2系でも大丈夫なんでしょうか?
PHPの本家マニュアルを見ると2.0系のことしか書いてありませんでした。
0728nobodyさん
2009/01/05(月) 22:51:07ID:???OOP自体からして覚束ない奴なんかも結構多いのがPHP開発者の実情だから大丈夫。
流石にクラスの概念や継承などといった機能はわからないとしんどいかもしれないが、そこも職場次第。
そういった基本さえ分かってれば、経験を積めば難しいパターンも使いこなせるようになる。
問題は、いつ何を使うかだからな。「あ、なんかこれってアレに近いかも」とか思える程度に記憶の片隅にあればじゅうぶん。
OOPの基礎がしっかりしてりゃ、後からパターンを取り入れるようなリファクタリングすればいいだけの話だしな。
>725
手続き型に近い書き方をするならPDOと相性がいい。
関数型言語に近い書き方ならO/Rマッパ。
O/Rマッパの利点はコード記述量が少なくて済む事。
欠点はちょっと複雑な事をしようとするとすぐ生SQL書かないといけなくなる事。
掲示板のような、DBアクセス部が簡単なものはO/Rマッパが向いている。
経理処理など、複雑なデータ処理が入るなら最初からPDO経由でSQLを書いたほうがいい。
0729nobodyさん
2009/01/05(月) 23:07:49ID:iF7qEbUz詳しい方教えてください。おながいします。
0730nobodyさん
2009/01/06(火) 00:11:46ID:W/IomqEGhttp://plaza.rakuten.co.jp/webservice/2000
これしか見当たんない。
0731nobodyさん
2009/01/06(火) 02:34:14ID:rh+yNOKsSQLiteのバージョンの確認をしたいんだが、
どうやったらいいんだ?
自分のパソコンの中にあるSQLiteのバージョンの
確認だったら
http://www.dbonline.jp/sqliteinstall/install/index3.html
この方法でできるんだが、
レンタルサーバーの場合は、どうしたらいいんだ?
0732nobodyさん
2009/01/06(火) 02:36:59ID:???鯖サイトチェックするか、問い合わせしてみたら?
0733nobodyさん
2009/01/06(火) 02:48:32ID:???0734nobodyさん
2009/01/06(火) 02:57:21ID:rh+yNOKsSQLite3はexeを一個置くだけでインストール完了するので、
自分で勝手に自分のディレクトリにアップロードすると
いうのではダメなのかな?
サーバー側が置いたSQLiteが優先されてしまう?
0738nobodyさん
2009/01/06(火) 03:42:31ID:???0739nobodyさん
2009/01/06(火) 03:45:38ID:???phpinfoで確認しろ雑魚
聞けば解決すると思ってるゆとりだから
phpinfo見ればわかりそうだということも予測できない
いつまでたっても成長しない
0740nobodyさん
2009/01/06(火) 03:53:25ID:rh+yNOKsphpinfoのどこを見ればいい?
0741nobodyさん
2009/01/06(火) 04:00:06ID:???0742nobodyさん
2009/01/06(火) 04:27:51ID:rh+yNOKsSQLite support enabled
PECL Module version 2.0-dev $Id: sqlite.c,v 1.166.2.13.2.11 2008/12/01 12:28:27 felipe Exp $
SQLite Library 2.8.17
SQLite Encoding iso8859
↑これの中のどこを見ればいい?
0743nobodyさん
2009/01/06(火) 04:28:59ID:???ここ最近DB板のSQLiteスレでも迷惑を掛けてるガチキチと同一人物
0744nobodyさん
2009/01/06(火) 04:32:20ID:rh+yNOKs●PDOのドライバ名は、SQLite2がsqlite2で、SQLite3がsqlite
↑これどうにかならないのか??,
0746nobodyさん
2009/01/06(火) 07:17:12ID:???0747nobodyさん
2009/01/06(火) 10:08:08ID:???0748nobodyさん
2009/01/06(火) 13:22:09ID:???abstract class parent{
abstract function _exe();
static function exe(){
self::_exe();
}
}
class child extends parent{
static function _exe(){
echo 'child';
}
}
呼ぶと、Cannot call abstract method parent::_exe(); ってエラーをはいてしまう。
self:: を子クラス内で呼ぶとなぜか親クラス内のメソッドが呼ばれてる。
子クラスにもう一度、exeメソッドを定義しなおすしかありませんか?
0749748
2009/01/06(火) 13:22:40ID:d951qjNM0750748
2009/01/06(火) 13:24:23ID:d951qjNM連レスすみません。
child::exe(); を実行すると Cannot call abstract method parent::_exe(); が出てきます。
0751nobodyさん
2009/01/06(火) 13:33:44ID:???exe()が実際に書かれたクラスはabstractだよね。だから、selfはabstractクラスを指している。
abstractクラスのabstractメソッドは呼べないから、そのまんまだけど?
0752748
2009/01/06(火) 13:35:04ID:d951qjNMマニュアルにあったのね。
遅延静的束縛
ttp://jp2.php.net/manual/ja/language.oop5.late-static-bindings.php
とりあえず、5.3.0までダメなのか……。
どうしたものか。
0753nobodyさん
2009/01/06(火) 13:35:41ID:???遅延静的束縛が使えるといいんだけどねぇ。
0754nobodyさん
2009/01/06(火) 13:36:51ID:???0755748
2009/01/06(火) 13:53:28ID:d951qjNM>>754
abstractを外してもエラーを吐かなくなるだけで、親の _exe(); を呼んじゃって解決には至らないようです。
static を外して、インスタンス化して使うか、継承先のクラス全てに self::exe_(); を書いてやるしかないみたいです。
ありがとうございました。
0756nobodyさん
2009/01/06(火) 14:26:42ID:???0757nobodyさん
2009/01/06(火) 16:39:12ID:QYoVUecWttp://www.yourlifehost.jp/tag-%E5%8A%A0%E5%B1%B1%E7%94%B1%E8%A1%A3-page1.html
↑このurlに繋ごうとすると
ごちゃごちゃした文字化けみたいなページが表示されます。
urlencodeされた文字列となんか関係あるのかなーと思って↓みたいなurlに繋ぐとまともに表示されます。
ttp://www.google.co.jp/search?hl=ja&q=%E4%BC%8A%E9%9B%86%E9%99%A2&lr=&aq=f&oq=
なぜこうなるのかどなたか解る方教えていただけないでしょうか・・・。
<?
$url = "http://www.yourlifehost.jp/tag-%E5%8A%A0%E5%B1%B1%E7%94%B1%E8%A1%A3-page1.html";
$n_ch = curl_init();
curl_setopt($n_ch,CURLOPT_URL,$url);
$n_output = curl_exec($n_ch);
curl_close($n_ch);
print $n_output;
?>
0758nobodyさん
2009/01/06(火) 17:03:48ID:???0759nobodyさん
2009/01/06(火) 17:08:27ID:???Accept-Encoding: gzip,deflate
0760nobodyさん
2009/01/06(火) 17:17:29ID:QYoVUecWお早いレスありがとうございます。
curl_setopt($n_ch,CURLOPT_ENCODING,'gzip,deflate');
を追加したら見れるようになりました。
本当にありがとうございました。
あとエロサイトですいません。
0761nobodyさん
2009/01/06(火) 17:33:30ID:uURjk+bM0762nobodyさん
2009/01/06(火) 18:19:15ID:6vEbKfuNhttp://www.php.net/download-docs.php
http://jp2.php.net/get/php_manual_ja.chm/from/a/mirror
HTML Help file(chm)形式だと左のメニューが文字化けしちゃうのは俺だけ?
(見た目UTFで表示しているっぽいが)
環境はXPSP3、IE6 ファイルはダウンロードして使っている。
俺が持っている1年以上前の古い奴だと大丈夫なのよね。
0763nobodyさん
2009/01/06(火) 20:22:34ID:???一応古い記事だがこんなのを見つけた
http://kinshachi.ddo.jp/blog/comp/archives/000548.html
0764nobodyさん
2009/01/06(火) 20:33:39ID:rh+yNOKs$a=sqlite_libversion();
print $a;
?>
これを実行すると、
2.8.17
と表示されるんだが、どういう意味なんだ?
MS-DOSプロンプトでしらべたら、
3.6.8
とかって表示されるんだが?
0765nobodyさん
2009/01/06(火) 20:34:11ID:rh+yNOKsってどういう意味なんだ?
0766762
2009/01/06(火) 23:10:11ID:6vEbKfuNありがとう。
0767nobodyさん
2009/01/07(水) 19:03:35ID:???パスを通すって行為も
考えなしにやると危険なんだな。
「※ディレクトリにパス通すからには、/
home/自分のID/local/binとかに限って
おいた方が安全です。全部に通しちゃ
うと、ファイル名が一致したら実行しちゃ
うから「ヤバイよヤバイよ」って周りから
後ろ指差されてしまいます。例えばアッ
プローダーとか作ってて、lsって名前で
誰かが悪意のあるバイナリとか実行可
能なスクリプトをUPして、優先順位が自
分のディレクトリの方が上ならlsした瞬間
にウィルスに感染しちゃったりするかも
です。まず無いけど。」
0768nobodyさん
2009/01/07(水) 19:17:13ID:???0769nobodyさん
2009/01/07(水) 21:19:21ID:i9Jnyed+サイト内検索バーはどうやって作ったらいいんでしょうか?
0771nobodyさん
2009/01/08(木) 16:09:27ID:zDlTPy6Nという日時が変数に入っているとして、
2009年01月08日 16:10:00
と言うように書式化して表示するにはどうすれば良いのでしょうか?
0772nobodyさん
2009/01/08(木) 16:13:37ID:???0773nobodyさん
2009/01/08(木) 16:27:08ID:???preg_splitとvsprintfを使うんでなくて?
0774nobodyさん
2009/01/08(木) 16:32:53ID:???echo $date_set[1]."年".$date_set[2]."月".$date_set[3]."日"." ".$date_set[4].":".$date_set[5].":".$date_set[6];
これで出来ました。ありがとうございました。
0775nobodyさん
2009/01/08(木) 16:51:15ID:???0776nobodyさん
2009/01/08(木) 19:33:02ID:???0777nobodyさん
2009/01/08(木) 19:50:02ID:???0779nobodyさん
2009/01/09(金) 01:03:41ID:???ウェブプログラマーって貧相な知識を出し惜しむよな
0780nobodyさん
2009/01/09(金) 01:23:45ID:???小型案件→PHP多い→単価安い→人こない→ダメグラマの吹き溜まりに
0781nobodyさん
2009/01/09(金) 02:10:45ID:???日付型は頻繁に使うので、専用のクラスを自作する事をオススメする。
1アプリ内でもよく使うだろうし、他のスクリプトで丸ごと使い回す事も多い。
date同様のフォーマット指定ができるようにしておくと、入力形式さえ拡張すれば長く使える。
$my_date = new MyDate('20080109020800');
$my_date->date('Y年m月d日 H:i:s');
とかな。
>776
DateTimeという標準クラスが存在する。PHP5.いくつ以降とかかもしれないけど。
やり方がキモいものの「1月後」とかを一発で表現できるのでそれなりに便利。
0782nobodyさん
2009/01/09(金) 02:37:42ID:???0783nobodyさん
2009/01/09(金) 03:00:58ID:GUFSqjMC【PHPのバージョン】PHP 5.2.0-8+etch13
【連携ソフトウェア】なし
【質問内容】
多重のarrayから、値を取り出したいのですが、どうするのが一番よいでしょうか?
今は、foreachで展開して、array_valuesで取り出しているのですが、何となく
もったいない事をしている気がします。
<元のarray>
(
[0] => Array
(
[User] => Array
(
[user_id] => 175
)
)
[1] => Array
(
[User] => Array
(
[user_id] => 651
)
)
)
<最終的に求めたいarray>
(
[0] => 175
[1] => 651
(
0784nobodyさん
2009/01/09(金) 03:07:27ID:???0785nobodyさん
2009/01/09(金) 07:03:33ID:???それはいいとして、array_reduceがオススメ。
コールバックで仕様を決定できる。
0786nobodyさん
2009/01/09(金) 07:30:07ID:???>783 にしろ、
難しく考えすぎないようにしましょうね。
答えは意外すぎるほどシンプルなことが多いので。
可読性もあがりますよ。
0787nobodyさん
2009/01/09(金) 07:48:02ID:???0788nobodyさん
2009/01/09(金) 18:49:55ID:zD5plmHnという連想配列を降順にして
ccc
aaa
bbb
と並べ替えたいのですが、どうすればいいのでしょうか?
rsort($array)だとおかしくなります。
0789nobodyさん
2009/01/09(金) 18:54:17ID:???0791nobodyさん
2009/01/09(金) 19:15:41ID:egjc87dJSQLite3に接続できるの?
0792nobodyさん
2009/01/09(金) 19:16:16ID:egjc87dJSQLite2を使うか、SQLite3を使うか、
選択しないとダメなの?
0793nobodyさん
2009/01/09(金) 19:17:02ID:egjc87dJSQLite2なので、普通にPHPネイティブの
SQLite関数を使うと、SQLite2に接続しにいくの?
0794nobodyさん
2009/01/09(金) 19:17:36ID:egjc87dJ0795nobodyさん
2009/01/09(金) 19:18:15ID:egjc87dJ自分でインストールするの?
パスの通った場所にsqlite3.exeを置いておけば
それを読みに行くの?
0796nobodyさん
2009/01/09(金) 19:19:22ID:egjc87dJレンタルサーバーでも、パスの通った場所に
sqlite3の実行ファイルを置いていけば、
pdoでsqliteって書いたときに、それを読みに行くの?
でも、レンタルサーバーの場合、パスが
どこに通っているかなんて、知ることはできるの?
0797nobodyさん
2009/01/09(金) 19:21:29ID:egjc87dJ使ってるレンタルサーバーがPDO+MySQLに対応してないので、
しかたなくMDB2を勉強しようと思ったんだけど、せっかく知識を得ても
sqlite3には流用できないとか、時間の無駄じゃん
0798nobodyさん
2009/01/09(金) 20:16:02ID:???0799nobodyさん
2009/01/09(金) 20:59:40ID:???このマニュアルどういう意味だろう?
PDO は、データアクセスの抽象化レイヤを提供しま
んねん。 ゴチャゴチャゆうとる場合やあれへん,要
は、使用しとるデータベースが何であるかにかかわら
ず、同じ 関数を使用してクエリの発行やデータの取
得が行えるちうことや。 PDO は、データベースの抽象
化を行うのでは おまへん。ゴチャゴチャゆうとる場合
やあれへん,要は、SQL を書き直したり 存在せん機
能をエミュレートしたりはせんちうことや。
0800nobodyさん
2009/01/09(金) 21:04:04ID:egjc87dJここのページ見ながら勉強しているのだが、
<?php
/* PDO データベースハンドルの生成 */
try {
$dbh = new PDO('sqlite:test.db','', '');
} catch (PDOException $exception){
echo "PDO生成時:";
echo $exception->getMessage();
echo "n";
exit();
}
/* エラーモードの設定(例外処理を有効) */
$dbh->setAttribute(PDO_ATTR_ERRMODE, PDO_ERRMODE_EXCEPTION);
/* テーブルの作成 */
/* idをプライマリ宣言し自動シーケンス */
$query = <<<QUERY
CREATE TABLE account_tbl (
id INTEGER,
number INTEGER,
name VARCHAR(64) NOT NULL,
email VARCHAR(128),
PRIMARY KEY (id)
);
QUERY;
0801nobodyさん
2009/01/09(金) 21:04:06ID:???0802nobodyさん
2009/01/09(金) 21:05:25ID:egjc87dJ$dbh->query($query);
} catch (PDOException $exception){
echo "テーブルの作成時:";
echo $exception->getMessage();
echo "n";
}
/* ステートメントの生成 */
$query = "INSERT INTO account_tbl (number,name,email) VALUES (:number,:name,:email) ";
$stmt = $dbh->prepare($query);
ここまでは、エラーもなく、問題なく実行できた。
データーベースも作成されてるし、
SQLiteManagerで読み込みもできた。しかし、
次の段落をソースコードに含めると、エラーになってしまう。
/* バインド変数を設定 */
$stmt->bindParam(':number',$number, PDO_PARAM_INT);
$stmt->bindParam(':name', $name, PDO_PARAM_STR, 64);
$stmt->bindParam(':email', $email, PDO_PARAM_STR, 128)
↑これ。この3行を入れると、エラーになる。
0803nobodyさん
2009/01/09(金) 21:06:49ID:egjc87dJWarning: PDOStatement::bindParam() expects parameter 3 to be long, string given in C:\xampp\htdocs\1.php on line 35
Notice: Use of undefined constant PDO_PARAM_STR - assumed 'PDO_PARAM_STR' in C:\xampp\htdocs\1.php on line 36
Warning: PDOStatement::bindParam() expects parameter 3 to be long, string given in C:\xampp\htdocs\1.php on line 36
Notice: Use of undefined constant PDO_PARAM_STR - assumed 'PDO_PARAM_STR' in C:\xampp\htdocs\1.php on line 37
Warning: PDOStatement::bindParam() expects parameter 3 to be long, string given in C:\xampp\htdocs\1.php on line 37
---------------------------------------------------------------
↑こうなってしまう。なんで?
0804nobodyさん
2009/01/09(金) 21:09:10ID:egjc87dJ入れたらnoticeは消えた。
Warning: PDOStatement::bindParam() expects parameter 3 to be long, string given in C:\xampp\htdocs\1.php on line 35
Warning: PDOStatement::bindParam() expects parameter 3 to be long, string given in C:\xampp\htdocs\1.php on line 36
Warning: PDOStatement::bindParam() expects parameter 3 to be long, string given in C:\xampp\htdocs\1.php on line 37
------------------------------------------------------------------------
↑現在の状況はこんな感じだ。
大佐、指示をくれ。
0805nobodyさん
2009/01/09(金) 21:10:26ID:egjc87dJこれの意味がわからん。
「3番目のパラメーターはlong型を期待してたのに、違う」
って意味か?
0806nobodyさん
2009/01/09(金) 22:04:42ID:YWm/UfgkRSSから各記事をパースした後
$entry->title
$entry->link
$entry->date
等のtitle,link,date以外のプロパティ名?一覧が欲しいのですが
どのようにして調べるんですか?お願いします。
0807nobodyさん
2009/01/09(金) 22:27:22ID:???0809nobodyさん
2009/01/10(土) 00:45:56ID:???モバイルエンジニア
情報更新日:2008/12/26 掲載終了予定日:2009/02/05
エンタメ系から企業サイトまで、質の高いサイトやコンテンツの企画・制作から運営を手がけています
平均年齢27歳、社内は若いエネルギーに満ち溢れて、笑顔が絶えません。雑談の中から良い案が浮かぶことも!
上場を視野に入れ、安定した大企業を目指し急成長!
世界でヒットするモバイルコンテンツを仙台から発信!
当社はモバイルインターネットの世界に特化した、設立5年目の仙台で立ち上がった企業です。
仙台にいながら、大手クライアントの依頼に「技術」で挑戦できるのが大きな魅力!
本年度は実力が認められ、「第7回モバイル広告大賞 アド・クリエーティブ部門」で入賞を果たしました。
さらに、2008年夏以降、自社サイトの開発・運営もスタート!
3年後の株式上場を目指し、飛躍の時期を迎えています。
【モバイルで地域貢献】━、これは我々の企業理念です。
PC向けの縮小版のような位置づけを脱却し、モバイルだからこそできる独自の良さを生かした、
世界でヒットするようなサービスを、ここ東北の地から発信していきませんか!
0810nobodyさん
2009/01/10(土) 00:46:35ID:???誰もが知る大きな会社の大きな案件、さらに自社サイトの開発と、
仲間と夢中になって挑戦できる社風です!
プロジェクトのマネージメントをお任せいたします!
今回は、開発案件のマネージメントをお任せできる技術者の方を募集し
ております。
現在、数名のプログラマーがおりますが、メンバーのリーダー的存在と
して、プロジェクトやリソースの管理および仕様の設計などをしていただ
きます。
――【この仕事の醍醐味は?】
「エンドユーザの視点で常に新しいものを要求されるので、挑みがい
があります!」と開発技術者。
スピード感が重要な世界だけに、タイトなスケジュールを強いられるこ
ともありますが、
その分、完成した時の達成感は大きく、責任ある立場での仕事にや
りがいを感じていただけるはずです。
躍進中の会社で、入社後すぐに大型案件に挑戦できる!
■モバイルの世界に特化し、さらに株式上場を目指す会社は東北で
は当社が随一!
■モバイル業界はまだまだこれから大いに成長させることができる業
界!
■仙台にいながら、世界を動かすモバイルコンテンツの開発に挑戦で
きる!
0811nobodyさん
2009/01/10(土) 00:47:12ID:???■歓迎するスキル
・PHPとMySQLの実務経験のある方
・プロジェクトマネージャー、システムエンジニアなどの実務経験のある方
★複数の技術スタッフのリーダーとして、
大型プロジェクトのマネージメントに、あなたの実力を発揮してください。
こんなマインドの方大歓迎!
・前向きに、自主的に仕事に取り組んでいこうという意欲、さらに機動力のある方
・「地方経済を活性化させたい」という意欲のある方
・新しい仕掛けを世の中に発信したいという方
・ユーザーに「大きな歓びを与えたい」という熱意のある方
・会社の成長を自分の成長に重ね、チャレンジできる方
0812nobodyさん
2009/01/10(土) 00:48:09ID:???■本社
仙台市宮城野区榴岡5丁目12-55
NAViS仙台ソフトウェアセンター5F
※I・Uターン歓迎!!
勤務時間
■フレックスタイム制
(標準労働時間8時間/コアタイム10:00〜14:00)
給与
■月給21万〜35万円
※年齢、経験、能力を考慮の上、優遇します!
昇給・賞与
■昇給/半期評価制度(6ヶ月に1度、給与改訂あり)
諸手当
■交通費支給(1,000円/日まで)
休日・休暇
0813nobodyさん
2009/01/10(土) 00:49:46ID:???■完全週休2日制(土・日)
■祝祭日
■夏期休暇
■年末年始休暇
福利厚生
■各種社会保険完備
モバイル業界未経験者も大歓迎!
・当社はモバイル未経験者が大半を占めています
・入社一年で、都内で講演を行うまでにいたった技術者や、
クライアントから次々に指名される20代のディレクターも!
・面接であなたの意欲をアピールしてください!
・Iターン・Uターン希望者も大歓迎です!
0814nobodyさん
2009/01/10(土) 00:50:20ID:???当社は、これまでナショナルクライアントからの受託大型案件を中心としてき
ましたが、3年後の株式上場を視野に入れ、永続的な安定を目指すのと同時
に、「ユーザーに直接大きな歓びを与えたい。感動を与えたい。幸せにしたい
」といった思いから、自社サイトの開発をスタートさせました。
モバイルの世界では、革命的におもしろいというコンテンツが実はまだありま
せん。そんなコンテンツを仙台から発信したい。世界を突き動かすようなコンテ
ンツを自分達の手で発信したい。そんな思いでチャレンジし続けていくのが当
社です。こうしたマインドを共有しながら、コンテンツのイノベーションを私達と
一緒に巻き起こしてみませんか!
0815nobodyさん
2009/01/10(土) 00:51:54ID:???2004年1月23日
代表者
代表取締役社長 / 小泉拓学(こいずみたくみち)
従業員
25名
資本金
25,050千円(2008年12月現在)
売上高
134,000千円(2008年1月決算)
事業内容
モバイルインターネットの企画、制作業
携帯電話で閲覧するモバイルサイトの開発やデザイン、およびFlashゲームや着信メロディなどのコンテンツを制作しています。
■プロダクト事業(BtoB)
東京のクライアントから、キャンペーンサイトなどの制作を請け負っています。
当社はモバイル専門でサイト、コンテンツを制作できる会社として、東京の企業から高い評価を得ている、業界では知る人ぞ知る制作会社。
0816nobodyさん
2009/01/10(土) 01:00:10ID:???0818nobodyさん
2009/01/10(土) 03:16:52ID:izg33gvC1兆円までしか表示できないんだけど、
100兆円単位のアプリ作りたいんだけど、
どうしたらいいの?
0820nobodyさん
2009/01/10(土) 03:37:24ID:izg33gvC<?php
$a = '99999999999923456789012';
$b = '999999999999923456789012';
echo bcadd($a, $b);
?>
数値でなくて、文字列として格納して、
BCMathで足すってこと?
ずいぶんとめんどくさいね。
それに数値なのに文字列扱いするのも感覚的におかしい。
0821nobodyさん
2009/01/10(土) 04:40:06ID:???0822nobodyさん
2009/01/10(土) 05:08:32ID:???0824nobodyさん
2009/01/10(土) 08:37:29ID:???0825nobodyさん
2009/01/10(土) 09:49:41ID:iaOWyvQZfunction b(){$this->c();}
function c(){$this->d();}
function d(){
//なんかエラーだった場合とか、
if($error){
//これを$retに返したい
return 'error';
}
}
}
$a=new A();
//ここに返したい
$ret=$a->b();
普通にA::bとA::cにif書く以外に、
なんかA::dからAの外側に一気に脱出するようなのはないでせうか。
0826nobodyさん
2009/01/10(土) 09:54:31ID:???0827nobodyさん
2009/01/10(土) 10:23:28ID:???目的はエラーを伝播できりゃいいんだな?
http://www.php.net/manual/ja/language.exceptions.php
0828nobodyさん
2009/01/10(土) 10:30:47ID:???0829nobodyさん
2009/01/10(土) 11:22:46ID:???エラーを伝えたいという目的を仮定して、その手段として例外処理を紹介してる
文脈を読めねぇ奴だな
0830nobodyさん
2009/01/10(土) 11:24:21ID:B2TbfON6array(ラーメン,そば,うどん,パスタ)
という配列があって
配列から一つ取り出す時に
全て同じ確率ではなく
ラーメンを50%の確率で取り出したいのですが
いいアイディアありませんか?
0831nobodyさん
2009/01/10(土) 11:26:21ID:???0833nobodyさん
2009/01/10(土) 11:57:13ID:???残念ながら間違い(キリッ
とかタイプする暇があるなら理由でも書いたらどうだ
間違いなんだろ?なら正してこそ意義がある
0835nobodyさん
2009/01/10(土) 13:28:28ID:???/*log.txt*/
123<>あいうえお<>12345
122<>かきくけこ<>67890
121<>さしすせそ<>111213
てログで「67890」を検索してその行数と1行を抜き出すにはどんなのを使えばいいんでしょう。
0836nobodyさん
2009/01/10(土) 13:40:12ID:wVuPrAmV【PHPのバージョン】php5.2.8
【連携ソフトウェア】なし
【質問内容】
floor(5.57*100)を計算すると、浮動小数点数の丸め誤差
で56が返ってくるんですが、これの回避はどうすればいい
んでしょうか?
他言語を使っていたときは、予め100倍しておいた値を整数演算で処理したり、
十進型を使ったりしてたんだけど、
phpの場合はどうやったらスマートに解決できますか?
なお、GMPは入っていません。
0837nobodyさん
2009/01/10(土) 14:46:47ID:???56はなんかおかしいんじゃね?
0841nobodyさん
2009/01/10(土) 14:52:25ID:izg33gvC(1)
データーベースに格納してSQL文で検索する
(2)
クヌースの2000ページの「データーの構造とアルゴリズム」を
買って6ヶ月かかって読む
0844836
2009/01/10(土) 15:04:23ID:wVuPrAmVfloor(5.57*100)ではなくfloor(0.57*100)の間違いでした。
それ以外に、floor(0.29*100)なども28といった期待と違う結果になります。
手元にlinux(debian4.0+php5.2.0)が有ったので、
そちらでも試しましたが同じ結果でした。
0846nobodyさん
2009/01/10(土) 15:09:58ID:???/*log.txt*/
123<>あいうえお<>12345
122<>かきくけこ<>67890
121<>さしすせそ<>111213
$fh = file('log.txt');
for($i=0;$i < count($fh);$i++){
list($id,$str,$hoge) = explode('<>',$fh[$i]);
if($hoge == '67890'){
// 行そのものは $fh[$i]; 行数は$i
}
}
こんな感じでいいならこんなの。
しっかり動くかは知らない。動かないようなら微調整してくれ。
>>841の言うようにSQL使うのも確実でいいと思う。どっちが手間が簡単かは知らない。
本については知らない。
0847nobodyさん
2009/01/10(土) 15:10:20ID:???http://jp.php.net/float
0849nobodyさん
2009/01/10(土) 15:36:23ID:???まだSQLを手に出せるほどのスキルがないので>>846 さんのものを参考に駆使してみたいと思います。
でもやはりSQLが使える方が便利そうですね。
今年の課題にします。
0850nobodyさん
2009/01/10(土) 16:20:34ID:???PHPや他の言語に関わらず、浮動小数点にIEEE 754を採用してる限り無理でしょう
BCMathも使えないのかな?そうなら整数演算で工夫するしかないね
>>845
「エラーの通知に例外を使う」に対して「それは間違い」と
自分が新たな問題提起しておいて人のせいかよ…ないわ
0851nobodyさん
2009/01/10(土) 17:08:52ID:izg33gvC$dbh = new PDO('sqlite:test.db','', '');
$stmt = $dbh->prepare("INSERT INTO REGISTRY (name, value) VALUES (:name, :value)");
$stmt->bindParam(':name', $name);
$stmt->bindParam(':value', $value);
// 行を挿入します
$name = 'one';
$value = 1;
$stmt->execute();
?>
このコードを実行したところ、
Fatal error: Call to a member function bindParam() on a non-object in C:\xampp\htdocs\1.php on line 4
というエラーが出る。どうしたらいいか。
0852nobodyさん
2009/01/10(土) 17:32:28ID:???if($abcd == $aa)
とするとうまくいかないので
/*$aa = "$".$bb;*/
if($abcd == $$bb)
とするのはなにか問題あるのでしょうか?
0855nobodyさん
2009/01/10(土) 21:10:42ID:izg33gvC<?php
try {
$pdo = new PDO("sqlite:ggg");
$stmt = $pdo->prepare("INSERT INTO CD(ID, TITLE, CONTENT) VALUES(:ID, :TITLE, :CONTENT)");
$stmt->bindParam(":ID", $id);
$stmt->bindParam(":TITLE", $title);
$stmt->bindParam(":CONTENT", $content);
$id = 16;
$title = "HEXDUMP";
$content = "Hex Dump Music";
$stmt->execute();
}
catch (PDOException $e){
var_dump($e->getMessage());
}
?>
SQLiteManagerであらかじめ
SQLite直下のフォルダにgggというSQLite3データーベースを作って、
テーブルを作って、それをソースフォルダにコピーしたら動いた。
プリペアードステートメントも動いているし、完璧。
WOOHOO
0856nobodyさん
2009/01/10(土) 21:11:47ID:izg33gvCちなみにここのコードを参考にした。
MySQLの部分をSQLiteに変えただけ。
0859nobodyさん
2009/01/10(土) 21:52:53ID:???0861nobodyさん
2009/01/10(土) 21:59:16ID:izg33gvCあまりにも感動なので
これを機にブログを
立ち上げようと思うのだが、
お前らも意見を述べてもらいたい。
0862nobodyさん
2009/01/10(土) 22:41:35ID:???くだらない質問でもど偉そうに聞いていいスレ
http://pc11.2ch.net/test/read.cgi/php/1158647441/
0864nobodyさん
2009/01/10(土) 23:01:51ID:f16K+jwDローカルではうまく動いてくれていたんですが、アップロードしたら
Fatal error: Class 'Pager' not found in 〜 on line 236 というエラーが出てしまいます。
require_once 'Pager/Pager.php';
$params = array(
'itemData' => $data,
'perPage'=> 20,
"curPageSpanPre" => '<span class="current">',
"curPageSpanPost" =>'</span>'
);
$pager = & Pager::factory($params); ←←236行目
$pages = $pager->getPageData();
$links = $pager->getLinks();
foreach ($pager->getPageData() as $val) {
echo $val ;
}
なんとか動くように出来ないでしょうか??
0865nobodyさん
2009/01/10(土) 23:06:29ID:???エラー文を読んでる?
>Fatal error: Class 'Pager' not found in 〜 on line 236
致命的なエラー: Pagerクラスが見つかりません (〜の236行目)
0866nobodyさん
2009/01/10(土) 23:08:32ID:???これで読み込んでいるのでは?
0867nobodyさん
2009/01/10(土) 23:13:04ID:???なんで些細な手間を惜しむんだ
0868nobodyさん
2009/01/10(土) 23:13:20ID:izg33gvCこれのサンプルコードを探してるんだが、見つからない。
なんで?
0869nobodyさん
2009/01/10(土) 23:14:41ID:izg33gvC英語の掲示板で英語で質問したらすぐに回答がきた。
やっぱりジャップはクズだな。
プログラミングの質問するなら、アメリカ人だな。
0870nobodyさん
2009/01/10(土) 23:16:30ID:???日本のコミュニティにも手取り足取り教えてくれる
奇特な場所があったりするぞ
お前のように根絶丁寧に教えて欲しい人は
そもそも2ちゃんねるに向いてない
0871864
2009/01/10(土) 23:24:35ID:f16K+jwDコメントありがとうございます。中身とはこれでしょうか??
<?php
/**
* Dummy file, used to maintain backward compatibility.
* The real file was moved to the PEAR root directory
*
* PHP versions 4 and 5
*
* @category HTML
* @package Pager
* @author Lorenzo Alberton <l.alberton@quipo.it>
* @author Richard Heyes <richard@phpguru.org>
* @copyright 2003-2007 Lorenzo Alberton, Richard Heyes
* @license http://www.debian.org/misc/bsd.license BSD License (3 Clause)
* @version CVS: $Id: Pager_savebc.php,v 1.3 2007/10/28 22:37:01 quipo Exp $
* @link http://pear.php.net/package/Pager
*/
require_once 'Pager.php';
?>
見てもさっぱり分かりませんでしたorz
0874864
2009/01/10(土) 23:43:07ID:???サーバーの/home/〜/pear/PEARの下にPager/pager.phpがありました。
インクルードパスは
include_path=".:/home/〜/pear/PEAR"
となっているんですが、間違っていますでしょうか??
0876864
2009/01/10(土) 23:50:07ID:f16K+jwD0877nobodyさん
2009/01/10(土) 23:52:12ID:???/home/〜/pear/PEAR/Pager/pager.phpじゃん
0878nobodyさん
2009/01/10(土) 23:59:45ID:f16K+jwDFatal error: require_once() [function.require]: Failed opening required
'Pager/Pager.php' (include_path='.:/home/〜/pear/PEAR/Pager/pager.php')
in 〜 on line 227
という
require_once 'Pager/Pager.php'; ←←227
のエラーが出てきてしまいます。
0879nobodyさん
2009/01/11(日) 00:06:09ID:???0880nobodyさん
2009/01/11(日) 00:06:42ID:???0881864
2009/01/11(日) 00:23:00ID:Ab45eT410883nobodyさん
2009/01/11(日) 01:09:19ID:UKIH12nDにもともと入っていたPHP 4.3.9と新たにインストールした
mysql-5.1.30とを組み合わせようとしているのですが、
どうしてもうまくいきません。
いろいろ調べたところ、php-mysql-4.3.9 rpmというもの
をいれればうまく行きそうなのですが、
Red Hat Enterprise Linux ES 4におけるサポートが切れており
ネットを調べても手に入れることができなさそうです。。
また、php5にして、やってみるということも考えたのですが、
こちらもやってみているのですが、どうしてもうまくいかない。
(libphp5.soが入らないので、httpdと連携できない。これは
また上記とは違う問題と思うのですが。。)
まずは、php4で解決できればうれしいのですが、うまく解決する
方法があれば教えてください。
よろしくお願いいたします。
0884nobodyさん
2009/01/11(日) 01:40:36ID:???0885nobodyさん
2009/01/11(日) 01:54:58ID:iteb9xMWid=1で一個、データーを登録して、
そのあとに、さらにもう一回、
id=1で、別のデーターを登録しようとして、
やってみたんだけど、idをプライマリーにしてたんで、
当然2重登録はできなかったんだけど、
そんかわし、なんのエラーも出さないんだよな。
これって普通、エラーメッセージとか、
出してくれるものなんじゃないの?
0886nobodyさん
2009/01/11(日) 03:03:41ID:???PHP5で解決する方向でいくべき。
セキュリティ云々もそうだけど
なにより古過ぎて文献やネットやらの情報が役にたたない可能性大。
>libphp5.soが入らない
のはなんで?
0888nobodyさん
2009/01/11(日) 11:39:43ID:???0890nobodyさん
2009/01/11(日) 11:57:45ID:???特定のクエリストリング付きのURLでアクセスされた場合に、
そのクエリストリングの値のチェックを行い次の事をしたいと思っていますが
実現方法が分かりません。どの様にすれば良いでしょうか?
1.有効なURLの場合には、そのURL内のページを表示する。
2.不正なURLの場合には、強制的に他ページに飛ばす。
例)
http://www.test.php?id=123
↓誤っている場合
http://www.test2.php
0891nobodyさん
2009/01/11(日) 11:58:35ID:YC1y1My8すいません、どうもです
【OS名】Windows XP SP3
【PHPのバージョン】php5.28
【連携ソフトウェア】Nginx
【質問内容】
NginxとPHPを連携させてwindowsでリバースプロキシとして動かしたいんですが
マイナーなのかサイトがあまり見つからないのでここで質問させて下さい
0892nobodyさん
2009/01/11(日) 12:08:50ID:???誘導先はlinuxだが設定は変わんないのでここ見ればわかる
ttp://blog.bluegold.me/2008/11/nginx-php-fastcgi/
0894nobodyさん
2009/01/11(日) 12:12:55ID:YC1y1My80895nobodyさん
2009/01/11(日) 12:34:57ID:???イマイチ質問の意図がわからない
クエリストリングの値=$_GET ってことでおk?
だったら、$_GET で受け取った値を、preg_match() とかで判別し、
false なら error ページとかに飛ばせばいいのでは?
$_GET[unko] が全て数字じゃなかったらエラーメッセージを出力
if(!preg_match("/^[0-9]+$/", $_GET[unko])){
echo "お前うんこ";
exit;
}
0896nobodyさん
2009/01/11(日) 12:38:27ID:???添え字が定数(笑)
0897nobodyさん
2009/01/11(日) 12:44:45ID:???先生、エスパーっぽいっすね(笑)
おしえてくださいよ^^
まさか is_numeric とか言い出さないですよね?
まあ質問が整数かどうかわからないんですけどね^^
しったかはだまっとけカス
0898nobodyさん
2009/01/11(日) 12:46:06ID:???0900nobodyさん
2009/01/11(日) 13:38:30ID:YC1y1My8誘導先を参考に設定した所エラーも出ずttp://127.0.0.1/に繋ぐとNginxは動いてるんですが
ttp://localhost/phpinfo.phpには繋げずPHPとの連携がうまく出来ません
phpはWindows Binariesの5.2.8を使ってるんですが誘導先のサイトの
FastCGIのプロセスを以下のように〜が今ひとつ分かりません
Cドライブの直下にNginx、php両方のフォルダを置いている状態です
0901nobodyさん
2009/01/11(日) 13:44:32ID:iteb9xMW最大値を求めたりとか、SQLでもできるし、
PHPのネイティブ関数でもできるけど、
どっちを使うのが普通なの?
1,2,3ってデーターがデーターベースに入っていて、
それの平均値を求める場合、
データーベースから生データーを取ってきて、
それをPHPの関数で平均値を出すのか、
あるいは、
SQLの平均値を求める関数を使って、
先に平均値を出してから、PHPにもってくるのか。
どっちが普通のやり方なの?
0902nobodyさん
2009/01/11(日) 13:45:22ID:iteb9xMW「ジャップに聞いたけど、やつらレベルが低すぎて
回答できませんでした!」
って英語での説明もつけて!
0904nobodyさん
2009/01/11(日) 13:51:26ID:???0905nobodyさん
2009/01/11(日) 14:01:08ID:???なんでPEARのマニュアルって分かりにくいの?
mdb2使おうと思ったんだけどさっぱりだよ
0906nobodyさん
2009/01/11(日) 14:05:15ID:???0907905
2009/01/11(日) 14:34:38ID:???ちゃんと勉強してみます
0908nobodyさん
2009/01/11(日) 17:05:48ID:???和訳されてないパッケージも一杯あるしな。
と思ったら英語版じゃねえか。
誰かNet_GameServerQuery更新してくれんものだろうか。
0909nobodyさん
2009/01/11(日) 17:07:06ID:???0910nobodyさん
2009/01/11(日) 19:17:45ID:???0912nobodyさん
2009/01/11(日) 21:36:37ID:???0914783
2009/01/12(月) 02:39:51ID:Rm35EcoD教えて下さった方、ありがとうございます。お返事が遅くなってすみません。
>>784
ありがとうございます。
例では$array[0]、[1]としているのですが、$array[n] (nは不定の整数)の
場合はどうすればよいでしょうか。最初の例が悪くてすみません。
>>785
やはり、foreachは必要ですか。
多重の配列じゃなければ、arrya_valuesだけで値を抽出できたので、多重配列でも、
一発でできる方法があればと思ってお聞きしました。
下記URLを参考にarray_reduceの使い方を考えてみたのですが、今回のような条件の場合、
どう使っていいのか分かりませんでした。
http://phpspot.net/php/man/php/function.array-reduce.html
0915nobodyさん
2009/01/12(月) 02:42:28ID:KBrfsxKyこれの『/』にはどういう意味があるのかどなたかお教え下さい。
0916nobodyさん
2009/01/12(月) 02:51:55ID:???お前らが組んだシステム
賠償金払えよ
0918nobodyさん
2009/01/12(月) 05:52:50ID:???$base = array(0 => array('User' => array('user_id' => 175)),1 => array('User' => array('user_id' => 651)));
$test = array_reduce($base, "ar");
function ar($a, $v)
{
$a[] = $v['User']['user_id'];
return $a;
}
var_dump($test);
0919836
2009/01/12(月) 11:28:21ID:???>>847,850
お礼が遅くなってすみません。
サーバー環境が変更になる可能性があったので、
標準の機能だけしたかったのですが、BCMathを使う方向で考えて見ます。
ありがとうございました。
0920nobodyさん
2009/01/12(月) 13:11:41ID:5DjRG0n2掲示板でフォームに文字を入れてポストのボタンを押し、次のページに切り替わった後に
ブラウザの戻るのボタンを押してページを戻ると
フォーム内に入力した文字が消えてしまいます。
2chなんかだと文字は残っているみたいなんですが
この違いは何ですか?
postではなくgetだと残るのは確認しましたが
postで残せないでしょうか?
0922nobodyさん
2009/01/12(月) 13:31:00ID:???0923nobodyさん
2009/01/12(月) 13:31:32ID:???0924nobodyさん
2009/01/12(月) 13:45:07ID:???0925nobodyさん
2009/01/12(月) 14:02:12ID:???更新がなければキャッシュを表示してる
0926nobodyさん
2009/01/12(月) 14:16:36ID:???phpでSNSを構築できるマスか??
0927nobodyさん
2009/01/12(月) 14:56:32ID:???0928nobodyさん
2009/01/12(月) 14:57:53ID:Txgu2Ylvphpの実行結果はこのurlにアクセスすることでしか見れませんか?
また、Apache2.2/htdocsに保存した.phpファイルしか実行できないんでしょうか?
0929nobodyさん
2009/01/12(月) 15:23:52ID:???0930nobodyさん
2009/01/12(月) 15:57:17ID:???http://jp2.php.net/manual/ja/intro-whatcando.php
0931928
2009/01/12(月) 16:32:31ID:Txgu2Ylvのあとのファイルのディレクトリを変更したいんです
たとえばデスクトップにtest.phpをつくって
http://localhost/test.phpで実行結果を見るという風にです
どのファイルのドキュメントルートの記述を変更したらいいんでしょうか?
0932nobodyさん
2009/01/12(月) 16:38:06ID:???ガチか。apacheで設定すれば?
ローカルでしかアクセスしないなら、localhostのドキュメントルートをデスクトップに。
test.phpだけでいいなら、test.phpにaliasを貼るか、mod_rewrite
デスクトップにテスト領域を作るならディレクトリ掘ってそこにAlias
0933nobodyさん
2009/01/12(月) 17:20:29ID:???Apacheをリスタート後http://localhost/test.phpにアクセスしたんですがForbiddenになってしまいました
なにがいけないんでしょうか?デフォルトのディレクトリではちゃんと表示されるんですが・・・
0934nobodyさん
2009/01/12(月) 17:21:08ID:???0935nobodyさん
2009/01/12(月) 17:28:05ID:???ありがとうございます
<Directory "">を変更してしまったのは直さないとマズいですか?
くだらない質問しすぎで吸いません><
0936nobodyさん
2009/01/12(月) 18:21:26ID:???0937nobodyさん
2009/01/12(月) 19:25:40ID:Dw74hwuy【PHPのバージョン】php5
【連携ソフトウェア】apache2
【質問内容】
ファイル操作で
先頭から追加で書き込みたいのですが、
fopen("pegirama.txt","r+")
とかで書き込むと
上書きされて、今までの内容が消えてしまいます。
どうすれば上書きされずに先頭からカキコできますか?
0938nobodyさん
2009/01/12(月) 19:27:52ID:???0939nobodyさん
2009/01/12(月) 20:48:05ID:???上書きと追記2つつかって実現します。
0940783
2009/01/12(月) 21:29:12ID:Rm35EcoDおっしゃる通りです。私もそう思います。すみません。
>>918
こんな方法があるんですね。
ありがとうございます!
0941nobodyさん
2009/01/12(月) 23:55:57ID:???おれまじはんぱねー
0942nobodyさん
2009/01/13(火) 01:27:05ID:D2D40YVNでファイルを読み込んだのですが、TABが入っていて
そのまま出力しても見づらいです。
変数内のTABを一括で削除する方法はないでしょうか?
0944nobodyさん
2009/01/13(火) 02:59:26ID:???取得したカラムを変数にバインドするには、 PDOStatement::bindColumn を使用します。
って書いてあるのだが、
実際のコードは
$sql->bindColumn(1, $user_id);
ってなってる。
PDOStatement
って部分が抜け落ちているのだが、
これがOOPなのか?
0945nobodyさん
2009/01/13(火) 03:04:34ID:???0946nobodyさん
2009/01/13(火) 03:09:34ID:Qz7Qbc/9trimは試してみた?
0948nobodyさん
2009/01/13(火) 03:12:41ID:???0951nobodyさん
2009/01/13(火) 15:05:31ID:UfswTbQA<?php
$a = 1;
?>
<table>
<tbody>
とかを
<?php$a=1;?><table><tbody>
こういうふうにするやつね。
名前忘れたけどPOBS(?)とかいうやつで難読化したけど
HTMLが毎回ぶっ壊れるんだよね。なぜかは知らんから捨てた。
日本人が作ったフリーソフトとかで何かいいの無い?
0952nobodyさん
2009/01/13(火) 15:15:21ID:???$source = preg_replace("/(?:\r\n|\r|\n)/","",$source);
文字列の中に特定の文字が何文字含まれているか返してくれる関数ってありますか?
下のように出せるのですが関数やもって手軽なものあれば教えてください。
$moji = "あいうえおああいいてんきああ";
preg_match_all("/あ/",$moji,$matches);
echo count($matches[0]);
0953952
2009/01/13(火) 15:18:51ID:???ttp://okwave.jp/qa3034002.html
0954nobodyさん
2009/01/13(火) 15:35:04ID:50I9JJCG$info = $this->_mysqli->query($sql);
これで$infoに空のオブジェクトが返ってくるのはなぜでしょう?
$idにはちゃんと数値が入っているし、このsqlをphpMyAdminで
実行すると、ちゃんと結果が返ってきますが、PHPでやると空の
オブジェクトが返ります・・・。
0955nobodyさん
2009/01/13(火) 15:35:52ID:???0957nobodyさん
2009/01/13(火) 15:56:15ID:???日本語でOK
おちついてpreg_match_allのマニュアル嫁
$moji = "あいうえおああいいてんきああ";
echo preg_match_all("/あ/",$moji,$matches);
0960954
2009/01/13(火) 17:41:16ID:50I9JJCGbigint(20)のフィールドなので、いらないですね。。。
0961nobodyさん
2009/01/13(火) 17:59:47ID:???0963nobodyさん
2009/01/13(火) 18:24:54ID:???CGIゲーム作ってみたんだけど、どう?
0964954
2009/01/13(火) 19:03:28ID:???WHEREなしでも同じでした・・・。
>>962
mysqliオブジェクトですよ。
コンストラクタで $this->_mysqli = new mysqli('ホスト', 'ユーザ', 'パスワード', 'DB');
とやって、privateの$_mysqliにオブジェクトを入れてます。
0966nobodyさん
2009/01/13(火) 19:25:13ID:???mysqliオブジェクトなら、queryの返り値はboolだよね。
次に、->fetch_object()しないとオブジェクトは取れないでしょ?
0967nobodyさん
2009/01/13(火) 19:31:59ID:???あぁ、ちょっと?書いた。
SELECTの時は返り値は結果オブジェクト。
で
$result->fetch_object();で行がとれる。
0968nobodyさん
2009/01/13(火) 19:56:11ID:/s3q30uO【PHPのバージョン】php5.0以上
【連携ソフトウェア】特になし
【質問内容】
$hoge=new Hoge; $hoge->fuga();
これを、インスタンスを変数に代入することなく
(new Hoge)->fuga();
と書くと文法エラーになります。
しかし、メソッドを一回しか実行しない場合、わざわざ変数に入れたくありま
せん。
変数に代入せずに済ませる方法としては、
call_user_func(array(new Hoge, "fuga"));
というのを見つけましたが、これは冗長だし分かりにくいです。
何かほかに、変数に代入せずにメソッドを実行する方法はありませんか?
0969nobodyさん
2009/01/13(火) 19:57:19ID:???0970954
2009/01/13(火) 19:57:26ID:???>>967
ありがとうございます!
queryの説明に、SELECTのときは結果オブジェクトが返るって
あったので、それをそのまま使えると勘違いしていました・・・。
0972968
2009/01/13(火) 20:02:19ID:/s3q30uO> staticに
staticには呼び出せないメソッドなのです。
例としては cake の Model::find() です。
0973nobodyさん
2009/01/13(火) 20:12:49ID:???0975954
2009/01/13(火) 20:26:57ID:???var_dump($info)
で
object(mysqli_result)#3 (0) { }
と返ってくるんですけど、これは空とは違うのですか?
ともあれ、教えていただいた方法で結果は取れました。
0976nobodyさん
2009/01/13(火) 20:27:56ID:???0977968
2009/01/13(火) 20:49:25ID:/s3q30uOやっぱり無理ですか...。
>>974
その手間をかけるなら、あきらめて変数に代入するか、 call_user_func()を使っ
たほうが楽な気がします。
--
それにしても、自分はこれのできない言語は初めてです。たいていの言語では、
カッコでくくれば何とかなるのですが。
ほかにも、switch文の代用で
array("hoge"=>"ほげ", "fuga"=>"ふが")[$x]
などと書いたら動きませんでした。
$a = array("hoge"=>"ほげ", "fuga"=>"ふが");
$a[$x];
こう書かなければいけない。
どうもPHPのパーサは名前のないオブジェクトに弱い感じです。まあ慣れるしか
ないのでしょうが。
皆様、お教えいただきありがとうございました。
0978nobodyさん
2009/01/13(火) 20:55:25ID:???0980968
2009/01/13(火) 21:13:46ID:/s3q30uO行数の節約はわりとどうでもよくて、不要な変数が名前空間に存在することが
自分は好きでないのです。ただでさえPHPの名前空間は種類が少ないのに。
※PHP5.3のnamespaceではなく、それを含んだ一般概念の話です。
ほかにも、PHP5.3からの無名関数(クロージャ)も、あの使いづらい
create_function() も、変数に代入しないと使えないわけで、これがPHPの流儀
なのだと割り切るしかなさそうです。
質問スレで議論をするのは避けたいので、これで失礼します。
0981nobodyさん
2009/01/13(火) 21:22:11ID:???0982nobodyさん
2009/01/13(火) 21:29:18ID:???次スレ立てれ
ところでさ、クラスやfunction書くのそんなに手間か?
static functionを1個追加して、自インスタンス返す1行だけじゃん。で、
Hoge::getInstance()->fuga();
名前空間を汚したくないという理由にしちゃ、動機が不純だよ。
文句たれたかっただけとしか見られないんじゃね?
0983968
2009/01/13(火) 21:52:35ID:/s3q30uO> 次スレ立てれ
立てました。
【PHP】下らねぇ質問はID出して書き込みやがれ 79
http://pc11.2ch.net/test/read.cgi/php/1231850905/
0984nobodyさん
2009/01/13(火) 21:53:45ID:???0985nobodyさん
2009/01/13(火) 23:14:36ID:sfzYhJri【連携ソフトウェア】なし
【質問内容】
次の記述を外部のテキストファイルで実行をしたいのですがどのように記述してあげれば
いいのか教えて下さい。
$rss = array (
'http://www123.net/?feed=rss2',
'http://www.234.net/?feed=rss2',
'http://www.345.net/?feed=rss2,
);
わかる方いましたらお願いします
0988nobodyさん
2009/01/13(火) 23:39:50ID:???<?php 〜 ?>で囲めばいいんじゃない?
0989985
2009/01/13(火) 23:55:49ID:sfzYhJri重要なことがぬけていてすいません
外部とはテキストファイルに保存してそれをcronしたいと考えています
0992nobodyさん
2009/01/14(水) 00:04:16ID:???0993985
2009/01/14(水) 00:25:00ID:6pr/PCigレス有難うございます。
array file( string ファイル名 )で取り出せばいいんですね
有難うございます
0994nobodyさん
2009/01/14(水) 13:11:53ID:4Dtvjdwa初心者のくだらない質問で申し訳ないのですが
演算子 "=&" の意味が今ひとつ理解できずにいます。
ググろうにも該当するサイトが少なく困っています。
この演算子に関する解説が掲載されていサイトなどでも結構なので
どなたかご教授頂けませんでしょうか。
0995nobodyさん
2009/01/14(水) 13:12:37ID:???0996nobodyさん
2009/01/14(水) 13:17:29ID:???http://www.php.net/manual/ja/language.references.php
0997nobodyさん
2009/01/14(水) 14:36:51ID:???初心者がPHPマニュアル読んでもリファレンスは分からんだろう。
つうかリファレンスはPHPの泥沼の一つで、きちんと分かって使ってる奴は少な
い。時間がないなら見よう見まねで済ませたほうがいいと思う。
とりあえず、これ↓なんかどう?
PHPの参照渡しは関数の引数だけじゃない - cloned.log
http://d.hatena.ne.jp/cloned/20060510
あとは 「PHP 参照代入」あたりでググって。
0998nobodyさん
2009/01/14(水) 15:19:26ID:???素人の信頼性の低いblogや日記なんかを参考にするより20倍はマシ
0999nobodyさん
2009/01/14(水) 15:29:52ID:???1000nobodyさん
2009/01/14(水) 15:30:36ID:???http://pc11.2ch.net/test/read.cgi/php/1231850905/
10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。