【PHP】下らねぇ質問はID出して書き込みやがれ 76
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2008/11/13(木) 04:15:32ID:???過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 75
http://pc11.2ch.net/test/read.cgi/php/1224168721/
◆質問用テンプレ
【OS名】vine linux
【PHPのバージョン】php5.26
【連携ソフトウェア】mysql
【質問内容】
◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)
◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0523nobodyさん
2008/11/24(月) 00:44:19ID:???そこまでの内容なら一日で覚えられるはずだし、どうしても複雑な条件を扱いたいならSELECTで抜いてからPHP側で処理する手もあるしな。
実行速度以前に、トータルの作業速度も恐らくSQL使ったほうが早い。
MySQLを導入するのがダルいってんなら、SQLiteかなんかに突っ込んでおけばいい。
インストール不要、ユーザー管理不要のお手軽DBMS。PHP5は標準で対応してる(5.2以降だっけか?)。
0524nobodyさん
2008/11/24(月) 01:18:49ID:Wj+KImYJ>>501
> get_class_vars
> get_class
> get_class_methods
> call_user_func(array($obj, $method_name), $parameter);
> 辺りでどうにでもなると思うけど。
ありがとうございます。 call_user_func() が
array(オブジェクトインスタンス, メソッド名の文字列) という引数を取れる
とは知りませんでした。
array(クラス名の文字列、メソッド名の文字列)しか取れないと思っていました。
つまり、スタティック呼び出ししかできないと思っていたのです。確かにこれ
なら、$test->$x() のような、インスタンスメソッドの呼び出しができますね。
しかし、マニュアルにもこうあったのですが。
http://jp.php.net/manual/ja/function.call-user-func.php
> このパラメータに array($classname, $methodname) を指定することにより、
> クラスメソッドも静的にコールすることができます。
やっぱりこれも undocumented?
0525nobodyさん
2008/11/24(月) 01:24:51ID:Wj+KImYJ> 自前でフレームワークを作ろうとしてるの?
> 観点が利用するという感覚じゃないようなので
いえ、私は単にCakePHP、およびPHP言語自体を理解したいだけです。
ソースを追っていて理解できなかったので質問させていただいたのです。
しかし、まだどなたにも参考資料をご提示いただけません。もしかして、この
件は全部、PHPマニュアルには無いのでしょうか?PHPってこういう「隠し機能」
だらけなのでしょうか?
しかし仮にそうだとしても、これだけメジャーなフレームワークが採用するぐ
らいですから、ある程度、PHPコミュニティで知られた機能だと思うのです。そ
ういう準公式ドキュメントのようなものは、どこかに無いものでしょうか。
0526nobodyさん
2008/11/24(月) 01:39:33ID:???どこにオブジェクトを引数として取れると書いてあるの?
$classnameを$objと書き間違えたんじゃないの?
0527nobodyさん
2008/11/24(月) 01:44:04ID:???ドキュメントが適当でクラス機能が壊れてるのがphp
まず最初にこれを学習したことが一番大きい
後は自分でシコシコ解析しながら進める
これがphpならではの勉強方法
0528nobodyさん
2008/11/24(月) 01:45:50ID:Wj+KImYJ$test = new Test();
$test->hogehoge = 3; //クラス定義に存在しないプロパティに代入
var_dump($test->hogehoge); // 正常に実行。int(3)
この挙動には、二つの点で興味があります。
1つ目は、もし代入するだけでプロパティが生成できるのなら、var hogehoge;
といった変数宣言文は必要なかったじゃないか、という言語仕様上の疑問です。
実際、他の言語で代入でプロパティを宣言できる言語(JavaScript, Pythonなど)
には、プロパティの宣言文は存在しません。Rubyも、クラス内でしか代入でき
ないという違いはありますが(Rubyにはpublicなインスタンス変数は無い)、同
様に宣言文は存在していません。なぜPHPは二通りの宣言方法を用意したのでしょ
うか?
2つ目は、実用上の問題で、このようにして変数宣言なしで定義されたプロパティ
があるなら、ソースをgrepするときに困るということです。CakePHP以外でもこ
の書き方が多用されているなら、grep "var hogehoge" では見つからないプロ
パティ定義がたくさんあるはずで、これはどう対処したものか、ということな
のです。
その辺の疑問を解決するためにも、まずはこの機能の公式ページ、ないしは準
公式ページを知りたいと思っております。
0529nobodyさん
2008/11/24(月) 01:46:43ID:Wj+KImYJ> 標準クラスの挙動が知りたいだけなら、Reflectionでソースを見ればだいたいわかる
という言葉の意味を教えていただけませんか?
「Reflectionでソースを見る」とはどういう意味なのか、残念ながら見当が付
きません。リフレクションで分かるのは、ソースではなくて、生成されたイン
スタンスやクラスの特性だと思うのですが。
0530nobodyさん
2008/11/24(月) 01:49:19ID:???WEBプログラムはWindowsアプリなどよりも
ネットでのドキュメント量が豊富だと思いますが
0531nobodyさん
2008/11/24(月) 01:56:57ID:???http://php.plus-server.net/language.oop5.reflection.html#language.oop5.reflection.extending
0532nobodyさん
2008/11/24(月) 01:59:09ID:Wj+KImYJ> $classnameを$objと書き間違えたんじゃないの?
私も書き間違いかと思ったのですが、ためしに$objにオブジェクトインスタン
スを与えたら動いたんです。
>>527
> ドキュメントが適当でクラス機能が壊れてるのがphp
> 後は自分でシコシコ解析しながら進める
うう…。Java育ちにはつらい話です。しかし、みんなが undocumented な機能
を多用していたら、Zend社がそれを突然廃止したとき、困るのではありません
か?特に仕事で使っているのなら。
Tips/PHP/foreach関数が使えない? - ゼンド・ジャパン株式会社 技術情報コンテンツ
http://www.zend.co.jp/tech/index.php?Tips%2FPHP%2Fforeach%B4%D8%BF%F4%A4%AC%BB%C8%A4%A8%A4%CA%A4%A4%A1%A9
>>530
> そんなマニュアルが揃ってる言語てあるんですか?
> WEBプログラムはWindowsアプリなどよりも
> ネットでのドキュメント量が豊富だと思いますが
JavaやPythonは非常によくドキュメントが整備されています。Rubyは少し落ち
ますが、これほど大きな機能が undocumented になっているのは考えられません。
Windowsよりネット上のドキュメントが多いのは同意ですが、問題は、公式でな
い仕様はいつ変わるか保証が無いことです。
0534nobodyさん
2008/11/24(月) 02:06:26ID:???0535nobodyさん
2008/11/24(月) 02:16:41ID:Wj+KImYJすみませんがますます分かりません。コードを実行してみましたが、メソッド
名やクラス名、アクセス修飾子といった属性が取得できただけです。まあリフ
レクションとはそういうものですが。
そもそも、私の質問とどう関連するのか、申し訳ないのですが見当が付きません。
>>533
> 単純にあなたの検索力がかなり低いと思うのだが・・・
恥ずかしながら正解です。言い訳ですが、PHPは始めたばかりなもので。あつか
ましいとは思いますが、何とかお助けいただけないでしょうか。
>>534
> クラス機能が壊れてるから公式ドキュメントが無いんじゃないのw
そうかもしれません…。でも、コミュニティである程度は評価された機能でな
かったら、フレームワーク製作者はそれを利用しないと思うのですが。
0536nobodyさん
2008/11/24(月) 02:24:59ID:???cakePHPの
var hogehoge;
なんかはPHP5でも4との互換性の為にpublicとして動くんだけど
実際は非推奨になっててpublic/protected/privateを付けた方が良い。
PHP6になったらvarでの宣言は消される可能性がある。
メソッド内で宣言してないプロパティを使うと
null値のpublicプロパティとして扱われるけど、
ドキュメント化はされてないと思うから、本来は推奨されてない書き方。
cakePHPは4と5対応だから無理して両方で動く書き方してるに過ぎない。
ソース読むならZFかSymfonyにしといた方が良い。
PHPはまだオブジェクト指向を取り入れてる途中にあるから
クラスの細かい部分の説明が無いのは変わる可能性が
あると思ってた方が安全。
名前空間のセパレータが\になりそうで
\tHogeとか\nhogeの場合に気持ち悪すぎるって
騒ぎがあったのが最近だし。
0537nobodyさん
2008/11/24(月) 02:59:52ID:Wj+KImYJ大変詳しい説明、ありがとうございます。cakeはPHP4、5で動かすために、非推
奨の機能を多用しているということなのですね。
> $x = "hoge";
> $obj->$x; // $obj->hoge; と同じ。
や、
> $obj->hogehoge = 3; //代入でプロパティが宣言できる。
も、 undocumented な非推奨機能ということなのでしょうか?うーん。
ところで、cakeはなぜこれを採用したのでしょう?
自分がさっき考えたのは、プロパティの動的生成が目的だったのかな、という
ことです。例えば以下のような感じでしょうか。
<?php
class Test {
}
$test = new Test();
foreach (array("hoge", "fuga", "piyo") as $prop_name) {
$test->$prop_name = "hogehoge";
//$test->hoge, $test->fuga, $test->piyo が定義される。
}
?>
PHP(5)のリフレクションはほとんど知らないのですが、こういうことはPHP4で
は、公式の機能だけでは実現できないのではないでしょうか?まだcakeのソー
スは見始めたばかりで、こんなコードがあるかどうかはわかりませんが。
夜も遅くなりましたので、これで失礼します。明日また来ると思います。
0538nobodyさん
2008/11/24(月) 03:12:39ID:???0539nobodyさん
2008/11/24(月) 08:19:42ID:???php4環境のことは忘れて、php5の最新版に絞ってはいかがでしょうか。
あと、ソースを読んでどうこうしたいならcakeみたいな実用FWはやめたほうがいい。
ZFのほうが技術的には吉かと。
> この挙動には、二つの点で興味があります。
> 1つ目は、もし代入するだけでプロパティが生成できるのなら、
> var hogehoge;といった変数宣言文は必要なかったじゃないか、という言語仕様上の疑問です。
単に冗長化してある仕様であるとしか。
なぜ、それを用意したかという動機の部分は、DevMLで聞くしかないでしょう。
宣言なしでも変数を最初に使った時に作成されるというphpの仕様です。
しかし、クラス変数にpublic protected privateなどで宣言したいケースが
存在することは問題ないですよね?
基本的に内部プロパティを持っていないクラス変数を作成するという機能を
自作クラスで抑制したいときは__set($name)で制御できます。
> 2つ目は、実用上の問題で、このようにして変数宣言なしで定義されたプロパティ
> があるなら、ソースをgrepするときに困るということです。CakePHP以外でもこ
Cakeにはphp4対応しようという歴史的経緯があって、ソースの解析を難しくして
しまっています。
同様にphp4 php5両対応のシステムは、oop的に??です、特にjava等本格的oop
出身の人がphp4のソースを扱うのは無駄です。労力的に。
貧弱でルーズなオブジェクト指向でむりくり実装しているので、それぞれのシステム
のポリシーに振り回されることになります。
0540nobodyさん
2008/11/24(月) 09:37:17ID:161WFI/v【PHPのバージョン】php5.2.6
【質問内容】
ローカルでテストしていたら今まで問題なく動いていたファイルが
fputsで書き込みが出来なくなってしましました
fopenは出来ているようです
また同じファイルがサーバー上では問題なく動いています
ローカルではなぜかfile_put_contentsなら書き込み出来るんですが
借りているサーバーのPHPのバージョンが4なため途方にくれています
検索してみたのですがローカルでは動くがサーバーで動かないなどの逆の
パターンばかりです
直前にいじっていたファイルがおかしい部分があったのでそのせいかと思い
xamppを全てアンインストールし最新のものにしたのですがまったく変わらず
fputsがきかない状態です
$dataup = fopen("./data.dat", "r+");
flock($dataup, LOCK_SH);
fputs($dataup , "$up\n");
flock($dataup, LOCK_UN);
fclose($dataup);
上記の中に何か問題があるのでしょうか
どなたかご教授お願いします
0541nobodyさん
2008/11/24(月) 11:34:49ID:???'./data.dat'に書き込み権限が無いんでしょ。
つまりパーミッションを見直しましょうという事。
>>537
ここまでの流れも全く読まずにレス。
>>539も書いてるが、PHP4とPHP5の両方に無理に対応させようとした結果、色々と冗長な部分がある。
他言語から入ってきた人でもしも環境が許すなら、PHP5一本に絞る事をお勧めする。
もう俺、PHP4のソースなんて見る気がしないわ(;´A`)
>>507
PHPならMySQLかSQLiteが手っ取り早いだろうね。
ただ予想されるデータ数が少なくてテキストファイルベースでやりたいなら、
ある意味頭の悪い方法ではあるが、一度全部配列にぶち込んでしまえばいい。
あとは抽出なりソートなりどうとでもなる。
0542541
2008/11/24(月) 11:38:25ID:???あ、悪い。local(Windows上)で書き込みが出来ないのか。
phpのエラーログは?
あと質問とは関係ないが、「LOCK_SH」ではなく「LOCK_EX」だね。この場合。
0543nobodyさん
2008/11/24(月) 11:40:02ID:???自分のサイトで100以上のページを管理しているんですが、
すべて拡張子がhtmlになっています。
これからは管理しやすいように、
フッターとヘッダーとサイドバーを
<?php
include_once("header.inc");
include_once("footer.inc");
include_once("sidebar.inc");
?>
<body>
<?php
echo "*********"
?>
</body>
みたいにphpで取り込んで出力しようと思うんですが、
これまでhtmlだったファイルの拡張子をphpに変更すると、URIが変わってしまうので
ページランクを継承できないかと思います。
URIを ***.html にしたまま、phpで取り込むうまいやり方はありませんでしょうか。
0544nobodyさん
2008/11/24(月) 11:44:46ID:???あまりお勧めはしたくないが、拡張子「.html」をPHPとして動作するようにするかな。
「AddHandler htaccess」でググって見たらいい。
htaccessが許可されてないがSSIなら使えるサーバーなら
ヘッダ・フッタの読み込みにSSIの#includeを使うという手もあるね。
0545nobodyさん
2008/11/24(月) 12:19:02ID:???>を多用していたら、Zend社がそれを突然廃止したとき、困るのではありません
>か?特に仕事で使っているのなら。
なんで更新内容も吟味せずに100%機械的なアップデートが前提なんだ?
マニュアル読めば分かるけど仮に将来廃止傾向にある要素があったとしても
相当前から警告してくれてるし、開発コミュニティで情報共有もされてる。
別に嫌味を込めていうわけじゃないが、もうちょっとPHPの経験積んでから色々いちゃもん付けたほうがいいんでないかな
0546nobodyさん
2008/11/24(月) 12:21:03ID:MXksGNjbありがとうございます
あまりお勧めされない理由とは何でしょう?
0548nobodyさん
2008/11/24(月) 12:23:56ID:???おれもjava使いだけど、java育ちかどうかは関係ないんで、
java使いが誤解されるような書き方はちょっとね。
>>543
mod_rewriteが使えるならリクエストを1か所に集めて処理という手もある
0549540
2008/11/24(月) 12:26:21ID:161WFI/vレスありがとうございます
local上なので権限はやっぱり関係ないですよね
エラーログは出ないんです
見た目問題無く済んだように見えて書き込みだけされていません
試しにfopenをwで行うとちゃんと新規ファイルが出来るのでどう考えてもfputsが原因のようなのです
fputs自体をチェックしてみたところfalse(0)が戻ってきました
file_put_contentsだったら書き込めるのでローカルではこれで動かしているのですが
サーバーでfile_put_contentsは使えないのでどうにか直したいのです
0550nobodyさん
2008/11/24(月) 12:30:37ID:???(てか「なぜ採用したのか」とかなぜCakeのdev-teamに聞かずにここの連中に聞く?)
0552544
2008/11/24(月) 12:35:30ID:???>>544のやり方は、一番簡単で手を抜いた方法。
Apacheモジュール使う方法とかもあるのだけど、その辺りはあえて紹介しなかった。(初心者と書いてたので)
簡単で手を抜いた方法は、サーバーにとっては易しくない場合がほとんどなので、
共有サーバーなら少し気をつけた方がいいかなと思ったまで。
他にもトラブルの元になる場合があるかな。
例えば、htaccess使って拡張子「.html」をPHPとして動作するようにすれば、
本当にただの「.html」ファイルでもPHPとして動作しようとするよね?
例えばphp.iniの設定で
short_open_tag が ON になっている場合、xmlの構文でパースエラーが起こる可能性があったり。
(理由はXMLは「<?xml」で始まるから)
0553541
2008/11/24(月) 12:38:00ID:???fopen($path, 'w');
は新規ファイル出来るけど、
fopen($path, 'r+');
は駄目だよ??そこは大丈夫?(でもそれが原因ならエラーが出る筈だが)
file_put_contents()は糞便利なんだが、PHP5でしか使えないからねぇ。。
0554540
2008/11/24(月) 13:02:49ID:161WFI/v二度目の書き込みでwとかいたのはr+だとまったくファイルが変わらないためどこで詰まっているのかを確認するためにwで動かしてみた際の話です
サーバー上では問題ないんです
ローカルだけでfputsのみがおかしい状態です
>>553
鯖がPHP5でさえあればorz
0555nobodyさん
2008/11/24(月) 13:23:36ID:???言ってることがメチャクチャだw
0556nobodyさん
2008/11/24(月) 14:28:28ID:8C5l1Dvrecho "$title <span class=\"gray\">(<em>$sub_title</em>, $year)</span>"; }
みたいな定型処理を文中で利用しまくってるんですけど、
サーバへの負担は気にする必要有りますかね?
0557nobodyさん
2008/11/24(月) 14:30:00ID:???0558nobodyさん
2008/11/24(月) 14:30:13ID:???0559nobodyさん
2008/11/24(月) 14:32:08ID:8C5l1Dvr了解、thanx
0560nobodyさん
2008/11/24(月) 14:33:47ID:???0561nobodyさん
2008/11/24(月) 15:57:33ID:???PHP関連の各スレへ1行で恥ずかしい無知な突っ込みいれてる馬鹿か?
ちなみにthanxは普通にスラングとして使われる綴りだが。
pleaseをplsとか書くだろ。
関数名でforを4と略したりtoを2と略したりするのと一緒だ。
0562nobodyさん
2008/11/24(月) 16:03:11ID:???PHP関連の各スレへ1行で恥ずかしい無知な突っ込みいれてる馬鹿か?
ちなみにthanxは普通にスラングとして使われる綴りだが。
pleaseをplsとか書くだろ。
関数名でforを4と略したりtoを2と略したりするのと一緒だ。
(笑)
0564nobodyさん
2008/11/24(月) 16:40:25ID:???0565nobodyさん
2008/11/24(月) 17:24:18ID:3UIztZ5+「file_put_contents」は文字列をファイルに書き込む関数、という
説明だが、もし「1」って書き込んだら、それは文字列と解釈され、
1+1などの計算をするときに、自動的に数値と解釈されなくなって
しまうのか?
それとも、コンテキストを見て判断して、数値と扱うべきところでは
自動的に数値になってくれるのか?
0567nobodyさん
2008/11/24(月) 17:33:21ID:???0568nobodyさん
2008/11/24(月) 17:44:15ID:???0569nobodyさん
2008/11/24(月) 17:52:18ID:???作れるよ
Webアプリケーションとして実装すれば
http://akid.s17.xrea.com/
こんなのもできるし
GTKとかを使ってクライアントGUIアプリなんかも作れるし
前者のWebアプリはともかく
後者のクライアントGUIアプリをPHPでやろうとするのはただの変人だけど
0570nobodyさん
2008/11/24(月) 18:01:26ID:3UIztZ5+データーが連続して蓄積されるような状況があったとして、それを
グラフで図とかで表したいんだけど、それってすっごく難しいの?
例えば、
1,2,3,4,5、、、
とかってデーターがあったとして、これを
折れ線グラフとかで表示したいんだけど?
0571nobodyさん
2008/11/24(月) 18:04:12ID:???0574nobodyさん
2008/11/24(月) 18:44:37ID:???〃〃∩ _, ,_
⊂⌒( `Д´) < ヤダヤダ! だって構って欲しかったんだもん
`ヽ_つ ⊂ノ
ジタバタ
_, ,_
(`Д´ ∩ < ヤダヤダ 灯油まいただけなのに逮捕なんてヤダヤダ
⊂ (
ヽ∩ つ ジタバタ
〃〃
0575nobodyさん
2008/11/24(月) 18:45:34ID:3UIztZ5+図を表示したいときは
ライブラリを使うのが常套手段なの?
PEARとかっていうのではだめなの?
0576nobodyさん
2008/11/24(月) 18:48:41ID:???0577nobodyさん
2008/11/24(月) 18:58:00ID:3UIztZ5+WEBアプリのAPIってどうやって作るの?
「5」とかの数値がサイト上にあって、
それに対するAPIを開放して、外部から利用できるように
したいんだけど?
0578nobodyさん
2008/11/24(月) 18:58:59ID:???毎日釣り糸垂らして楽しいの?
0582nobodyさん
2008/11/24(月) 20:32:30ID:???淡々と回答放置して次の質問出してるんだから
自己完結してるんだろ
独り言のようなもんなんだから構わなくていいよ
0583nobodyさん
2008/11/24(月) 20:42:35ID:???実際、ブログで説明されていることはただしいのでしょうか?
http://hain.jp/index.php/tech-j/2007/02/13/p125
0584nobodyさん
2008/11/24(月) 20:58:06ID:???PHP入門の心得 1.0.10p1
・質問は霞ヶ関でも通用するような完璧な形式に。
・過去ログは紀元前までさかのぼって完全に調べる事。
・新機能ができても細部にこだわってできるだけリリースしない。
・「正しい」か「誤っている」かを結論づけないと気が済まない性格になる事。
・質問自体は無視して語句の間違いの指摘に熱中する事。
・初心者を見たらできる限り冷酷に排除。
・回答は1行以内で簡潔に。 例:「マニュアル読め」
・古いバージョンを使っていることがわかると最新にしろという。
・一日三回食後必ずperlをあざ笑う事。
・自分の状態に「自覚症状」を持たないこと。
・板違いの質問をしたperlerを徹底的に叩く事。
・forkする時はアニメ絡みの名前をつける事。
・気に入らない投稿が流れてきたらメールアドレスも含めて全文コピペ
・意味もなく全角英数字を使うやつは小一時間問い詰める事。
0586nobodyさん
2008/11/24(月) 23:08:47ID:???大体正しいけど、実際の設定はその人の設定だから
何で書いて何で出力したいか次第。
厳密に言えばPHPに内部エンコーディングが無い訳じゃない。
例えばPHPはShift_JISで書いても5cを展開しないようにも出来る。
echo "表";ってやってもエラー出ない様に出来る。
ただその場合は、mb.stringだけでは無くて
Zendエンジン側を含めて設定しなければいけない。
コンパイル時にzend multibyteをONにしてなければいけなかったと思う。
mb関数はかなりの文字コード対応してるけど作ってるの日本人だから
PHPメーリングリストにバグとか含めて詳しい情報がある。
かなり挙動に癖があって分かり難いんだけど、コンパイル時に指定できて
外部ライブラリが要らないメリットはデカイから覚えておいたほうが良い。
0587nobodyさん
2008/11/24(月) 23:17:04ID:3K7Ub6cbログの保存で悩んでいるのですが、
MySQLなどのDBに保存するのかテキストベースで保存するのか
どちらの方がアクセス解析の処理がしやすいでしょうか?
前者だと思っているのですが、ログが膨大になるとレコード数が増えて
検索しづらくなるのではないか?と危惧しています。
それに毎回クエリを発行するよりも、ファイルに追加する方が早いのかな?っと感じたり。
具体的なソースがググって見つけられないので、
どちらが適しているかわかりませんが、2ちゃんの皆さんなら知っていると思い、
質問させていただきました。よろしくお願いします。
0588nobodyさん
2008/11/24(月) 23:19:38ID:Z9Lf2PTJ0589nobodyさん
2008/11/24(月) 23:23:12ID:???勉強のためならどっちもやってみたら?
具体的なソースじゃなくてファイルベースの利点と欠点、DBの利点と欠点を調べたほうがいいと思うけど。
もしくは↓の人が丁寧に語ってくれる。
0590nobodyさん
2008/11/24(月) 23:28:56ID:???0591nobodyさん
2008/11/24(月) 23:35:47ID:3K7Ub6cb一応、単純なログ保存ならどっちも試した事があるのですが
そんなに変わらない気がします。DBを使ったログ保存でも
レコードが一定数になったら、削除したりテキスト化すると言う方法もあるし。
>>590
それは良いですね。analogとかawstatsとかおそらくアクセス毎に
ログファイルに記録してますが、そんなに遅いイメージ無いですし。
0592nobodyさん
2008/11/25(火) 11:31:32ID:DHbzqImi<select>
<option>肉</option>
<option>魚</option>
</select>
で、肉を選ばれたら肉のページ、魚を選ばれたら魚のページ、といったようにです。
簡単な雛形でいいのでどう書けばいいか教えて頂けませんか?
0594nobodyさん
2008/11/25(火) 11:51:22ID:sWMxGR9lのどっちに該当するの?
#というのが見つからんかった
0596nobodyさん
2008/11/25(火) 12:02:07ID:???文字コードのクライテリアの話をするときにJSPって(ry
0597nobodyさん
2008/11/25(火) 12:10:45ID:TqJfzk7aぼくみたいな偉いjava使いがわからないphpなんておかしいです。
こんなぼくにもわかるphpの公式ドキュメントはどこですか?
0598nobodyさん
2008/11/25(火) 12:23:12ID:???そういうのはjavascriptでやってくれたまえ
>>597
javadoc読めるならphpマニュアルだってなんとなく理解できるだろ
0599nobodyさん
2008/11/25(火) 12:24:47ID:???別にPHPでも良くね?
JavaScriptのほうが簡単なのは分かるがPHPでやるデメリットが何かあるの?
JS切ってる人も多いし
0600nobodyさん
2008/11/25(火) 12:30:56ID:???つまりいちいちメニュー選んだら送信ボタンを押せっていいたいんだな?
そんなマヌケなメニューなら最初から他の方法とったほうがいいと思うが
0601nobodyさん
2008/11/25(火) 12:35:53ID:???個人的にもイベントハンドラで勝手に画面遷移したり非同期通信したりするのはうざく感じる。
そんなとこより他の本質的な所に力使ってくれよみたいな。
あと切ってる人はどうすんの?
0603nobodyさん
2008/11/25(火) 13:16:08ID:sWMxGR9lすまん 色々見てたらわかった気がする
#mbstring.configuration.html 見てもちゃんと記述されてない気がしたから
function.func-name.html でいいのかな?>namazuしたのから探した
#JSP出したのは、いわんとしてることが、わかる人には正確に伝わると
#思っただけで意味はないよ>こういう言い方があってるかは不明だけどw
#oracleのJA16SJISTILDE 相当のは指定できないの?
#と聞いて見たかったりもしたんだけど
#あまり考えるのはやめよう>SQL鯖だし
ありがとう
0604nobodyさん
2008/11/25(火) 13:20:49ID:???そもそもそんなわかりにくいメニューを使うべきでない。
積極的にRIAを活用したほうがわかりやすいものができる。
しかしRIAのベースになるAjax(JavaScript)やFlashやSilverlightに
ブラウザが対応していない場合はどうするか?(テキストブラウザ等)
JavaScriptがOFFの場合JavaScriptをONにするように促せばいいし、
(そもそもデフォルトのままIEあたりを使うであろう高齢者やPC初心者がオフにするわけがない)
プラグインが入っていないならインストールを促すようにすればいい。
だが対応していないブラウザを使っているたかだか数%のユーザを考慮して、
あらたなコンテンツを作るのは要領が悪い。
html版やFlash版なんかを用意しているサイトもあるが、
全ての環境の全てのユーザーに100%対応させることは限界がある。
よって最初から少数派を切る覚悟はしないときりがない。
0605nobodyさん
2008/11/25(火) 16:09:40ID:QsUscf6u0606nobodyさん
2008/11/25(火) 16:26:20ID:uwgP5Nan【PHPのバージョン】PHP Version 5.2.0
【連携ソフトウェア】なし
【質問内容】
1.青空文庫のようなXHTMLをXMLとして読み込んだ後に
2-1.テキスト要素だけを取り出したい
2-2.a属性のテキストだけ取り出したい
です
1は出来ているのですが、2がわかりません
2の条件として、XMLは外部のものを使うので、テキスト要素までのパスが可変で決め打ちできません
2-2は最後の属性がaのとき、という事です
宜しくお願いします
0607nobodyさん
2008/11/25(火) 16:31:12ID:???0608nobodyさん
2008/11/25(火) 16:38:13ID:???すみません、SimpleXMLを使って読み込んでいますが、処理部がわかりません
2-2はXpathで一応出来ましたが正しいのかわかりません、2-1はさっぱりです
foreach ( $xml->xpath('//a') as $key => $val )
{
$array[] = $val;
}
0609nobodyさん
2008/11/25(火) 16:38:47ID:uwgP5NanID忘れました
0610nobodyさん
2008/11/25(火) 17:49:50ID:???0611nobodyさん
2008/11/25(火) 21:59:38ID:???こういうのは言葉で質問しづらいでしょ
実際にXMLを見せてもらわないとわからんよ。
それと、2-2の意味を掴みかねる。
0612nobodyさん
2008/11/25(火) 22:36:15ID:???SimpleXML使える環境ならどうとでもなるはずなので、
あとの事は実際にそのXMLの構造見て見ないとねぇ。。
>>605
なんか「ソケット」という言葉を激しく勘違いしてると思う。
>>598,600,602
携帯の事忘れてない?
最近は、フルブラウザならJavaScriptも動いたりするけどね。
0613nobodyさん
2008/11/25(火) 22:43:29ID:???普通はコンテンツ絞って分離するんじゃね?
0615nobodyさん
2008/11/25(火) 22:53:26ID:???適切なコンテンツを送る、って聞いたけど、本当なのかな?
0616nobodyさん
2008/11/25(火) 22:54:41ID:???プログラミングがすっごく楽しい〜(*^〇^*)
0617nobodyさん
2008/11/25(火) 23:01:38ID:???ソフトが勝手に判別というのは意味が分からないけど、聞いた事ないかな。
ASP.NETの前身の「ASP」での開発もしてた頃は、
小中規模の開発はみんなASPからPHPへと鞍替えしちゃったところが多かったよ。
最近はApacheモジュールで携帯向けの自動処理を何とかしようとするのが幾つかあるね。
どれもまだまだな感じだけど。
0618nobodyさん
2008/11/25(火) 23:54:53ID:c9fpFVNb「ボタンを押したら、画面上の数字が増える」
ってアプリを作ったんだが、ボタンを押したヤツの
IPを記録するって仕組みを作ろうと思うんだが、
さて、どんな風にしたらいいかな?
0619nobodyさん
2008/11/26(水) 00:06:02ID:???0620nobodyさん
2008/11/26(水) 00:06:33ID:9Z6KcmDEそいつのIPをトラップするような関数があるのかな?
■ このスレッドは過去ログ倉庫に格納されています