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

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

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

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

◆質問用テンプレ
【OS名】vine linux
【PHPのバージョン】php5.26
【連携ソフトウェア】mysql
【質問内容】

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

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

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

【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0838nobodyさん2010/03/11(木) 12:40:47ID:???
>>837
時刻ベースならmicrotime()
ランダムならuniqid()
0839nobodyさん2010/03/11(木) 12:50:46ID:w3xbnBCu
PHPからMySQLのシステム変数を見たいんだけど、
selectじゃなくてshowなのでフェッチできない。
さてどうしたらいいかな。
0840nobodyさん2010/03/11(木) 13:05:02ID:???
やったことないけどsystemでできるんじゃね?
08418342010/03/11(木) 13:18:42ID:0kmM8iNj
>>835
文字コードを一応SJIS、EUC、UTF-8試したのですがどれも元々アルファベット、記号の物は
変換されませんでした。
http://jp.php.net/manual/ja/function.urlencode.php
マニュアルには
>-_. を除くすべての非英数文字が % 記号 (%)に続く二桁の数字で置き換えられ
とあるので上記の挙動は仕様通りなのですが、
http://www.tagindex.com/tool/url.html
では英数文字も非英数文字も全てが%xxに変換されていて、これをPHPでやりたいのです。
こんな関数はデフォルトでは実装されていないでしょうか?
0842nobodyさん2010/03/11(木) 13:30:49ID:???
改行コードが除去されてるだけじゃん
0843nobodyさん2010/03/11(木) 13:44:11ID:???
>>841
http://www.tagindex.com/tool/url.html
>では英数文字も非英数文字も全てが%xxに変換されていて、これをPHPでやりたいのです。

英数文字は変換されないと思うけど?
0844nobodyさん2010/03/11(木) 15:17:30ID:???
何に使うつもりなんだ・・・?
0845nobodyさん2010/03/11(木) 15:34:58ID:???
printf() で %%02X で1文字ずつ出したら?
文字列から文字コードはord()なりunpackなりで
08468342010/03/11(木) 17:14:21ID:0kmM8iNj
ごめんなさい
>>843のおっしゃるとおり英数文字は変換されていなかったです…
urlencode()した文字列と件のサイトで変換した文字列を見比べているつもりが
関係無い文字列を見比べてました。

もう日が暮れる;;
おそらく>>842さんご指摘の改行コードとあとはurlencodeが変換しない「+」をstr_replaceとかで
変換すればいけそうです。
0847nobodyさん2010/03/11(木) 19:18:34ID:???
コレアン美人
0848nobodyさん2010/03/11(木) 19:18:41ID:???
>>840
フェッチできたわ。フェッフェッ
0849nobodyさん2010/03/12(金) 06:26:13ID:eE8Qh1j0
<?php
echo $_POST["test"];
echo '<form method="post" action="test3.php"><input type="text" name="test" /><input type="submit" value="Check" /></form>';
?>

テキストボックスに
"hoge"
と入力して送信すると
\"hoge\"
と表示されます。
この \ が勝手に付加されてしまうのですが、
これはそういうもんなのでしょうか?
よろしくお願いします。

