【PHP】PEAR Part2
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2005/08/01(月) 21:27:12ID:pG+mahP3■PEAR
http://pear.php.net/
■前スレ
Pear
http://pc8.2ch.net/test/read.cgi/php/985665522/
0457nobodyさん
2006/06/12(月) 02:35:54ID:???http://pear.php.net/manual/ja/package.html.html-quickform-controller.intro.php
これ理解するくらいなら、自分でコントローラ作った方がマシじゃない?
使ってるやついたらHQFCのいいとこを教えてくれ。
0458nobodyさん
2006/06/13(火) 00:45:56ID:???0459nobodyさん
2006/06/13(火) 00:49:11ID:???この小難しい HQFC を理解して使える……ってのも
馬鹿の程度がかなーり微妙だよな
0461nobodyさん
2006/06/13(火) 09:36:39ID:???0462nobodyさん
2006/06/13(火) 09:48:21ID:???0465nobodyさん
2006/06/13(火) 13:15:57ID:???PHP使いはPEARと書いてピアーとよみます
0466nobodyさん
2006/06/13(火) 15:37:05ID:???0467nobodyさん
2006/06/13(火) 16:31:37ID:???ペアーでいいんじゃない
0468nobodyさん
2006/06/13(火) 16:33:31ID:???0469nobodyさん
2006/06/13(火) 17:48:06ID:???0470nobodyさん
2006/06/13(火) 19:04:20ID:???0471nobodyさん
2006/06/14(水) 11:24:21ID:???0472nobodyさん
2006/06/14(水) 12:05:34ID:???対向車と鉢合わせ(↓な感じ)
_______/ ̄\____
●→ ←●俺
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
_______/ ̄\____
●→ ←●俺
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
_______/ ̄\____
● ●俺
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
_______/ ̄\____
● ●俺
| ( _●_) ミ
_______/ ̄\____
/ ● ● |
| ( _●_) ミ
∩___∩
| ノ ヽ
/ ● ● | ベア──!!
| ( _●_) ミ
彡、 |∪| 、`\
/ __ ヽノ /´> )
0473nobodyさん
2006/06/14(水) 16:59:31ID:???0475nobodyさん
2006/06/15(木) 10:33:44ID:???0476nobodyさん
2006/06/15(木) 13:37:41ID:???0477nobodyさん
2006/06/15(木) 15:02:27ID:???ttp://pear.php.net/manual/ja/introduction.php
> 果物の梨と同じように(「ペア」と)発音します。
梨↓
ttp://dictionary.goo.ne.jp/search.php?MT=pear&kind=ej&mode=0&base=1&row=0
0478nobodyさん
2006/06/15(木) 15:05:14ID:???0479nobodyさん
2006/06/15(木) 15:49:12ID:???0480nobodyさん
2006/06/15(木) 18:03:54ID:???0481nobodyさん
2006/06/15(木) 18:16:56ID:???漏れは今poorだ。金くれ。
0482nobodyさん
2006/06/15(木) 21:20:04ID:???セルに数値を入れるときカンマ区切りで表示する方法ないですかね?
NumFormatでもできないようなので、PHP側でnumber_formatして
代入しているのですが、office2003のexcelで開くと
文字列として認識され激しく鬱です。
当然関数も使えなくなりますし…
0484482
2006/06/15(木) 23:35:37ID:???恥ずかしながらそのメソッドのマニュアルを見ても、
カンマ区切りのやり方が思いつかないんですが・・・。
ソース読まなきゃだめですか?
0485nobodyさん
2006/06/16(金) 03:02:14ID:???なんかもうひとつイマイチなものが多かったりするんだが、
Zendの開発力ってあの程度のものなのかな。
0486nobodyさん
2006/06/16(金) 03:34:33ID:???・元々PHP本体や拡張やってた人
・Zendの人でPHPの本体、特にZEやってる人
と余りかぶってない気がする。PECLの方は、元々は
拡張でやってたのをPECLに出したものが多いけどね。
0487nobodyさん
2006/06/17(土) 13:02:44ID:???0489nobodyさん
2006/06/18(日) 15:11:03ID:???検索エンジンが来たら落ちます。orz
0490nobodyさん
2006/06/19(月) 16:42:02ID:???0491nobodyさん
2006/06/19(月) 16:46:27ID:???なにーーーーー
1との互換性はあるのか?
ファイルのアップロードはサポートされるのか?
ちょっといってくる
0492nobodyさん
2006/06/19(月) 17:09:57ID:???The package development is currently in planning stage.
...orz
待つか
0493nobodyさん
2006/06/19(月) 18:02:43ID:???欲しい機能ある?
one time token実装して欲しいなー
0494nobodyさん
2006/06/21(水) 12:59:40ID:af4RZ/SlWarning: touch(): Unable to create file /usr/lib/php/.lock because Permission denied in Registry.php on line 284
could not create lock file: failed to open stream: No such file or directory
というエラーが出てしまうのですが、どこのパーミッションを変えればよいのでしょうか?
0495nobodyさん
2006/06/21(水) 13:20:26ID:???/usr/lib/php/.lock のファイルのどちらか。
まずは .lock を消して試すことだね。
0496nobodyさん
2006/06/21(水) 19:17:43ID:???0497nobodyさん
2006/06/21(水) 19:40:50ID:???管理にお願いするか
自分で書き込めるディレクトリ(DocumentRoot外が望ましい)に手動で置いて
includ_pathを通す。
0499498
2006/06/21(水) 21:37:25ID:???と言ってみる
0500nobodyさん
2006/06/21(水) 23:56:04ID:???0501nobodyさん
2006/06/22(木) 14:12:58ID:347Blei1グループ要素の検証を行う時、
ttp://www.okushin.co.jp/information/HTML_QForm/10_addGroupRule/
ここを参考にaddGroupRuleで以下のように書いたのですが
これだとクライアントで検証を行ってくれません。
色々なところに「,"client"」などを色々挿入してみたのですが、どうもうまくいきません。
複合要素の配列を使った検証で、クライアント検証をさせるにはどのように書けばよいのでしょうか。
$form->addGroupRule("pay", array(
"money"=>array(
array("金額は必須入力です。","required"),
array("金額は数字のみで入力して下さい。","numeric")
)
));
0502nobodyさん
2006/06/22(木) 20:39:31ID:5nFH6Fdqtelnetとかつかえる?
方法はいろいろあるみたい。
http://www.go-pear.org/manual/ja/installation.shared.php
さくらでは、普通にpear install -o PAER でローカルコピーできた。
ほかのとこでは、
-bash-2.05b$ lynx -source http://pear.php.net/go-pear | php4
とかいう感じでいけそうだった。
0503nobodyさん
2006/06/24(土) 08:49:42ID:???単純にファイルコピーで使えたりするしね。
0504nobodyさん
2006/06/24(土) 14:46:40ID:???手動でコピー(展開)してパス通してたら使えないの有るの?
知ってるなら具体的に教えて。
なんかの参考になるかもしれんし
0505nobodyさん
2006/06/24(土) 17:53:54ID:???単純に外部ライブラリに頼るものじゃね
GD前提のモジュール(あるか知らないけれど)とかがあるとして
シェル使えなくてGDがレン鯖にも入ってなくて、
サポートもされないならそれは使えない
もちろんそれはPEAR自体の問題ではないけどね
0506nobodyさん
2006/06/25(日) 02:29:16ID:???原因分かる方おしえてくだされ
XML error at line 1, check URL
Invalid return payload: enable debugging to examine incoming payload
0507nobodyさん
2006/06/25(日) 13:35:09ID:???0508nobodyさん
2006/06/25(日) 14:48:24ID:???は出る?
0509nobodyさん
2006/06/25(日) 15:59:40ID:???ありがとう、無事できました。
upgrade-allでupgradeできたと思ってたんだけど、list-upgradesしたらどれもアップグレードできてませんですた。
で、PEARとXML_RPCを個別で指定してアップグレードしたところchannelがなんたらかんたらと言われて、
それにしたがったところ動くようになりました。
0510nobodyさん
2006/07/11(火) 19:31:23ID:???This package been superseded by MDB2 but is still maintained for bugs and security fixes
MDB2 使うぐらいだったら、PDO の方が良いような…。
0511nobodyさん
2006/07/19(水) 02:41:49ID:bvrYbrpe複数キーワードの場合どう指定すればいいのかわからんです。
おしえてえらいひと
ソースはこれまんま使わせてもらったです
ttp://dozo.rgr.jp/log/eid194.html
0512nobodyさん
2006/07/19(水) 03:02:13ID:???漏れなら単発で引いて、自分でマージ。
0513nobodyさん
2006/07/20(木) 14:43:10ID:9HfxuTZkマニュアルで見ると、なにごともDB.phpのインクルードから的な感じで
説明なくそうなってますけど自分の環境にはDB.phpがありません。(インストール失敗してる?)
エラーもその旨出ます("DB.phpが見つからない")
おききしたいのは、インストール時に「DB.php」というファイルが生成されるのか、
phpをインストールしたときのように、なにか別のファイルの名前を変更するなどして自分でつくるとか、
そのあたりどういった具合になるんでしょうか。
環境はWinXPのsp1、phpは5.1.4です。
0514nobodyさん
2006/07/20(木) 15:03:18ID:???どうやってインストールして、どのようにインストールが成功したと判断したの?
pear listで表示される?
表示されるなら、PEARのフォルダがinclude pathに含まれていないんじゃないかな?
0515513
2006/07/20(木) 17:26:23ID:???ありがとうございます。
pear listではパッケージの一覧が表示されますし(すべて"安定"との表示)、
include_pathも確認済みです。
インストールはコマンドプロンプトからhttp://go-pear.orgにアクセスしてインストールしました。
その際にそれぞれのパッケージに対してダウンロードok,インストールokというような表示が逐一出まして、最後まで進んで終了しました。
最後に以下の警告が表示されました。
ひとつはWindowsの環境変数のパスが違っていると言うもの→PHPのマニュアルに従ってパスをC:\php\extにしていたが、警告を受けてC:\phpに戻しました。
それとphp.iniのinclude_pathに対してのもの→PEARへのパスを追記。
他に、phpフォルダ直下のPEAR_ENV.regをWindowsのレジストリに追加しておくと便利、という表示に従い、
意味はわかりませんでしたが実行しました。
何度かやり直し、今も確認してたんですが、やはりDB.phpというファイルはなく、
スクリプトの実行エラーもDB.phpが見つからない、という内容のままです・・・
0516nobodyさん
2006/07/20(木) 17:55:03ID:???一見問題なさそうだけど・・・。
インストールは普通コマンドプロンプトから
pear install パッケージ名
で良いですよ。
pear listで表示されるstableは安定版という意味で、β版やα版を
入れるときは pear config-set preferred_state beta なんてことをやってから
インストールします。予断ですが。
一度 pear uninstall DB でアンインストールして、再インストールして見てはどうでしょう?
それと確認ですがDB.phpは本当にどこにもありませんか?
HDDを検索してみてはいかがでしょう?
0517513
2006/07/20(木) 18:46:05ID:???ありがとうございます!解決できました。
おしえていただいたアンインストールのコマンドを試してみたら
"インストールされてません"とのメッセージが・・・
その後pear install DBとしたところDB.phpも現われ、スクリプトも実行できました。
インストールされてればpear listでもちゃんと"DB"と表示されるんですね・・・
今まではPEARを使うための準備をしてただけなのに勘違いしてました・・・
PEARをインストールすれば主だったパッケージはインストールされてるものとばかり・・・(恥)
もう何日かごちゃごちゃやっていたので本当にたすかりましたm(_ _)m
0518nobodyさん
2006/07/20(木) 19:02:35ID:???うーむなんだかw
ま解決して何より。
もうひとつ豆知識として、モジュールには依存関係がある場合が
あるんだけど、依存するモジュールもまとめてインストールするときには
pear install --alldeps モジュール名
という書き方もできる。
また、インストール済みのモジュールは、
pear upgrade-all
で最新版(がリリースされてれば)に更新できる。
この2つくらいは覚えとき。
0520nobodyさん
2006/07/23(日) 04:35:31ID:becjw5iFPEAR::Auth使ってるのですが、少し時間が空くとusernameが空になる現象に困っています。
$myAuth->username から $myAuth->getUsername()に変えても直りません。
お助けください><;;
0521nobodyさん
2006/07/23(日) 04:43:40ID:???30分ぐらい(?)他っておくと(アイドルにしておくと)起こるようです。
PHP5で最近pear install Authしました。
0522520
2006/07/23(日) 04:56:36ID:???時間が空かなくても、ページ移動するごとにログインしている状態(getAuthがtrue)なのにusernameが空になっているようです...
0523nobodyさん
2006/07/24(月) 17:55:27ID:WjQLi7Eq自宅環境で正常に動作するスクリプトを作ったのですが、レン鯖にアップすると
コンパイルが正常に行われません。
具体的には、HTMLタグが全て"Array"という文字になり、本来PHPコードに変換されるはずの{variable}等が
全く変換されず、そのまま出力されてしまいます。
PEARやHTML_Template_Flexy の再インストールもやってみましたが、変化ありません。
念のため php.ini の mbstring 関連の設定も揃えてみましたが、こちらも変化ありませんでした。
このような場合、どのような原因が考えられますでしょうか?
チェックすべき項目などがありましたらご指摘お願いします。
0524nobodyさん
2006/07/25(火) 09:30:59ID:???ちょっとチェック用のスクリプト作って動作チェックぐらいして無いの?
0525nobodyさん
2006/08/02(水) 03:18:27ID:aylqqE98PEARのDBを使って、DB側で設定されたシーケンス値を
インサート後に取得する方法ってありますでしょうか?
PEARのマニュアルの警告には、シーケンスはDBMS側を使わずに、
PEARの中で管理しろと書いてあるのですが、
やっぱりDB側のシーケンスは使ってはだめなんですかね・・・?
0526nobodyさん
2006/08/02(水) 10:38:05ID:???INSERT 前に nextId() を使って、次のシーケンスを取得しておいて
それを INSERT して、その後参照する場面でもそのシーケンスを使いまわす。
0528nobodyさん
2006/08/24(木) 23:34:20ID:KkbLy53/$db->setFetchModeを「DB_FETCHMODE_ASSOC」に指定すると、
2つのテーブルで同じ名前の列がある場合、片方しかとれません。
たとえば、
create table t1 (id integer, data varchar(10));
create table t2 (id integer, data varchar(10));
とした時に、下のようなSELECTを実行します。
select t1.id, t1.data, t2.id, t2.data from t1, t2 where t1.id = t2.id
すると、かえってくる連想配列の内容をprint_rでみると
Array
(
[id] => 1
[data] => data1
)
こんな内容が帰ってきます。FETCHモードが、「DB_FETCHMODE_ASSOC」の場合、
指定した列すべて取れないのでしょうか・・・?期待していたのは下のような結果なのですが。
Array
(
[t1.id] => 1
[t1.data] => data1
[t2.id] => 1
[t2.data] => data2
)
ちなみに、PHPは4.3.11、PEAR::DBは1.7.6、DBはpostgreSQLでV8.xです。
ご存知の方、いらっしゃいましたら教えてください。よろしくお願いいたします。
0529nobodyさん
2006/08/24(木) 23:38:19ID:???t1.data AS t1_data, t2.data AS t2_data,
みたいにエイリアスで別々の名前つけてやって取得すればいけると思う
0531nobodyさん
2006/09/09(土) 15:30:02ID:???えろいひとがいましたら、おしえてくれたりしてください。
php4.3 redhatES4 apache1.3 mysql4.1 です。
PEARのDB_DataObjectで「UPDATE」するときの質問です。
DB_DataObjectのインクルードや設定ファイル読み込みが終わったとしします。
numが1のデータを探して年齢を変更するといった場合は
$hoge=DB_DataObject::factory("hoges");
$hoge->get(num,1);
$hoge->age = 15;
$hoge->update();
でできるのですが、numが1で名前がyamadaのデータの年齢を変更するといった場合がうまくできません。
$hoge=DB_DataObject::factory("hoges");
$hoge->whereAdd('id = 1');
$hoge->whereAdd('name = yamada');
$hoge->age = 15;
$hoge->update();
PEARのドキュメントをみても、複数絞込みのUPDATEの例がなくてこまっています。
直接SQL query()をなげるしかないのでしょうか。
0532nobodyさん
2006/09/09(土) 16:08:57ID:???DB_DataObject の update() は基本的にユニークキーを指定して行なうものだけど
そうでなく自前で WhereAdd() した条件で広範囲に update() する時には
引数に定数をつけて update(DB_DATAOBJECT_WHEREADD_ONLY) してやるとよろしい
0533531
2006/09/09(土) 18:22:55ID:???たったそれだけのことなのですね。
基本的に2つに一致する条件のものは1つのレコードだけなのですが
まぁこのやりかたで解決しました。
0534nobodyさん
2006/09/09(土) 19:19:05ID:???蛇足だけど DB_DataObject は全体の傾向として
テーブルに必ず int ひとつだけのユニークキーがあるようにしてあると
扱いやすいようにできている気がする
開発工期を短く済ませるために DB_DataObject で扱いやすいテーブル設計をするとか
邪道っぽいけどとても効果的だったりw
0536nobodyさん
2006/09/16(土) 22:13:02ID:???http://pear.php.net/pepr/pepr-proposal-show.php?id=419
PEAR新世紀幕開けか
0537nobodyさん
2006/09/17(日) 02:30:59ID:BzsrnxFm動かないやつとかあるのかな?
いまいち知らんけど、PHP4時代に作られたライブラリ
だと、PHP5で非互換な部分のせいで動かなかったり
するんかな。
0538nobodyさん
2006/09/17(日) 16:20:16ID:???PHP5時代の資産が未来永劫使える保証すらないから。
0539nobodyさん
2006/09/26(火) 16:24:45ID:???PHP5で作られたものなんでMDB2みたいな不安定なものばかりだし
0540nobodyさん
2006/09/26(火) 17:00:15ID:???0541531
2006/10/01(日) 07:09:16ID:Ge/0d2rjphp4.3 redhatES4 apache1.3 mysql4.1 です。
PEARのDB_DataObjectで「UPDATE」するときの質問です。
numが1のデータを探して年齢を+1するといった場合は
$hoge=DB_DataObject::factory("hoges");
$hoge->get(num,1);
$hoge->age += 1;
$hoge->update();
でできるのですが、numが1で誕生日が1月のデータの年齢を+1するといった場合がうまくできません。
$hoge=DB_DataObject::factory("hoges");
$hoge->whereAdd('num = 1');
$hoge->whereAdd('birthday = 1');
$hoge->age += 1;
$hoge->update(DB_DATAOBJECT_WHEREADD_ONLY);
+= のように加えたりする系の処理はDB_DATAOBJECT_WHEREADD_ONLYだと無理なのでしょうか。
0542nobodyさん
2006/10/01(日) 09:25:45ID:???SQL直書きならできそうだけどな。
0543531
2006/10/01(日) 11:29:45ID:Ge/0d2rjMYSQL4.1です。
CREATE TABLE `hoges` (
`id` int(10) NOT NULL auto_increment,
`num` int(10) NOT NULL default '0',
`age` int(3) NOT NULL default '0',
`birthday` datetime NOT NULL default '0000-00-00 00:00:00',
PRIMARY KEY (`id`)
) TYPE=MyISAM;
0544531
2006/10/01(日) 11:38:58ID:Ge/0d2rjbirthdayもとりあえずintegerで。
0545nobodyさん
2006/10/01(日) 11:54:05ID:???$hoge->age = DB_DataObject_Cast::sql('age + 1');
ってことかな?
上記だと joinAdd() とかした時にハマる危険性がないでもないが通常は問題なかろ
$hoge->age = DB_DataObject_Cast::sql($hoge->tableName().'.age + 1');
とかだと冗長だけどさらに確実
とか書いてるけど試してないから実験は自分でやってみてね
0546nobodyさん
2006/10/01(日) 12:04:49ID:???SQL直書きにしといた方が、他の人が見たときに
ここは全体にかけるUPDATEなんだってわかりやすいと思うけどなあ
O/R mapperはSQL書かずにDB扱うためだけのもんじゃないのに
0547nobodyさん
2006/10/02(月) 09:06:19ID:???普通は「生年月日」だね
0548nobodyさん
2006/10/02(月) 14:32:51ID:???「年齢」は取得するSQLだのプログラムだのでその時決定する
ってのがいいんでないかい
パフォーマンス要求厳しい場合は別だけど……
0549531
2006/10/03(火) 01:49:42ID:???num、age等はサンプルです。実際にやる場合は547氏のいうとおり
生年月日のほうがよいでしょう。
質問の意図としては
「複数行をアップデートする」
かつ
「+=といった数値を加える」
処理を上記方法でできないか?というかんじでした。
聞き方が悪くて申し訳ありません。
とりあえず試した方法でやってみます。
最悪SQL直で。
0550nobodyさん
2006/10/03(火) 17:48:51ID:???0551nobodyさん
2006/10/03(火) 22:37:28ID:???Xdebugをインストールしようと思い、
cmdから# pecl install Xdebug
を実行しました。
しかしエラーが表示され、
xdebugというフォルダが作成されるものの、
フォルダの中身は空っぽです。
設定を間違えているんでしょうか?
0552nobodyさん
2006/10/03(火) 22:43:50ID:???0554nobodyさん
2006/10/03(火) 22:59:16ID:???そのメッセージでぐぐっただけだけどこれは?
http://it-laboratory.seesaa.net/article/20204067.html
■ このスレッドは過去ログ倉庫に格納されています