【PHP】質問スレッドpart24【php】
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
04/11/01 04:09:15ID:???・新規質問の方は上げてください。age進行でお願いします。
・質問する際には環境も明記。
・正しい日本語で分かりやすく。
・レスがつかないからって逆切れする厨お断り。
・解決しなくてもこたえてもらったら礼を。
■本家
http://www.php.net/
■日本 PHP ユーザ会
http://www.php.gr.jp/
■PHP マニュアル
http://www.php.net/manual/ja/
■PEAR マニュアル
http://pear.php.net/manual/ja/
過去スレ, 関連スレ等>>2-4
0514nobodyさん
04/11/11 21:27:25ID:???0515nobodyさん
04/11/11 21:29:11ID:???メッソド の検索結果 約 592 件
0516nobodyさん
04/11/11 21:31:27ID:???0518nobodyさん
04/11/12 01:47:24ID:3oKIst3jpublicだと開けっぴろげすぎるので
とりあえずprotectedにする
そんなこと考えてるのは俺だけですか?
0519nobodyさん
04/11/12 01:51:32ID:???0520nobodyさん
04/11/12 01:56:43ID:3oKIst3j・将来継承するかも分からない
ゆえにprotected
なんですが…
0521nobodyさん
04/11/12 02:11:52ID:???OOな考え前提じゃなくてコーディングレベルだけで考えるとこうなる
PHPは特にそうだろうが、誰しもが分析・設計からコードに落とすわけじゃないと思われ
0522nobodyさん
04/11/12 02:35:07ID:???カプセル化で破綻しがちだーね。アクセス制限どうするかっていう部分から
考えはじめるのはオブジェクト指向とは相容れない
しかし現実的な問題もあるよ
IDE任せというわけにもいかないのがPHPだし
0523nobodyさん
04/11/12 02:55:22ID:???分析クラスさえ固まってないのにもうコーディングしなきゃいけない、
でもオブジェクトの性格がはっきりしない、ええい面倒だ全部public!
IDEがあてにならないならリファクタリングなんかしなきゃいいんだ!
という選択肢を選ぶのが真の男。
つかこの手のネタはくだスレの方でやったほうがいいんじゃなかろうか。
0524nobodyさん
04/11/12 03:09:50ID:???0525nobodyさん
04/11/12 03:20:31ID:+Yt5Ck4w基本的にdeleteしてinsertするってのが一般的なのでしょうか?
0526nobodyさん
04/11/12 03:27:58ID:???updateすればいいんでね?
0527nobodyさん
04/11/12 03:28:44ID:???. ィ
.._ .......、._ _ /:/l! またまたご冗談を
:~""''.>゙' "~ ,、、''‐'、| _
゙、'、::::::ノ:::::::_,.-=. _〜:、 /_.}'':, いくらなんでもMySQLをバカにしすぎ。
``、/:::::::::__....,._ `゙'Y' _.ェ-、....._ /_゙''i゙ノ、ノ
,.--l‐''"~..-_'.x-='"゙ー 、`'-、 ,:' ノ゙ノブ
" .!-'",/ `'-‐'') /\ `/ でノ-〈
.-''~ >'゙:: ‐'"゙./ ヽ.,' ~ /
//::::: ', / ,:'゙
0528nobodyさん
04/11/12 04:11:57ID:???f`::'ー 、,-、-、_ _,....-- 、_ _,....-=―ヽ―-、-、_ 、ミ川川川彡
,.r'‐'゙´ヽ,r' ヽ \ー、_:::::::::/,´:::::::::::,:::::::,::::::::ヽ::\`ー、 ミ 彡
,〃ィ ,rヽ'-ヽ i 、 、 ヾ,、 `'y',ィ´/::::::::/|::::::ハ_::::::::ト、::::\ \ 三 ギ そ 三
r'/〃// | i! |, \、_`ー!rf.,イ-,ィ/u ノ::::/ |::::`::::|iヽ::::::ヽ ヽ. 三 ャ れ 三
iヾ!l i /,.=ヽ i,ケ ハ,i', Y't=ラ゙,〉'|::::r'|! 彡´ ,!--、 |i!|::|::i::::::', ', 三 グ は 三
{ヾllッ-, 〃ノ'-'、||ii i|i| |-/! /^ヽ ´ ヾ|从ノ::i::::| ||三 で 三
>|゙! 0ヽ ノ' ´ 0 レノWノi |,.、!/ 0 0 ',' レ|,イ::::i,,_ | !三 言 ひ 三
',i ヽ- , _, " |i| | | ´ '´ハ',Y .!三 っ ょ 三
/l ` !| | i `´ r 'ー‐' u (-, ' | !三 て っ 三
/久 U |! i|'´'、u z_,ノ/ .i |三 る と 三
/イ |ヽ '==..‐_、 |!,'|Y´,ヽ ___ ハ_ ,/i | |三 の し 三
|ト|、',::::\ _,.-‐イ//-'´::::!\'ー‐--ニュ / ト_、 _| _!,=,|三 か て 三
〉:ヾ_'、::::`ー‐r< //イ|::::::_、:::`7i\ __,..-‐'´ .| |`゙"::"::|-"三 !? 三
'ー‐'´¨`'ー、/,rケ /,'1ノ人'-‐'`y'/::::, i| ,!, |`iiイ:::::::::| 彡 三
,〃7,‐/ { ´_,-'´ ,,‐!、=,/.〃::::i i|kハ / ,ヾ、::::::|.|! 彡川川川ミ
,ッ'、_〃'f /゙-<´ r〃 〃 /イ::::,!ッ'/ ', / / |ト、:|:リ
rir' 〃,y'、久_,.rヽ/〃 川/iケir'〃/ ,-'水´ / 〃 \
f::}'ー'〃_i| /::::f|::::', .〃 r/if |||ir' f| レ' r'o | .〃-、 〃 "i
,);'ーッ゙-. レ:::::/_|::::::',_,〃=_、!!|| !i/ ||:,ri !o ∨/_)_〃 |
0529nobodyさん
04/11/12 04:29:04ID:???0530nobodyさん
04/11/12 04:32:05ID:???マルチポストしてきてやったぞ。
http://pc5.2ch.net/test/read.cgi/db/1096838301/268
0531nobodyさん
04/11/12 05:48:47ID:j3YLIEmEob_start();とか使えばどこでもセットできるようですが
送信が溜まってると思うと苦いです。
if(phpversion()>="4.1.0"){
extract($_GET);
extract($_POST);
extract($_COOKIE);
extract($_SERVER);
}
の直後が一番良いのでしょうか?
0532nobodyさん
04/11/12 05:49:21ID:???0533nobodyさん
04/11/12 05:51:51ID:???テレビには、終始無抵抗で殴り続けられる平八が映し出されています。
妹と目が合いました。まずパンツを穿いてください。見つかりませんか。
脚に引っ掛けたままなのを忘れるほど動揺しているんですね。
床に投げ出されたコントローラーが、なおも続く振動でヴヴと鳴き蠢いています。
笑ってごまかしたって駄目です。しかし鉄拳3を選んだセンスは評価したい。
いま平八がKOされました。妹の醜態に兄も一発KOです。
0534nobodyさん
04/11/12 05:56:14ID:???0535nobodyさん
04/11/12 05:57:05ID:???妹がデュアルショックを股間にのガイドライン
http://that3.2ch.net/test/read.cgi/gline/1079969619/
0536nobodyさん
04/11/12 08:53:02ID:FC5lH0u1self::method()と
$this->method()
は内部的に全く同じですか?
0537nobodyさん
04/11/12 09:05:02ID:DqN1EkY0一般的な言語では\r\nはそれぞれ0x0D 0x0Aだと思うのですが、PHPではどうなっているのでしょうか?
さまざまなサイトや関数リファレンス書籍等を見たところすべて\r=0x0A \n=0x0Dと記述されておりました。
しかしecho等で出力させたところ\r=0x0D \n=0x0Aとなりました。
実際にはどちらが正しいのでしょうか?
0538nobodyさん
04/11/12 10:03:50ID:???>さまざまなサイトや関数リファレンス書籍等を見たところすべて\r=0x0A \n=0x0Dと記述されておりました。
>すべて\r=0x0A \n=0x0Dと記述されておりました。
そんなはずはありません。
0539nobodyさん
04/11/12 10:13:39ID:2WcufnQuhttp://jp2.php.net/manual/ja/function.trim.php
0540nobodyさん
04/11/12 10:18:59ID:2WcufnQuhttp://jp2.php.net/manual/ja/tokens.php
では合ってる
0541nobodyさん
04/11/12 10:36:31ID:2WcufnQu間違ってるのは日本語だけかな
0542nobodyさん
04/11/12 11:11:39ID:???------------------------------------------------------------------------
class X{
var $n;
function X($n){
$this->n = $n;
}
}
class Y{
var $x;
// 指定されたX型のメンバ変数を持つYオブジェクトを作成する
function Y($x){
$this->x = $x;
}
}
var $x = new X(10);
var $a = new Y($x);
var $b = new Y($x);
$a->x->n = 20;
------------------------------------------------------------------------
これを実行すると、$b->x->n は10のままですよね。それを、
$a->x->n を変更したときに、$b->x->n の中身も
変更されるようにしたいのですが、何かうまい方法はないでしょうか?
0543nobodyさん
04/11/12 11:14:49ID:8aG2jjUM"#"(シャープ)の入ったURLを読み取るにはどうすればよいのでしょうか・・
$_SERVER['QUERY_STRING']や$_SERVER['REQUEST_URI']では
読み取れないんですが・・
よろしくおながいします。
0544nobodyさん
04/11/12 11:19:53ID:???class X {
var $n;
function X($n){
$this->n = $n;
}
}
class Y {
var $x;
// 指定されたX型のメンバ変数を持つYオブジェクトを作成する
function Y($x){
$this->x = & $x;
}
}
$x = new X(10);
$a = new Y(& $x);
$b = new Y(& $x);
$a->x->n = 20;
?>
$x->n も変わるけど。
0546nobodyさん
04/11/12 11:25:07ID:8aG2jjUM回答ありがとう。
かなり衝撃的
0547542
04/11/12 11:30:33ID:???なるほど。
コンストラクタ呼び出しの引数と、コンストラクタ内のメンバ変数の代入式の
両方を参照にするというのは思いつきませんでした。
ありがとうございました。
0548nobodyさん
04/11/12 11:42:49ID:???0549nobodyさん
04/11/12 11:52:36ID:L9eWiqBvinclude() や file() で読み込むHTMLテンプレートの中に $addr などの変数を
書いておいて、自動でパースしてくれることを期待していたのですが、そのまま
$addr と表示されてしまいます。
これはPerlでも同じだったのですが、$bar = preg_replace('/\$addr/', $addr, $bar);
とでもやる以外にスマートな手はないものでしょうか。
0552nobodyさん
04/11/12 15:10:38ID:/lHAFZLN文法等の基本的なところは大体理解したのですが、
それに加えて最低でも押さえておいた方がよいことは
何でしょうか?
(PEAR、Smarty等いろいろありますが...)
0554nobodyさん
04/11/12 15:25:00ID:/lHAFZLN教育機関の講師が使用する、情報閲覧システムのようです。
構成は↓のようなものが想定されます。
Windows + Apache + PHP + DB(Oracle or DB2 or ???)
0555nobodyさん
04/11/12 16:06:27ID:???ttp://www.asahi-net.or.jp/~wv7y-kmr/memo/php_security.html
あとこういうことはくだ質行ってくれ
0557nobodyさん
04/11/12 16:09:34ID:/lHAFZLN失礼しました。
0558nobodyさん
04/11/12 17:42:30ID:???やはりPHPに来たかw
0559nobodyさん
04/11/12 19:09:46ID:???JavaScript との連携で、JavaScript が location.hash を PHP に渡せば出来る。
0560nobodyさん
04/11/12 19:20:32ID:???0562nobodyさん
04/11/12 19:40:11ID:???他にも、JavaScriptで動的に追加した<select>の選択項目を選択された項目とは別に取得するにはどういうPHPのコードを書いたらいいですか?みたいなのもあったりするし。
0563nobodyさん
04/11/12 20:55:00ID:???0564nobodyさん
04/11/12 21:04:28ID:fQRp2mKbWarning: mb_send_mail(): Could not execute mail delivery program
'/usr/sbin/sendmail -t -i ' in
というエラーがでたのですがsendmailが原因かPHPが原因かどちらなのでしょうか?
また、どうすれば直るのでしょうか?
0566nobodyさん
04/11/12 22:01:20ID:???sendmailをpopenできなかった時にそのwarningが出る。
原因つーか負荷を掛けすぎたんでsendmailがゴネてるってことだな。
鯖の管理者に相談するとよい。つーか管理者から苦情くるだろうから
今のうちに言い訳を考えておくとよい。
0568nobodyさん
04/11/13 00:27:39ID:???0570nobodyさん
04/11/13 01:44:24ID:???そして、trustudio を入れました。新規作成で PHP Project を作成できるようになりましたが、
既存のSimple Project を PHP Project に変換する方法が分かりません。
新しく PHP Project を作成してファイルを移動するしか方法はないのでしょうか?
0571nobodyさん
04/11/13 02:04:19ID:Aaqq6gsUみたいに"を気にしなくても使える(エスケープする必要の無い)
記述方法ありますか?
0572nobodyさん
04/11/13 02:47:39ID:???0575nobodyさん
04/11/13 12:08:21ID:Yc7DSHDt¥nつける意味がわからん・・・改行がなんで二つもいるんだ。。
手抜きしすぎの参考書かうとだめだな・・・
0576nobodyさん
04/11/13 12:11:46ID:???0577nobodyさん
04/11/13 12:13:58ID:Yc7DSHDt改行しないぞ、<br>だけなら改行するけど
0580nobodyさん
04/11/13 12:31:52ID:???0582nobodyさん
04/11/13 13:17:11ID:???独学でやってきたけど、ずーーっとecho使ってました。
そもそも使い方が違うのですか?
0583nobodyさん
04/11/13 13:17:57ID:???0584nobodyさん
04/11/13 13:31:11ID:???0585nobodyさん
04/11/13 13:32:38ID:???かなりワロタ
$a = print('A');
$a = echo('A');
前者は普通に動くけど、後者はエラー。
print 'A','B';
echo 'A','B';
後者は普通に動くけど、前者はエラー。
<?='A'?>
echoには省略形もある。
# これはまた別と考えるべきかもしれないけど
違いはこれぐらいだよ。同じと思うべきかと。
0590nobodyさん
04/11/13 16:50:56ID:???0591nobodyさん
04/11/13 17:29:26ID:6u/jhtaTもっと簡単で、やりたい事を直感的にプラグラミングできる言語が
開発されたらいいのになぁ。
0592nobodyさん
04/11/13 17:34:31ID:???簡単だと汎用性に乏しくなるし。。。
0593nobodyさん
04/11/13 17:44:13ID:???俺の悩みはPHPのマニュアル内の検索の仕方がわからない
右上の検索欄は「関数名」しか対応してないみたいだし
0596nobodyさん
04/11/13 18:57:25ID:???Perlで
$str =~ tr/:;<=>?@[\\]^_`/ABCDEFGabcdef/;
と置換するのと同じ事をPHPでやるにはどうしたらよいのでしょうか?
部分的に置換などの方法は分かるのですが、上記のように
:はA
;はB
<はC
というように対応させたいのですが、PHPにそのような関数が見つからずに困っています。
どなたかご存じないでしょうか?
トリップ変換の時に使うところね。strtr関数がそのまま使える。
http://f9.aaa.livedoor.jp/~fcafe/fbox/lib/trip.phps
# 懲りずに自分のソースを晒してみる
0601nobodyさん
04/11/13 20:37:07ID:???スピードで言えばただ単純に出力するなら作りの問題で、若干echoの方が早い。
(作りに問題があるからではない。要するに別名ではなく、別物だから)
あくまでも若干ね。
使い方については>>587
0602nobodyさん
04/11/13 21:20:10ID:???Simple Projectを削除(コンテンツは削除しないで)
New Projectで、PHPプロジェクトを選んで、そのSimple Projectと同じ名前で
プロジェクト作成、ワーニング出るが、それをよく読んで実行。
きっちり検証してないから、どうなってもしらんぞ。
CVSに放り込むなり、バックアップ取るなりしろよ。
0604570
04/11/13 21:56:56ID:???親切にどうもありがとう!
『新規でPHP Project を作って、コンテンツを”コピー”』で、できました。
0605596
04/11/13 22:12:47ID:???ソースまでいただけるとは思いませんでした。
$salt = ereg_replace("[^\.-z]", ".", $salt);
この部分まではなんとか関数調べて出来たんですが
$salt = strtr($salt, ":;<=>?@[\\]^_`", "ABCDEFGabcdef");
この関数まで見つけられませんでした。^^;
とりあえず実装してみて、キャップ機能は自分で移植できそうなのでがんばります。
ほんとにありがとうございました。
0606nobodyさん
04/11/14 00:53:26ID:???PHP4+Apacheの環境です。
私はウェブサイトのトップページをphp(index.php)で作っているのですが、
アクセスする度にMYSQLに接続しDBからデータを
引っ張ってきている為、トップページが少し重くなっています。
それを解消する為にindex.phpを実行した結果をindex.htmlとして
吐き出して、訪問者にはindex.htmlという静的なページを見てもらえれば
サイトが軽くなると考えました。
自分でindex.phpにアクセスして
そのページのソースをコピーしてindex.htmlとして
保存すれば簡単なのですが、これを自動で出来る方法は
ありませんか?
一定時間毎にindex.phpからindex.htmlを吐き出す方法はないものでしょうか。
0607nobodyさん
04/11/14 00:58:11ID:???しかし、それが気になるということは、ものすごいアクセス数なんだろうな。
0608nobodyさん
04/11/14 01:05:38ID:???0610nobodyさん
04/11/14 01:24:59ID:???0611nobodyさん
04/11/14 01:47:19ID:ojuplhFmcronの利用をしたくないか、cronの利用ができない場合は、
Smartyテンプレートを利用することをおすすめします。
Smartyのキャッシュ機能を利用することで、
例えば、キャッシュが有効な間はDBへのアクセスなどをスキップさせる
事ができます。
require_once("Smarty.class.php");
$smarty =& new Smarty();
$smarty->template_dir = "./templates/";
$smarty->compile_dir = "./templates_c/";
$smarty->caching = 2;
$smarty->compile_check = true;
$smarty->cache_lifetime = 60; // キャッシュの有効時間を1分に設定
$template = "index.tpl";
if(!$smarty->is_cached($template)) {
// このへんにDBへのアクセスとか
// $smarty->assign("変数名", "値");を行う
// キャッシュの有効期限が切れるまでは、ここは実行されない
}
// 画面表示
$smarty->displary($template);
※適当に書いたのでこのままでは動かないかもしれないけど、
雰囲気的にはこんな感じ。
0612nobodyさん
04/11/14 01:51:34ID:???0613nobodyさん
04/11/14 02:05:55ID:???【やりたい事】
以下のファイルが存在します。
main.php
sub/sub.php
util/util.php
config/config.php
main.phpとsub.phpはそれぞれ、util.phpを使用します。
util.phpは、config.phpを使用します。
【やってみた事】
main,subそれぞれで、requireを使ってutil.phpを呼びました。(相対パス)
util.phpでconfig.phpを呼びました。(相対パス)
【結果と疑問点】
subは正常に動作しました。
mainは、utilでのconfigの呼び出しに失敗しました。
requireで読み込んだutilが、mainやsubの場所で動いているから
こうなるんだろうという事までは理解したのですが、
この仕組みを意図したとおりに動かすにはどうすれば良いでしょう?
reauireを使うのがそもそも誤りかと思ったのですが、
手元のリファレンスには適切な関数が見当たりません…。
ちなみに当方Java経験者(初心者だけど)で、
requireをimportの乗りで使ってました…(汗)
■ このスレッドは過去ログ倉庫に格納されています