【PHP】くだらねぇ質問はここに書き込みやがれpart3
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
05/02/07 21:47:15ID:???ここなら本スレで回答のないお前の下らない質問に回答があるかも知れません。
次スレは>>970あたりが建てて下さい
・過去スレ
【PHP】くだらねぇ質問はここに書き込みやがれ
http://pc5.2ch.net/test/read.cgi/php/1099322141/
【PHP】くだらねぇ質問はここに書き込みやがれpart2
http://pc5.2ch.net/test/read.cgi/php/1105218084/
0356nobodyさん
05/02/16 09:46:16ID:???PHPのソースにHTMLは一つも書いてないPHPソースがすっきりしていい感じ
0357system V
05/02/16 10:40:40ID:1Qb3n4kr基本的にソースをコンパイルするという事なので、速度は
早くなるのでしょうか_?
0358nobodyさん
05/02/16 13:09:41ID:???Smartyで言うコンパイルは独自形式のテンプレート(HTML)をPHPに変換することを言う。
ただ、Smartyが作ったPHPは最適化されているらしい。
だいたい、そんなに速度が気になるならアクセレータいれろ。
それでも物足りないならCでかけ。
0359nobodyさん
05/02/16 13:20:59ID:1xqIcAacこれに、(文字列の右に)半角空白を追加し23けたで桁そろえするにはどうすればいいのでしょう?
以下のようにやると、なぜか無限ループになるようでして。。。
//その長さを得る
$length = strlen($param);
//スペースでうめる
if ($length < 23 ){
for ($i=1;$i++;$i< (23 - $length)){
$param .= " ";
}
}
return $param;
0360nobodyさん
05/02/16 13:39:07ID:fPO4Xozx$a=str_repeat(" ",23);
$param=substr($param.$a,0,23);
return $param;
で、おけ?
0362nobodyさん
05/02/16 13:41:00ID:???0363nobodyさん
05/02/16 14:35:39ID:???str_pad
0364nobodyさん
05/02/16 15:30:39ID:rZSwCkuB$hairetu = array(
0 => array( 0=>"a", 1=>"b", 2=>"c" ),
2 => array( 0=>"d", 1=>"e", 2=>"f" )
);
のように生成した場合、この時点で既に、
$hairetu[1][0]、$hairetu[1][1]、$hairetu[1][2] の領域も
メモリ上に確保されているのでしょうか?
どうかご教授おねがいします
0365nobodyさん
05/02/16 15:36:39ID:???この辺を読んで
ttp://www.php.net/manual/ja/language.types.array.php
print_r($hairetu) を見てみれば分かるかと。
0366原因不明
05/02/16 15:55:19ID:uWJf6Zq8カチャカチャと何度もリロードみたいになったり、結局表示エラーになったりと。このような現象が発生した事がある方はいますか?
また解決策などありましたら、ご教示願います。
原因予測 セッションが関係しているような気もします。
環境
WINXPHOME
APACHE2.0.52 PHP5.0.1 MySQL4.0.20 MyAdmin2.5.7
0367nobodyさん
05/02/16 16:30:57ID:rZSwCkuB感謝です!!
0369nobodyさん
05/02/16 17:36:32ID:4WvcImPZ調べてみましたら、
while(){
while(){}
}
といったwhleの2つ目で処理がとまってしまうことを確認しました。
なんかwhileを2重で使うと止まってしまう理由みたいなものはあるでしょうか?
PHPのばーじょんは 4.3.10です。
0370nobodyさん
05/02/16 17:47:08ID:???0371nobodyさん
05/02/16 19:25:33ID:???0372nobodyさん
05/02/17 10:01:05ID:???>コードは正しいはずなんですが、なぜか正常に動作せずに困ってます。
コードは、あなたが意図した動きかどうかは関係なくあなたが書いた通りにしか動きません。
0373nobodyさん
05/02/17 15:36:10ID:???$a = 'aaajpgaaa';
echo preg_match( '/[a-z]+(?:jpg|gif)/', $a ); // 1
echo preg_match( '|[a-z]+(?:jpg\|gif)|', $a ); // 0
/regexp/ じゃなくて |regexp| にしてるのが問題みたいですが…
もしかして、/ 以外は使えませんか?
0374nobodyさん
05/02/17 16:07:16ID:???$a = 'aaajpg|gifaaa';
echo preg_match( '|[a-z]+(?:jpg\|gif)|', $a );
0375nobodyさん
05/02/17 16:17:33ID:???0376nobodyさん
05/02/17 16:17:54ID:IwJn+K4Gそれを受信するスクリプトで、データを正常に受け取れたか
どうかを応答するにはどうすれば良いのでしょうか?
送信スクリプト
send.php
<?php
$fp = fsockopen($uri['host'], $uri['port']);
if (!$fp) {
die("ERROR\n");
}
fputs($fp, $request);
/*応答データ受信*/
$response = "";
while (!feof($fp)) {
$response .= fgets($fp, 4096);
}
fclose($fp);
?>
0380nobodyさん
05/02/17 16:28:08ID:???0381nobodyさん
05/02/17 16:33:54ID:???0383376
05/02/17 17:30:00ID:???レスありがとうございます。
標準出力で、応答が返ってこないなぁ、と思っていたら
send.phpに
print $response;
を入れるの忘れてました orz orz orz
そりゃ応答が見られないわ。
0384nobodyさん
05/02/17 17:30:52ID:sdNEcSRAちゃんとif文とかでも字下げしてくれて軽いやつあったら教えて下さい。
なんか色々落としたけどどれも字下げしてくれない。
エクリプスはなんか大げさでめんどいし。
0385nobodyさん
05/02/17 17:39:32ID:???ViVi 19xx を使ってます。
if else for などをインデントワードに登録すれば自動でインデントしてくれます。
0387nobodyさん
05/02/17 18:58:16ID:???0388nobodyさん
05/02/17 19:01:18ID:ti92O2g1$i=10;
$ii=100;
print("関数($i,$ii)");
結果
10%
みたいやつ・・・
でもって、10.122%とかなっても、切り捨てて10%ってなるやつ。
そんな都合良いのありますか?
0391nobodyさん
05/02/17 19:36:50ID:???切り捨てはfloor関数があるから、floor($i*100/$ii)でええんでないの?
$i,$iiが整数でもfloatで返してくれるみたいだし。
切り上げやら切り捨てやらの単純なやつは、マニュアルの数学関数あたりにあるよ。
0392nobodyさん
05/02/17 21:13:14ID:???携帯サイトを開発しようと思っているのですが、
その中のコンテンツとして、「曲のダウンロード」を装備したいです。
サイトの中に設置した音楽ファイルに携帯からアクセスし、ダウンロード
することってできますか?
また、ダウンロードした音楽ファイルを携帯で再生することってできますか?
いろいろ調べてみましたが、どういった検索をしてもなかなか有益な情報が得られなかったので
質問させて頂きました。
よろしくお願いします。
0394nobodyさん
05/02/17 21:26:43ID:???端末のハードウェアやケータイのキャリアによっては
根本的に駄目な場合も、勝手サイトでは駄目なような仕組みの場合もあるけどな。
各ケータイのキャリアの公式サイトに情報は載ってるのでよく読んでみな
0395392
05/02/17 21:28:32ID:???よろしければその方法を教えてください。
PCでならダウンロードしたい音楽ファイルにリンクを張ればよいだけかと思いますが、
携帯だとどういった方法でDLさせるのでしょうか?
MP3やMIDIなどの再生はやはり機種によって再生できるかどうかというのが
決まるのでしょうか?
0396nobodyさん
05/02/17 21:42:44ID:USMiZu5Azend とかphpのコード分からなくするやつあるじゃないですか。
そこで疑問なんですけど、
通常利用していて他人にphpのコードが分かってしまうものなんでしょうか?
場合によってはコード内にパスワードとかも含めている場合があるから、
他人に分かるって、非常に危険な気がしますが。
よろしこです
0397nobodyさん
05/02/17 21:43:33ID:???0400nobodyさん
05/02/17 22:17:35ID:???$iに特定の1つのタグ(<HR>など)の個数を求めるにはどのようにすれば良いのでしょうか。
$comments の中のタグは<HR> のようにはなっていません。<HR>のままです。
0402nobodyさん
05/02/17 22:29:46ID:???httpdの設定をトチ狂ったり、共有サーバで間抜けな設定してなけりゃ
PHPのソースを直接見られるような状況にならない(というかそう設定する)ので
その心配は杞憂。
0404nobodyさん
05/02/18 03:59:32ID:YYkzUTubファイルサイズを0にするのに何を読み込むのでしょうか?用途がイマイチわかりません。
0405nobodyさん
05/02/18 07:20:17ID:???$fp = fopen("test", "w+");
fwrite($fp, "hoge\n"); //書き込み
fseek($fp, 0, SEEK_SET);
$read = fgets($fp); //読み込み
echo $read;
fclose($fp);
0406nobodyさん
05/02/18 08:01:41ID:???0407nobodyさん
05/02/18 08:21:10ID:???0409nobodyさん
05/02/18 11:21:15ID:???change time (ctime), access time (atime), and modify time (mtime).
0410nobodyさん
05/02/18 14:46:56ID:???腹におちないのでどなたか教えて下さい。
例えばインターフェイスの利用。(ポリモーフィズムっていうんでしょうか)
class Shain()をインターフェイスとして定義
何もしない関数standUp()を定義
class Tanto() extends Shainで"担当が立ち上がりました"という文字列を返す関数
standUp()を実装
class Bucho() extends Shainで"部長が立ち上がりました"という文字列を返す関数
standUp()を実装
そうすると、呼び出し側で
$shain = new Tanto(); $shain.standUp();
$shain = new Bucho(); $shain.standUp();
と変数名$shainをインスタンスとするだけなのでインターフェイスのShainは
不要だと思うのですが、何か意味があるのでしょうか。
共通の関数をShainに実装して継承する場合なら意味はあるかもしれませんが
そうなると
テンプレートパターンなんかの場合で共通関数がなさそう(ちょっとづつ違う)
場合などはやはりインターフェイスの意味合いが無いと思うのですが。
Javaのように親の型に代入するよなことがあれば意味もありそうなのですが。
なんか誤解してますでしょうか。
インターフェイスはこういう点で必要であるといったことなどを
どなたか教えていただけませんか。
0411nobodyさん
05/02/18 14:58:40ID:???何でもかんでもオブジェクト指向って拘るなよ。
Hello,World!!のプログラムにもクラスは必要か?
もっと柔軟に立ち回ろうぜ
0412nobodyさん
05/02/18 15:01:42ID:???そっちの世界で心ゆくまで議論していて下さいね。
0413410
05/02/18 15:12:42ID:???>>411
確かにその通りなのですが、必要かどうかというよりも「どういう事なのか」
知りたいということです。例であげたShain.staudUp()は、まんまHelloWorldプログラムです。
>>412
どっち?どこらへんが適切?
0414nobodyさん
05/02/18 15:12:54ID:Q7wlkIXaイメージとしては
http://null.com/view.php
にアクセスすると
http://null.com/test.xmlにhttp://null.com/test.xslを適用させて表示させるといった感じです
0415nobodyさん
05/02/18 15:29:04ID:???親の型に代入するからインターフェイスが必要というのは考え方が逆だぞ
自分自身ちゃんと理解できてるか怪しいけど、インターフェイスってのは
意味的制約みたいな感じだと思う
インターフェイスなんて処理を行いたいってだけならJavaとかでも不要
例えば>>410の例だとShainを継承したクラスはstandUp()というメソッドが
定義されていることが保障され、実際の型が分からなくても実際の型に
対応した処理が行われる
例なんて挙げればきりがないけど、今思いついた例だと何らかのプラグインとかだろうか
アプリケーションからプラグインを呼び出す場合に何らかの取り決めが必要だろう
plugin()関数を定義する とか
これを
pluginインターフェイスを継承する
と考えてみる。pluginインターフェイスにはinstall() uninstall() main()があって
プラグインを作るには、このクラスを実装しなくてはならない。
そうするとプラグインを呼び出す側では実際の型や実際の処理によらずに同じコードで実行できる。
PHPみたいに型の弱い言語ではpluginを継承しなくてもメソッドが実装されていれば
問題ないがpluginというインターフェイスを継承することによってメソッド定義されていると保障できる。
PHP5では引数にヒントが与えられるようになっているみたいだな
ttp://www.php.net/manual/ja/language.oop5.typehinting.php
結論を言ってしまうとOOPをPHPで実現するにはどうするかというのはいいが
OOP自体についての質問はスレ違い
0416nobodyさん
05/02/18 15:39:07ID:???pear に XML_XSLT_Wrapper ていうのがあるよ
ていうか、マニュアルにあるっしょ。たぶん user notes に。
>>410 に必要なのはたぶん教科書を捨てて実地のソースをたくさん読むことだと思う。
まぁphp5のソースはまだないけど。
0417410
05/02/18 15:58:34ID:???解説ありがとうございます。なるほど制約かぁ。例まであげてくれて
ありがとう。感謝します。アマチュアの独学なのでこういった形で
教えていただけて大変助かりました。
0418nobodyさん
05/02/18 16:08:11ID:aVVVaBSB0420nobodyさん
05/02/18 16:32:33ID:aVVVaBSB日本語に決まってんだろ。質問に質問すんなよ。
0423nobodyさん
05/02/18 17:08:14ID:???マジレスするとUTF-8に日本語って定義がない
違いはシングルバイトコードかマルチバイトコードの区別だけだ
PHP固有の質問でもないから、あとはgoogleで調べてくれ。
0426nobodyさん
05/02/18 17:51:21ID:???はじめ送られてきたフォーム内容を解析して、<input ... checked>などで
書こうとしたのですが、手元のPHP本を読んだらセッションを使った方法が
書いてありました。
この2つの方法の違いというか、メリット、デメリットはなんでしょうか?
0427nobodyさん
05/02/18 17:59:13ID:???2ページならセッションの出番が無いと思われ。
フォーム -(1)-> フォーム -(2)-> 確認画面等
セッション利用有無に関係なく、(1)は当然<input>になる。
セッションを使うと(2)の部分でセッションのデータを利用可能になり、
フォームデータの再送信による手間を防げたり、
(クライアント側からの)データ改竄を防げたりする。
0428nobodyさん
05/02/18 18:39:47ID:???丁寧な説明ありがとうございます。よく理解できました。
フォームデータが毎回変わり、一回切りのページ表示なので
セッションの意味はないことがわかりました。
ありがとうございました。
0429nobodyさん
05/02/18 21:37:24ID:???Warning: main(xxxxxxxxxx.html) [function.main]: failed to open stream
Fatal error: main() [function.require]: Failed opening required
上記二つのエラーメッセージが、<?php require(xxxxxxxxxx.html); ?>と言うのを、
htmlに埋め込んだところ出てしまいました。色々と試しているのですが、なかなか出来ません。
どなたかご教授頂けると幸いです。
ちなみに、サーバーはxreaをお借りしています。
0430nobodyさん
05/02/18 21:46:34ID:???0431nobodyさん
05/02/18 21:46:41ID:???0432nobodyさん
05/02/18 21:50:47ID:???PHP4でのオブジェクトの参照渡し $foo &= new Hoge(); はどういう時に使うべき
ものなんでしょう?
php 参照渡し オブジェクトでgoogleさんに聞いてみましたが出てこなかったです。
0433nobodyさん
05/02/18 21:52:34ID:???ですが、それでも無理なんです。
0434nobodyさん
05/02/18 22:53:38ID:JUw9WZeiその際に、投稿者の名前や、メッセージなどの情報も記入してもらい、これをmysqlに入れてしまい、ファイルパスもDBに入れて管理するものを作ろうとしてます。
<form action="hoge.php" method="post" enctype="multipart/form-data">
名前:
<input type="text" name="name">
メッセージ:
<input type="text" name="message">
ファイル:
<input type="hidden" name="MAX_FILE_SIZE" size="*****">
<input type="file" name="file">
<input type="submit" name="submit" value="送信">
</form>
multipart/form-dataにすると、2バイトの文字だとまともに値(ここでは$nameと$message)を受け渡し出来ません。
ファイルのアップと、その他の情報を2回に分ければすむ話ですがなんとか
関連情報の記入、ファルの選択
確認画面
ファイルアップ、ならびに、DB登録、(場合によっては管理者への告知メール、登録者への確認メール)
という流れにしたいと思っていますが、$nameと$messageに対してどういう処理をすれば、値が取り出せるのか解りません。この辺について、解りやすい説明や、サンプル等あるサイトがあれば教えて下さい。
0435nobodyさん
05/02/18 23:54:53ID:???>multipart/form-dataにすると、2バイトの文字だとまともに値(ここでは$nameと$message)を受け渡し出来ません。
んなこたぁない!
0438nobodyさん
05/02/19 00:42:10ID:???> PHP4でのオブジェクトの参照渡し $foo &= new Hoge(); はどういう時に使うべき
> ものなんでしょう?
$foo = & new Hoge();
なら、”使うべき”つうか、インスタンス生成するときは大概そうするよ。
0439nobodyさん
05/02/19 11:04:17ID:a1KdI/7k0440nobodyさん
05/02/19 11:16:49ID:???JSPが凄そうなのでJSPを一生懸命勉強しました。
勉強の成果を試そうと、HPスペースを探しました。
JSPを無条件で使えるところはほとんどありませんでした。
泣きそうになりました。
これに懲りたので、今度は普及度の高そうなPHPを勉強しました。
最新バージョンであろうPHP5の書籍を参考に勉強しました。
勉強の成果を試そうと、HPスペースを探しました。
PHP5を使えるところが見当たりませんでした。
死にたくなりました。
0441nobodyさん
05/02/19 11:22:52ID:???0442nobodyさん
05/02/19 11:30:26ID:???はやくphp5がつかえる無料スペースを教えて下さい。
0443nobodyさん
05/02/19 11:38:53ID:???0444nobodyさん
05/02/19 11:47:22ID:???自分で鯖を立てるほどの根性はありません。
どなたか、php5を無料スペースで使ってる方はいませんか。
0445nobodyさん
05/02/19 11:49:07ID:???本当は超生きたいです。120歳くらいまで生きたいです。
110歳くらいまでPHPをやりたいです。
ですから無料スペースを教えて下さい。
0446434
05/02/19 12:14:30ID:62TgDRLY>>434です。
自分なりに調べてみたのですが、
ttp://ns1.php.gr.jp/pipermail/php-users/2002-July/008617.html
この辺りで、調べる方向は合ってますか?
phpのバージョンによっても、いろいろみたいですが、漏れの使ってる鯖はPHP Version 4.3.1です。
0447nobodyさん
05/02/19 12:59:21ID:???ページのテストの度にFTP を使うのが面倒になって
クライアント(win2000)にapache1.3 とphp4 を
インストールしました。
クライアントのphp から自宅サーバのpostfix を使って
php スクリプトでメール送信を実現するには
クライアント側のphp.ini をどう設定すればいいのでしょう?
ご教授お願いします。
0448nobodyさん
05/02/19 13:25:13ID:???やってみどんな問題があったのさ。
http://jp.php.net/mail
0450nobodyさん
05/02/19 13:55:30ID:???読み込むファイルをHTMLなどにして、charsetなどを指定した方が良いのでしょうか?
誰か教えて下さい。
0451447
05/02/19 14:30:24ID:???> やってみどんな問題が・・・・
Warning: mb_send_mail(): SMTP server response: 501 Bad address syntax in f:\hoge\fuga.php on line 246
というエラーになります。
現在のクライアント(win2000)のphp.ini には、
[mail function]
; For Win32 only.
SMTP = 192.168.11.xx ← サーバのローカルIP アドレス
smtp_port = 25
; For Win32 only.
sendmail_from = [email protected]
と記述しています。
このhuga.php はユーザ登録時に登録完了メールを自動送信するというようなもので、該当個所は
//メール送信処理
$mail_subject = "メンバ登録を完了しました";
$mail_body = "登録ありがとうございました。\n";
$mail_body.= "あなたのログインIDとパスワードは以下の通りです。\n";
$mail_body.= "ログインID : " . $_SESSION["user_id"] . "\n";
$mail_body.= "パスワード : " . $_SESSION["passwd1"] . "\n";
$mail_headers = "From: " . mb_encode_mimeheader("振り込め株式会社") . "<[email protected]>\r\n" ;
$mail_headers .= "Cc: " . $cc . "\r\n" ;
$mail_headers .= "Bcc: " . $bcc . "\r\n" ;
$mail_headers .= "Content-Type: text/plain; charset=ISO-2022-JP\r\n" ;
$mail_headers .= "Content-Transfer-Encoding: 7bit\r\n" ;
$mail_returnpath = "[email protected]"; //エラー返送メールの受取
mb_send_mail($_SESSION["mail"], $mail_subject, $mail_body, $mail_headers, "-f".$mail_returnpath); ← line 246
です。"振り込め株式会社" というのは創作です。
ちなみにサーバにFTP 転送すれば問題なく動作します。
0452447
05/02/19 14:31:49ID:???> Samba入れてWindows共有しろ・・・・
一番先にそうしようと思っていたのです。
Samba は導入済みで運用もしているのですが、
その共有ディレクトリはWebDAV でも見えるようにACLアクセス制御を
設定しています。
で、クライアント(win2000)にapache1.3 のドキュメントルートを
共有ディレクトリ内に変更したのですけど、何故か全く見えない
(だったと思います、当時の記憶がおぼろげ)。
ん゛〜分からん、ということでほったらかしにしていました。
win2000 にapache_1.3.xx-win32-x86-no_src.exe からインストールした
apache はwindowsログインしているユーザアカウントではなくて、
nobody とかでドキュメントルートにアクセスするのですかね?
windowsログインしているユーザアカウントと同名のアカウントは
ACLアクセスの対象にしていて、ファイルサーバ的には問題なく
動作しているのですけど。
0453447
05/02/19 14:41:27ID:???php.ini の[mbstring]の各ディレクティブはどうなっていますでしょう?
mbstring.http_input = auto
mbstring.detect_order = auto
などに設定して、webサーバを再読込した後でも文字化けしますか?
0454450
05/02/19 15:15:02ID:???php.iniとは何処にあるものなんでしょうか?
0455nobodyさん
05/02/19 15:21:21ID:???$box[$id]は正しく表示されています。通常変数がセットされていない時に
出力されるエラーだと想うのですが他にはどのような状況で表示されて
しまうのでしょうか?。
$box['hoge'] = '123456789';
$sql = mysql_fetch_assoc($result);
$uid = $sql['uid'];
echo $box[$id];
>>450
テキストファイルをrequireしているというのが良くわからないけど
requireしているファイルの文字コードは確かめてる?
■ このスレッドは過去ログ倉庫に格納されています