【PHP】下らねぇ質問はここに書き込みやがれ 24
レス数が900を超えています。1000を超えると表示できなくなるよ。
0001nobodyさん
2006/07/07(金) 14:54:53ID:KnVubDvEここならお前の下らない質問に回答があるかも知れません。
まず読め【PHP マニュアル】
http://www.php.net/manual/ja/
過去スレは>>2
0814nobodyさん
2006/07/20(木) 15:09:44ID:???0815nobodyさん
2006/07/20(木) 15:14:57ID:???ありがとうございます。
わからないから聞いたわけで。
HTMLファイル2個分くらいはいちいちこだわらずにおいたほうがいいということですね。
ありがとうございました。
0819nobodyさん
2006/07/20(木) 15:33:23ID:???ホームページに、自作した柄のカウンターを置きたいのですが、そういったソフトはありますでしょうか?
なるだけ簡単に設置できるソフトがいいです。
出来れば、無料で。。。よろしくお願いいたしますm(_ _)m
0822819
2006/07/20(木) 16:16:00ID:???ありがとうございます。もっかい探してみます!ありがとうございました。
>>821
すれ違いスマソ。
それでは、失礼しますた。m(_ _)m
0823nobodyさん
2006/07/20(木) 16:50:05ID:???プログラムから読むのとhttpで読むのとは訳がちがう。
訳あってあいてのftpのパスワードを知る訳にいかない。
こっちのソースは相手にみえてもよい。
という場合に、手元で相手の鯖のプログラムをいじれるというメリットはある。
0824nobodyさん
2006/07/20(木) 17:03:43ID:???ページを更新するたびに、
file()でデータを配列に格納させて
foreach(as)で処理をしているのですが、
file()では何行くらいまでのファイルにすれば良さそうですか?
やはり、1000も2000もあると、重すぎますよね。
また、読み込むファイルを2回に分けた場合、
負担があまりかからないのでしょうか?
例えば
$file = file("test1.dat"); <=500行
foreach ($file as $value){
処理
}
$file = file("test2.dat"); <=500行
foreach ($file as $value){
処理
}
この処理と
$file = file("test.dat"); <=1000行
foreach ($file as $value){
処理
}
この処理
どちらのほうがサーバーに負担をかけずに良さそうですか?
0825nobodyさん
2006/07/20(木) 17:06:55ID:???文字列から最初の2文字だけを取り除くにはどうしたらいいでしょうか?
0826819
2006/07/20(木) 17:10:45ID:???本当にありがとうございました。m(_ _)m
0827825
2006/07/20(木) 17:12:36ID:???本当にありがとうございました。m(_ _)m
0829nobodyさん
2006/07/20(木) 17:24:19ID:???簡単な方法はないでしょうか?
0831nobodyさん
2006/07/20(木) 17:40:18ID:???どうしたらいいでしょうか?
半角といえど色々あるので正規表現でもどう書いていいかわかりません
0833nobodyさん
2006/07/20(木) 17:47:15ID:???送信内容を
$txt
に格納したとして
strlen($txt) == mb_strlen($txt)
なら
キック
0835nobodyさん
2006/07/20(木) 18:02:55ID:a8uvmb5cしてきた人を全て、「https://www〜/index.php」に転送させてSSLで
通信させたいのですが、どうやれば良いのでしょうか?
PHPで$_SERVER['DOCUMENT_ROOT']; や $_SERVER['SCRIPT_FILENAME'];
で調べて、「https://www〜/index.php」に転送させようとしたのです
が、「http」でリクエストしてきたのか「https」でリクエストしてきた
のかまでは表示されませんでした。Apacheのバーチャルホストの設定
でも良いので、どなたか「http」でアクセスしてきた人を「https」の
同じページに転送させる方法をご存知でしょうか?宜しくお願い致しま
す。
0837nobodyさん
2006/07/20(木) 18:12:08ID:???0839nobodyさん
2006/07/20(木) 18:21:14ID:a8uvmb5c>>835です。ありがとうございます!!
$_SERVER["HTTPS"] で調べたら、httpsの時は「on」になり、
httpの時は何も表示されませんでした。この$_SERVER["HTTPS"] が
onかどうかで、条件分岐させれば良いのですね。
どうも、ありがとうございました!!
0840nobodyさん
2006/07/20(木) 18:26:40ID:???こういう時は phpinfo を https でアクセスして表示させてみると良いよ。
定義される $_SERVER 変数一覧が見れるから。
0842nobodyさん
2006/07/20(木) 18:37:11ID:???0843nobodyさん
2006/07/20(木) 18:37:59ID:???0844nobodyさん
2006/07/20(木) 18:43:17ID:???0845nobodyさん
2006/07/20(木) 18:45:17ID:???0846nobodyさん
2006/07/20(木) 18:47:32ID:a8uvmb5c>>839です。ありがとうございます。phpinfoをhttpsでアクセスして
みたら、_SERVER["SCRIPT_URI"] 等の$_SERVER 変数一覧が出てき
ました。こういう時は、phpinfoで定義済み変数を調べれば良いので
すね。ありがとうございました!!
0847nobodyさん
2006/07/20(木) 18:47:56ID:???0848nobodyさん
2006/07/20(木) 18:48:20ID:???0849nobodyさん
2006/07/20(木) 18:51:02ID:???0850nobodyさん
2006/07/20(木) 18:51:49ID:???0851nobodyさん
2006/07/20(木) 19:08:29ID:???けど、そんなのはマ板でやれ
0852nobodyさん
2006/07/20(木) 19:09:33ID:???0853nobodyさん
2006/07/20(木) 19:59:45ID:zh5fHketレスどうもです。遅くなってすみません。
なんとなく解決した気になっていたのですが、いままた別のパターンで同じような罠にはまりました。
A include(http://hogehoge.com/my_function.php);
B include(/home/htdocs/my_function.php);←サーバのパス
AがダメでBが大丈夫な仕組みというか理由が知りたいです。
僕はいまローカル環境で作っていますが、AのパスもBのURLもブラウザに直接入力すると、どちらも何も表示されません。
0854nobodyさん
2006/07/20(木) 21:45:25ID:x+eRwqU4という文字列を与えたら
Array
(
[a] => 1
[b] => 2
[c] => 3
)
という配列を返してくれる関数はありますか?
また、その逆をしてくれる関数はありますか?
0855nobodyさん
2006/07/20(木) 21:47:44ID:???$str=join('&', $ar) ;
0859nobodyさん
2006/07/20(木) 23:05:47ID:???> という配列を返してくれる関数はありますか?
ある。
> また、その逆をしてくれる関数はありますか?
PHP5以降でならある。
0860nobodyさん
2006/07/20(木) 23:06:09ID:eXAIKTBkどちらか一方の文字列をマッチさせるときはどのようにしますか?
単にマッチさせるだけなので、正規表現関数ではなくて
文字列関数でループ処理した方がいいですかね?
(マルチバイトのmb_eregとか試してみたけどうまくいかなかった)
0861nobodyさん
2006/07/20(木) 23:12:56ID:???> A include(http://hogehoge.com/my_function.php);
これはhogehoge.comのWEBサーバーにお願いしてファイルをダウンロード(名前をつけて保存と一緒)している。
そのため、取得できる内容はWEBサーバーの出力結果の内容になり、
PHPとして解釈できる拡張子だとPHPが実行されてその結果が表示されてしまう。
> B include(/home/htdocs/my_function.php);←サーバのパス
これは途中に何も介さず、PHP自身がファイルをそのまま取り込んでいる。
だから何も内容は変化せず、ファイルの内容がそのまま取得される。
通常のPHPの処理としてはBなわけだが、Aみたいに「ネット越し」でファイルを得ようとすると、
何を経由してるかによって結果が変化してしまう場合があるというわけ。
0863nobodyさん
2006/07/20(木) 23:14:36ID:???mb_eregでもmb_strposでもどっちでもできると思うんだが。
mb_eregで一体どういう書き方をしたんだ。
0868nobodyさん
2006/07/21(金) 07:31:02ID:???ローカルで表示させるなら
http://localhost/my_function.php
0870nobodyさん
2006/07/21(金) 08:29:07ID:iPhYBOeTする時に、libexpatというライブラリが必要と本に書いてあったのですが、そのrpmパッケージが
どこで入手できるのかわかりません。
大変申し訳ありませんが、ご存知の方がいらっしゃいましたら教えていただけないしょうか?
開発環境はwindowsではなく、RedHatLinux9です。
aptコマンドを使えるようにして、検索をかけてみたのですが全くヒットしません orz
0871nobodyさん
2006/07/21(金) 08:36:14ID:???ここで探してみれば?
0873nobodyさん
2006/07/21(金) 08:52:48ID:iPhYBOeTPHP×PostgreSQLでつくる最強webシステムという本で、その本の340ページに書いてあります
0875nobodyさん
2006/07/21(金) 09:05:58ID:iPhYBOeTたしかに。。。phpのバージョンが4の時の話なので。。。。
パッケージ自体がもうリリースされていないんでしょうか
0876nobodyさん
2006/07/21(金) 09:10:02ID:???0877nobodyさん
2006/07/21(金) 09:18:41ID:iPhYBOeTなんだか、Authクラスを使うには必要っぽいような書き方されてるんですよねぇ
0878nobodyさん
2006/07/21(金) 09:30:43ID:???0880nobodyさん
2006/07/21(金) 10:06:48ID:5NMNDw00ありがとうございます。凄くわかりやすいです。助かりました。
質問ばかりで申し訳ないのですが、
インクルードしたいファイルが同一サーバではない場合(サーバのパスを指定できない場合)はどのようにしたらいいでしょうか?
前述のように拡張子をphp以外のもの(webサーバを経由しても内容が変化しないもの)にするのが一般的でしょうか?
0881860
2006/07/21(金) 11:30:17ID:???で、やっぱりマッチしない
mb_eregならマッチしてました
mb_regex_encoding('sjis');
$str = "こんにちは山田太郎です";
$pattern = "(山田|田中)";
if (mb_ereg($pattern, $str)) echo "mb_eregマッチしました";
else if (mb_ereg_match($pattern, $str)) echo "mb_ereg_matchマッチしました";
else echo "no match";
0882860
2006/07/21(金) 11:32:37ID:???すいません
テストコード整形したので分岐がおかしい
両方チェックするようにしてもmb_ereg_matchはマッチしない
PHP4.3系
0883nobodyさん
2006/07/21(金) 11:39:59ID:???allow_url_fopenが有効ってことか、
他サーバのソースをそのまま実行するってのは、
きもちわるく思ってしまう
最も、他サーバが信頼できるサーバであるなら
そういう機能は積極的に使うのが賢いのだと思いつつ
ここぞという使いどころにめぐり合っていない
allow_url_fopen のステキな使い方ないかな?
0884nobodyさん
2006/07/21(金) 11:44:06ID:???まー、拡張子を変えちゃうか、あるいは.htaccessで拡張子に対するApacheの扱いを変えちゃうか、
あるいはラッパーのプログラムを経由してファイル内容をreadfile()とかで垂れ流させるか、ってとこじゃない?
0885nobodyさん
2006/07/21(金) 14:41:49ID:???全角の¥に変換したいのですがうまくできません。
PHP Version 5.1.2です。
$a = "\2,000";
//$a = mb_ereg_replace("\","¥", $a); //エラー
//$a = mb_ereg_replace('\',"¥", $a); //エラー
//$a = mb_ereg_replace("\\","¥", $a); // ワーニング変換できず
//$a = mb_ereg_replace('\\',"¥", $a); // ワーニング変換できず
こんな感じです…。何かうまいやり方がないでしょうか?
0886nobodyさん
2006/07/21(金) 14:45:03ID:???0887nobodyさん
2006/07/21(金) 15:14:02ID:???おおおおお・・・・・・・・
すんなりできました。この辺の似た機能だけど違う関数を
勉強しないとダメですね。886さんありがとうございました。助かりました。
0888nobodyさん
2006/07/21(金) 15:15:36ID:???str_replace は天才
0890nobodyさん
2006/07/21(金) 16:51:58ID:???おとなしくUTF-8でも使ってろってもんだ。
0891nobodyさん
2006/07/21(金) 17:43:50ID:5NMNDw00config.phpというファイルに書いて、必要なときにincludeしているのですが、
スクリプト中にパスワードとかを直接記述しているのは、やっぱりセキュリティー的に危険なのでしょうか?
また、こういう場合は一般的にどうやって対処しているのでしょうか?
0894nobodyさん
2006/07/21(金) 17:48:14ID:???0895nobodyさん
2006/07/21(金) 18:00:02ID:???http://hogehoge.com/へのリンクが貼られているかどうか
調べたいのですが、どうすれば良いのでしょうか?
ちなみに、http://www.example.com/は自分のサイトではないこと前提とします。
0896nobodyさん
2006/07/21(金) 18:11:32ID:???0897nobodyさん
2006/07/21(金) 18:12:48ID:???能動的にはwww.example.comを走査してリンクを探す。
受動的にはhogehoge.comにアクセス解析を設置してリファラを見る。
0898nobodyさん
2006/07/21(金) 18:14:46ID:b+2L373xカタカナに変換するにはどうしたら良いでしょうか?ご教授お願いします
0900nobodyさん
2006/07/21(金) 18:36:31ID:???ttp://www.mukom.netfirms.com/scripts/linkman.php
参考になるかもね
0901nobodyさん
2006/07/21(金) 18:38:32ID:???From:test@example.comで
From 【test@example.com (test@example.com)】
となるのですが、このFromに名前をつけれないのでしょうか?
たとえば
From 【EXAMPLEからメールです。 (test@example.com)】
このような感じでしたいのですが、どうすれば良いのでしょう。
どなたか教えていただけませんか?
0902nobodyさん
2006/07/21(金) 18:42:33ID:???additional_headers に所望の From ヘッダを挿入
http://jp.php.net/manual/ja/function.mb-send-mail.php
mime_encode とか忘れずに。アドレスを囲むのは <> で。
0903nobodyさん
2006/07/21(金) 18:46:14ID:???有難う御座います。
タイトル(?)の部分が文字化けしてしまったのですが、
mime_encodeというのは何でしょうか?
ググってみたのですが、それらしいサイトが見当たらなくて
0905nobodyさん
2006/07/21(金) 18:49:09ID:???http://www.google.com/search?hl=ja&q=mime_encode&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=
それらしいサイトだらけに見えるんだけどー
0907nobodyさん
2006/07/21(金) 18:50:01ID:???今見つけました。
0908nobodyさん
2006/07/21(金) 19:01:03ID:???何か参考になるサイトがあれば教えてください。
0909nobodyさん
2006/07/21(金) 19:15:24ID:???0911nobodyさん
2006/07/21(金) 19:18:24ID:???レス数が900を超えています。1000を超えると表示できなくなるよ。