POSTされたデータの
" を \"、
/ を \/
[ を \[
・・・
みたいな変換をしていたのですが、"だけ\\"
になってしまったので、なんか統一感がないなぁ、程度の悩みです。
0850nobodyさん2010/03/12(金) 08:20:56ID:???
>>849
http://www.php.net/manual/ja/security.magicquotes.php
0851nobodyさん2010/03/12(金) 08:35:11ID:eE8Qh1j0
>>850
これが知りたかったのです。
ありがとうございました。
0852nobodyさん2010/03/12(金) 09:55:06ID:Yfu1bPWM
【OS名】winxp(32bit)
【PHPのバージョン】php5.2.1
【質問内容】
intの最大値が32bitの環境で64bitの整数を使いたいのですが、
方法ありませんか?
0853nobodyさん2010/03/12(金) 10:05:46ID:???
>>852
http://www.php.net/manual/ja/book.bc.php
0854nobodyさん2010/03/12(金) 10:35:58ID:Yfu1bPWM
>>853
ありがとうございます!
解決しました。
08558302010/03/12(金) 10:42:54ID:HJClOaz1
私の方も分かる方よろしくお願いしますm(__)m
0856nobodyさん2010/03/12(金) 11:28:29ID:???
わからないです
0857nobodyさん2010/03/12(金) 12:03:25ID:???
GD使えば早くなるんじゃね?
GD アニメgif php でぐぐったら出てきたぜ
0858nobodyさん2010/03/12(金) 12:45:33ID:???
>>855
convert -resize 100x100 src.gif[0-4] thumb.gif
0859nobodyさん2010/03/12(金) 14:48:01ID:cUrmnSSn
くだらない質問失礼します。
元々C/C++などのコンパイル言語ということもあり、疑問がありまして。

PHPにもrequireやincludeといった素晴らしい機構があるのですが、
これの引数には変数を指定することができるようです。

となると、PHPというのはincludeなどの展開は実行時に毎回行っているということになりますよね?

PHPはアクセスがあるたびに
・ソースコード解釈
・コンパイル
・実行
をやっているのでしょうか?
それともコンパイル済みの中間ファイルあたりをどこかに持っていて、ソースコードが更新されていなければそちらを使っているのでしょうか?(ファイルの更新日時あたりを利用して)
そして、どちらにしろincludeなどは実行時に動的に読み込まれると。

単にファイルを分割したいだけなので、変数などが使えない高速のincludeなどが欲しいのですが、それは無いものでしょうか?
色々な質問がまざってすいません。
0860nobodyさん2010/03/12(金) 14:56:20ID:???
>>859
中間ファイルをキャッシュするためには各種アクセラレータが必要です
APCとかeAcceleratorあたりでググってみて下さい
0861nobodyさん2010/03/12(金) 15:46:43ID:???
>それともコンパイル済みの中間ファイルあたりをどこかに持っていて、ソースコードが更新されていなければそちらを使っているのでしょうか?

処理系に依ります。
Cだってインタープリタがありますし、CやC++でもincludeされる部分は最初に一回だけ
コンパイルして(それが変更されない限り)コンパイル済みコードを再利用するものがあります。

PHPだからとかCだからのように言語で言う話ではないのです、実際のところ。
0862nobodyさん2010/03/12(金) 15:54:28ID:???
噂のCppコンパイラさんがPHP下スレに質問に来ていると聞いて飛んできました
0863nobodyさん2010/03/12(金) 16:01:14ID:???
飛んできたからなんなんだよハゲ
0864nobodyさん2010/03/12(金) 17:03:24ID:cUrmnSSn
>>860
ありがとうございます。
基本的には毎回コンパイルするイメージなんですね。

元々スピードを求める言語ではないので、それで納得しておこうと思います。
APCなどについてはこれから調べてみます。ちょっと見てみた感じ、とても良さそうですね。
0865nobodyさん2010/03/12(金) 17:25:34ID:???
PHPspot作のPHPエディタを使用しています
ですが、対応バージョンがPHP5.0までのようで、新たに追加されたクラスや例外などの関数名がハイライトされません
ユーザ関数として登録もできるのですが、システム関数との見分けがつかなくなるのでなんとかしたいです
PHPエディタ作者は、要望掲示板の内容を読んでいないようで、対応の見込みが無いのですが
他のエディタで、プロジェクト管理機能とテンプレート機能を持つPHPエディタはないでしょうか?
0866nobodyさん2010/03/12(金) 17:30:13ID:???
>>865
>>1
0867nobodyさん2010/03/12(金) 19:51:29ID:???
EclipseかNetBeans
0868nobodyさん2010/03/12(金) 19:57:19ID:NKXaLgFF
なんでPHPが多いの?
0869nobodyさん2010/03/12(金) 19:59:35ID:???
ナウだから
0870nobodyさん2010/03/12(金) 20:30:47ID:sa3ugaEO
APIで1秒間のリクエスト回数がn回以下であると制限されているものがあるとき、
n回以下でリクエストするためにはどうしたらよいでしょうか?
0871nobodyさん2010/03/12(金) 20:31:23ID:???
sleep
0872nobodyさん2010/03/12(金) 20:34:43ID:sa3ugaEO
詳しいことはわからないのですが、
ひとりのユーザーがphpを実行しているのではなく、複数のユーザーが実行している時でも
sleepで対応できるのでしょうか?
0873nobodyさん2010/03/12(金) 20:44:11ID:???
セマフォ
0874nobodyさん2010/03/12(金) 20:48:19ID:???
>>870
リクエストの度にタイムスタンプ(microtime)を記述したファイルを生成。
また、PHP実行の度に、そのタイムスタンプを読み込み、例えば制限が「1秒に10回まで」なら、
(現在時-タイムスタンプ)が0.1秒以上でないとリクエストしない、とか。
0875nobodyさん2010/03/12(金) 20:53:12ID:???
データベースにタイムスタンプをインサートしていって
最新の10件を取り出して一番古いのが1秒居ないだったら待機
0876nobodyさん2010/03/12(金) 20:56:03ID:???
膨大な量のログが蓄積されるけどいいのかw
0877nobodyさん2010/03/12(金) 21:07:16ID:sa3ugaEO
ありがとうございます。874で行ってみようと思います。
0878nobodyさん2010/03/12(金) 22:15:26ID:???
1秒間に10回も20回も単一ファイルを読み書きするの?
0879nobodyさん2010/03/12(金) 22:20:23ID:sa3ugaEO
>>878
そうなるときつい気もしてきました
0880nobodyさん2010/03/12(金) 22:24:44ID:???
それは複数のユーザがアクセスするスクリプトなの?
なんか制限のあるAPI使うってことはユーザリストと処理内容を元に自分で処理するような気がするんだけど
0881nobodyさん2010/03/12(金) 22:47:37ID:???
モニタオブジェクト通しゃいいじゃん。

モニタは、過去1秒なら1秒間のリクエストの記録(オンメモリ)を保持して、
10個を超えそうならリクエスト拒否。
リクエストが来た時点で記録を調べて、1秒以上古いのは捨てる。
ファイルもDBの要らんでしょ。
0882nobodyさん2010/03/12(金) 22:50:48ID:???
むしろAPI側でうまいこと処理してくれるんちゃうん
0883nobodyさん2010/03/12(金) 23:02:16ID:???
実際には「1秒1回」制限のところも、厳密に1秒1回を計測している訳ではなく、
サーバー負荷が大きくなって初めて調べられて連絡が来るというパターンが多い。
ある時には1秒3回あっても、平均を取ると60秒に20回とかなら、まず文句言われない。
しかも、アフィリエイト系APIの場合には、儲かっていると基準が甘くなったりする。
以上、経験論ではあるけど、例外があったらゴメンナサイ。
0884nobodyさん2010/03/13(土) 06:06:30ID:GjD8zhAG
質問です;
DBから取ってきたリストをforeachでぐるぐる回してるんですが、
一行評価する度に消えちゃうじゃないですか。
もっかい読み出すっていう関数は無いでしょうか。
<?php foreach( $data["datas"] as $data ){
if($data["category"]==1){
0885nobodyさん2010/03/13(土) 06:12:36ID:GjD8zhAG
ミスった;
(あんま関係ないけど)cheetan使ってまして、
MySQLのテーブルにname,categoryとあったとして、
ビューで呼び出す側のindex_.html側で
<?php
foreach( $data["datas"] as $data ){
 if($data["category"]==1){
  echo $data["name"];
 }
}
foreach( $data["datas"] as $data ){
 if($data["category"]==2){
  echo $data["name"];(上と全く同じ処理)
 }
}?>みたいな事をやって結果的に
 category 1の人は Aさん、Cさん、Eさん
 category 2の人は Bさん、Dさん
みたいに出力したいのですが、
なんか根本的に処理がおかしい気が自分でもしてます;
0886nobodyさん2010/03/13(土) 06:19:34ID:TPMaSDUC
同じ悩みを数日前にぶちあたったものですが、
リソースから1行ずつ取り出して新たに配列作れば使いまわせたんで、
とりあえずそうしてます。
$result = mysql_query($sql,$con);
while( $row = mysql_fetch_array($result) ){
$data[] = $row;
}
0887nobodyさん2010/03/13(土) 06:35:40ID:???
>>885はfetchの問題じゃないと思うけど
俺だったらcategoryをキーにした連想配列に入れて再度ループして表示するか
予めカテゴリ別に取得して表示するか
DBのAPI利用してグループ化して取得して表示するかする
0888nobodyさん2010/03/13(土) 06:42:00ID:GjD8zhAG
みんなレスサンクス;
>>886 配列に入れてからfor文でまわすのを
繰り返すっていう事でしょうか。

>>887 DBもっかい取ってくるってのは、その分SELECT文が
走るって事ですよね。サーバのHDD負荷をできる限り減らしたい
ので、みんなどうしてるんだろなって。

HTML出力する時に、HTMLって上から下に書かないといけない
じゃないですか;前に戻って書けないというか。
やっぱぐるぐる回すしかないんですかね;
0889nobodyさん2010/03/13(土) 06:53:46ID:???
>>888
いやDBもっかい取ってくるのは3行目だけだが。
あと別にHTML出力は変数に入れて最後にまとめて表示してもいいし、
887で書いたのはロジックを先に処理してあとで表示する方法
0890nobodyさん2010/03/13(土) 12:03:41ID:???
つまりこういうこった
<?php
foreach( $result as $row ){
 if($row["category"]==1){
  $temp .= $row["name"];
 }elseif($row["category"]==2){
  $temp2 .= $row["name"];
 }
}
echo $temp . $temp2;
?>
0891nobodyさん2010/03/13(土) 12:05:16ID:???
でも処理が同じなら、SQLでカテゴリーに対してorder by かける方がスマートだろうな
0892nobodyさん2010/03/13(土) 12:05:18ID:???
つswitch
0893nobodyさん2010/03/13(土) 12:06:08ID:???
switch遅いって俺は聞いたぞ
0894nobodyさん2010/03/13(土) 12:13:05ID:???
Q
708 名前:デフォルトの名無しさん 投稿日:2005/05/11(水) 23:22:55
20通りくらいのパターンをswitch文を使って表しているのですが、
switchは遅いという情報を見つけました。
ifで表現したら速くなりますか?

A
基本的には気にする必要なし。
switchの分岐が多すぎることの方が問題。
710 名前:デフォルトの名無しさん 投稿日:2005/05/11(水) 23:26:16
>>708
君が気にする程違うわけでもなし、
気にしないといけない程
クリティカルなプログラムも書かないだろうし、
何よりコンパイラのオプティマイザに任せた方が
余程いい結果が得られる。

711 名前:デフォルトの名無しさん 投稿日:2005/05/11(水) 23:27:48
そもそも case や else がアホみたいに出てくるのは
良くない設計の兆候。まずは設計を見直せ。

714 名前:デフォルトの名無しさん 投稿日:2005/05/11(水) 23:42:02
>>708
switchをジャンプテーブルに変換してくれるコンパイラならifより速い
0895nobodyさん2010/03/13(土) 13:03:19ID:???
つまり最初からifで書いてれば問題無しってこった
0896nobodyさん2010/03/13(土) 21:22:52ID:???
初歩中の初歩ですまん
html内に出来るだけ短いphpで画像をランダム表示させようとしてるんだけれど、どうしてもうまくいかない。
<?php
$num = rand(1,200);
print "<img src=\"imagfile\{$num}.jpg\">\n";
?>
まだ始めたてでスレ内のレベルの高さにgkbrしてるけど、お願い
0897nobodyさん2010/03/13(土) 21:26:42ID:???
print "<img src=\"imagfile{$num}.jpg\">\n";
0898nobodyさん2010/03/14(日) 03:08:12ID:P9+VbQHb
>>ALL レス遅くなってゴメン&レスありがと
結局こうなった…。
foreach($data["datas"] as $data){
 $temp=(そのレコード行に対するタグを延々出力);
 $temp.=$data["name"];
 $temp.=(そのレコード行に対するタグを延々出力);
 $cate[$data["category"]][]=$temp;
}
とやっておいて
echo "<h1>category 1の人は</h1>";
for($i=0;$i<count($cate[1]);$i++){ echo $cate[1][$i]; }
echo "<h2>category 2の人は</h2>";
for($i=0;$i<count($cate[2]);$i++){ echo $cate[2][$i]; }
…以下続く
とりあえず出力は期待通りになったけど、正直、なんか納得
いってないw しかしみんなありがとう。
0899nobodyさん2010/03/14(日) 03:16:00ID:P9+VbQHb
連ゴメ

>>891 それだ!w PHP側でメモリの操作でやるのとorder byでソート
させとくのとどっちが高負荷でどっちが処理的に高速、また
効率良しなんでしょうかね。あんま拘るとこじゃないか…。

>>892 今回のと関係ないんですけど、他の記載箇所で、
全然平気でcase:1〜case:100とか出てくるんですが、やっぱダメです
よね…。用途は、さっきのcategoryが0-99あるとして、
対応する文字列を出力してるんですが、ほんとはDBに入れて
アソシエーションっていうんでしょうか、そっから引っ張ってくるべき
なのかなとか思ってました。。どうなんでしょうか。。
0900nobodyさん2010/03/14(日) 11:54:00ID:???
気になるならベンチ計ってみればいいじゃない
0901nobodyさん2010/03/14(日) 16:55:47ID:???
そうだそうだ、ぐだぐだ言ってないで計ってみやがれってんだ
0902nobodyさん2010/03/14(日) 17:27:47ID:???
メジャーはどこにありますか?
0903nobodyさん2010/03/14(日) 18:09:51ID:???
ここかな
http://mlb.mlb.com/index.jsp
0904nobodyさん2010/03/14(日) 20:43:36ID:afDdQzXD
下記の書き方、AとBではどちらがよい書き方なのでしょうか?

見やすさからBで書いてましたが、順番に処理を実行できるという意味では、
Aが正しい書き方な気がするのです。

【書き方A】
if (!empty($this->data)) {
$this->Book->create();
if ($this->Book->saveall($this->data)) {
$this->redirect(array('action' => 'index'));
}

【書き方B】
if (!empty($this->data)) {
$this->Book->create();
$this->Book->saveall($this->data);
$this->redirect(array('action' => 'index'));
}
0905nobodyさん2010/03/14(日) 20:51:05ID:???
保存に成功したかを判定したい時はAでしなくてもいい時はBにすればいいのでは?
0906nobodyさん2010/03/14(日) 20:58:12ID:afDdQzXD
なるほど。 シンプルな考え方ですね。
ありがとうございます。
0907nobodyさん2010/03/15(月) 00:26:18ID:???
CakePHPっぽいけど
saveAll()って失敗してもtrue返ってくるんじゃなかったっけ
0908nobodyさん2010/03/15(月) 01:57:58ID:uc4oih1J
>>907

はい、CAKEPHPです。
ということは、常にAのような書き方をしたほうがよいということでしょうか?

すみません、発言の内容がよくわからなくて。
0909nobodyさん2010/03/15(月) 02:11:15ID:7k3Do5eS
変数に関数の名前を入れて
その変数から呼び出すことってできますか?

↓こんな感じな事を想像してるのですが
$func = "strcmp";
if (!$func("文字1", "文字2")) {
 echo "一致";
}
0910nobodyさん2010/03/15(月) 02:18:04ID:???
>>909
それでできます
09119092010/03/15(月) 02:26:07ID:7k3Do5eS
>>910
Σ(´∀`;) できるのですかっ
スイマセン 試せばよかったですね ; ;
ありがとうごさいました!
0912nobodyさん2010/03/15(月) 06:24:34ID:wB2/C/Du
共用サーバーでサイトを構築しているのですが重いです。
ただ、毎回重いわけではなくリロードすると5回に1回くらいの割合で重くなります。

なにぶん初めてサイトを作っているので、これがスクリプトに問題があるのか
サーバーに問題があるのか、CSSに問題があるのかわかりません。
私的にはスクリプトが原因なら毎回重くなるハズだからサーバーかな?と思っているのですが
スクリプトに原因があったとしても読み込み速度が毎回大幅に違うという可能性はあるのでしょうか?
0913nobodyさん2010/03/15(月) 07:26:57ID:???
ローカルで試して問題なければサーバが原因
0914nobodyさん2010/03/15(月) 10:05:28ID:???
・ob_startのコールバックで処理時間ログ取れ
・FireBugで接続時間の計測

これで切り分けな
0915nobodyさん2010/03/15(月) 11:53:49ID:ToDwupd9
失礼します。
質問です。
一度定義された関数を、未定義状態に戻す。もしくは上書き定義することはできますでしょうか?
また同様に、クラスはどうでしょうか?

----------
require("app_hoge"); // ここの中でfuncという名前の関数が定義されている。
func();

//ここでfuncの定義を消したい

require("app_test"); // ここの中でもfuncが定義されている
----------

現状ですと、下記のようなエラーとなります。
Fatal error: Cannot redeclare func()
0916nobodyさん2010/03/15(月) 12:00:24ID:???
方法はあるんだけど根本的におかしいから直したほうがいいと思うよ
0917nobodyさん2010/03/15(月) 12:10:02ID:???
同じものだったら、
function_existsでチェックしてから定義とかあるけど・・・
違うものなら、名前変えようよ。
0918nobodyさん2010/03/15(月) 12:45:56ID:???
5.3以降ならnamespaceとか
0919nobodyさん2010/03/15(月) 12:54:27ID:???
override_function('func', '$hoge', 'return $hoge + 1;');
or
runkit_function_remove('func');

どちらもインストールされてる環境のほうが稀
0920nobodyさん2010/03/15(月) 13:10:12ID:???
複数のライブラリを使う時の関数名前衝突にもつながる問題だが・・・
あれ?みんなどうやってんだ?
0921nobodyさん2010/03/15(月) 13:21:46ID:???
普通は衝突しないように関数名の先頭にライブラリ固有のprefixをつけるか、クラスつかうんちゃうん?
0922nobodyさん2010/03/15(月) 13:39:02ID:???
>>920
複数のライブラリがfunctionの集まりならそうかもしれんが、普通はclassだからぶつからない
0923nobodyさん2010/03/15(月) 13:42:29ID:R2wjg7Ee
mb_convert_encodingで文字コードを変更出来ますが、ファイルそのものの文字コードを変更するにはどの関数を使えばよいのでしょうか?
0924nobodyさん2010/03/15(月) 13:49:00ID:???
>>923
file_get_contentsで読み込んで
mb_convert_encodingで変換して
file_put_contentsで吐き出すとか。

俺ならexecでnkf使っちゃうけど。
0925nobodyさん2010/03/15(月) 14:31:32ID:???
>>922
クラス名がぶつかった場合は?
0926nobodyさん2010/03/15(月) 14:35:03ID:???
普通はぶつからない
0927nobodyさん2010/03/15(月) 14:37:18ID:???
>>925
namespaces
0928nobodyさん2010/03/15(月) 14:49:26ID:???
普通はぶつからない(キリッ

だっておおおおおwwwwww
ならなんのためにnamespaceって技術が生まれたんだ?wwwwwww
09299232010/03/15(月) 14:51:01ID:R2wjg7Ee
>>924
ありがとうございます。
nkfのほうがよさそうなんでそちらでやってみます。
0930nobodyさん2010/03/15(月) 15:04:06ID:???
技術てw
0931nobodyさん2010/03/15(月) 15:04:57ID:???
ライブラリの用途として作られてるクラスの名前がぶつからないようにするのは基本中の基本だろ
0932nobodyさん2010/03/15(月) 15:06:15ID:???
どっちの味方というわけではないんだが、
名前がぶつからないようにするのが基本って考えも相当危ういかと

いざぶつかったらどうしようもない。って意味だし
0933nobodyさん2010/03/15(月) 15:12:51ID:???
C++とかでは、ネームスペースはライブラリ公開URLから生成し…みたいな約束があるんだが
PHPごときでそこまで気にしたライブラリ作ってる人間いないだろ
ぶつかる時はぶつかるよ
0934nobodyさん2010/03/15(月) 15:13:30ID:???
もともとPHPにネームスペースの機能がなかったから
ライブラリの命名は被らないように注意するのが基本だと思うよ

ネームスペースにしたってJavaのパッケージ名のようにしない限りは被る確立は同じに思えるし
ただネームスペースの場合は、1箇所修正するだけで済むっていうメリットはあるけどね
0935nobodyさん2010/03/15(月) 17:18:25ID:???
>>932
>>933
どんなライブラリ名がぶつかるの?
0936nobodyさん2010/03/15(月) 17:21:58ID:EtpL+ybW
クラスの使い方ってこんな感じで使ってもOKですか?

class Takahashi_Lib
{
 function textedit() {
    return 1;
 }

 function foodmenu() {
    return "FoodSet";
 }
}


$class = new Takahashi_Lib();
echo $class->foodmenu;

}
0937nobodyさん2010/03/15(月) 17:27:07ID:???
>>936
なんも出ないだろそれじゃw
レス数が900を超えています。1000を超えると表示できなくなるよ。