【PHP】PEAR Part2
レス数が900を超えています。1000を超えると表示できなくなるよ。
0001nobodyさん
2005/08/01(月) 21:27:12ID:pG+mahP3■PEAR
http://pear.php.net/
■前スレ
Pear
http://pc8.2ch.net/test/read.cgi/php/985665522/
0830nobodyさん
2007/04/08(日) 03:01:58ID:n+ShWf8j>キャッシュをメモリに置けばお手軽に負荷テストの結果を一桁あげられる
cacheLiteってメモリ云々とかしてたのか
単にキャッシュを作ってreadfile()で表示してるだけなのかと思ってた
ってか、ふーん楽勝〜車輪の再発明でもいいもんね〜とか調子にのって
myCacheSystemを作ってしまったんだが、単にreadfile()で表示するだけでも効果あるよね
携帯3キャリアごとの絵文字が入ったページの表示切り替えなんだが
(いちいち変換するより作りおきと思って)
今は一つのファイルで3キャリア分岐(if...else if...)のPHPコード交じりの静的?に書き出しているんだけど、
アクセスが集中すると、ロックが変になるのかファイルが途中で途切れてパースエラー頻発
おまけにパースエラーはハンドリングできない?ので目視でエラーチェックorz
0831nobodyさん
2007/04/10(火) 10:33:43ID:???0832nobodyさん
2007/04/10(火) 13:41:55ID:???横レスごめんなさい。携帯3キャリアの絵文字のコード(変換コード?)って
どうやって手に入れたんですか?
それと、最近の携帯は3社共通仕様になってますが、そこのコードも手に入りますか?
将来的に携帯を視野に入れてるので、是非お聞かせ下さい。
0833nobodyさん
2007/04/11(水) 04:58:32ID:xStB8qdyで作成されたキャッシュデータがファイルの所有者がapacheになっちゃうので
FTPソフトでは消せないんですが、全て削除するような関数はありますか?
(Cache_liteでいうclean関数みたいな)
0834nobodyさん
2007/04/11(水) 05:00:07ID:xStB8qdy共用サーバ(ロリポ)で、PEARのCache(Cache_Liteじゃない)
で作成されたキャッシュデータの所有者がapacheになっちゃうので
FTPソフトでは消せないんですが、全て削除するような関数はありますか?
(Cache_liteでいうclean関数みたいな)
まだ変、ごめんなさい(´;ω;`)
0835nobodyさん
2007/04/11(水) 06:30:50ID:???そうすればapacheのUIDで消す事ができるでしょ?
0836nobodyさん
2007/04/11(水) 11:14:51ID:???0837nobodyさん
2007/04/11(水) 12:40:28ID:???コンテナのFILEのクラスをextendsしてsaveメソッドあたりの時にchmodすればいいだけだ。
0838nobodyさん
2007/04/11(水) 15:29:36ID:???共有鯖使うなって感じ。占有鯖使えば?
0839nobodyさん
2007/04/11(水) 18:00:02ID:???0840nobodyさん
2007/04/11(水) 18:00:33ID:???ディレクトリ内のファイル一覧出してunlinkにぶち込んだら綺麗に消えました!
所有者が「apache」ってのに尻込みして、PHPプログラムじゃ消せないだろうと
先入観を持った私がバカでした。
ありがとうございました、本当に助かりました。
>>836
おっしゃるとおり、サクッと消したい気持ちもあったんですが、
純粋にPHPプログラムで消せると思ってなくて・・・ゴメンナサイ、ありがとです。
>>837
私には難しくてよく分かりませんでしたが、優しさは伝わりました、ありがとです。
>>838
貧乏でゴメンナサイ(´・ω・`)
0841nobodyさん
2007/04/12(木) 09:52:37ID:???>ディレクトリ内のファイル一覧出してunlinkにぶち込んだら綺麗に消えました!
Cache/Container/file.phpを勉強のつもりでいいから読め。
flushで一発だろ。
$cache = new Cache('file',なんたら);
$id = $cache->generateID('なんたr');
ってやってるんだろうから
$cache -> flush($id);
で消えるはずだ。やってないけど。
0843nobodyさん
2007/04/12(木) 11:17:40ID:???0844nobodyさん
2007/04/18(水) 10:27:31ID:???$tmpArray = array();
foreach ($list as $row) {
$tmpCheckBox =& $form->createElement('checkbox');
$tmpCheckBox->setName($i);
$tmpCheckBox->setText($row['name']);
$tmpCheckBox->updateAttributes(array(
'value' => $row['id'],
'id' => 'check_'.$i
));
$tmpArray[] = $tmpCheckBox;
$i++;
}
$form->addGroup($tmpArray, 'ques_01', '', '');
こんな感じで checkbox の value の値は変えられるようになったのですが
freeze() すると値が1に戻ってしまいます。
何とか freeze() を経由しても、継承する方法はないのでしょうか?
0845nobodyさん
2007/04/18(水) 12:30:05ID:???nameを foo[] とか foo[$i] にした方がいいと思う
0846nobodyさん
2007/04/18(水) 12:33:12ID:???http://pear.php.net/package/HTML_QuickForm2/
0847844
2007/04/19(木) 11:31:58ID:???name は修正しました。ご指摘ありがとうございます。
いろいろとやってみてるんですが setPersistantFreeze(true) 指定してもだめ。
$_POST の値では渡っているんですが…。
0848nobodyさん
2007/04/22(日) 19:06:46ID:???だからfreezeしてvalueの値が変わる変わらないに関わらず
該当チェックボックスのnameのPOSTがあるかないかで
判断するようにロジックを組め
チェックボックスってのはチェックするためのボックスのことだ
0849nobodyさん
2007/05/07(月) 22:53:29ID:???XHTMLヘッダ部分を生成するPEARって他にないのですか?
0850nobodyさん
2007/05/10(木) 17:54:10ID:???○○○ <[email protected]>
の○○○の部分に []()<>@,;\:". があると送れなくなりました。
mb_encode_mimeheader() は、英数字だけだと
=?ISO-2022-JP〜 のようにしてくれないためメール送信できません。
英数字だけでも =?ISO-2022-JP〜 にしてくれる
関数なりモジュールはないでしょうか?
0851nobodyさん
2007/05/10(木) 19:40:51ID:???$to = '=?ISO-2022-JP?B?' . base64_encode($name) . '?=' . '<' . $to_addr . '>';
みたいな感じで
0853nobodyさん
2007/05/11(金) 10:38:49ID:???MIME は 74 文字で折り返します。
その実装例はないでしょうか?
# メールに関することなので、
# 自分がコードを書くより、
# 実績のあるコードがあるとうれしいです。
0854nobodyさん
2007/05/11(金) 15:36:48ID:???こんなのはどうだろう?
修正よろしく>PHP ハッカーたち江
<?php
$string = 'あいうえお かきくけこ さしすせそ たちつてと なにぬねの はひふへほ まみむめも やゆよ';
$fold = 24;
$MIME = array();
$indent = '';
$line = 0;
$start = 0;
for ($i = 0; $i < mb_strlen($string, 'ascii') + 2; $i += $fold) {
$from = mb_strcut($string, $start, $fold);
if ($line > 0) {
$indent = ' ';
}
$MIME[] = $indent . '=?ISO-2022-JP?B?' . base64_encode(mb_convert_encoding($from, 'JIS', 'EUC-JP')) . '?=';
$start += mb_strlen($from, 'ascii');
$line++;
}
?>
0855nobodyさん
2007/05/11(金) 16:25:45ID:???> mb_encode_mimeheader() は、英数字だけだと
> =?ISO-2022-JP〜 のようにしてくれないためメール送信できません。
そうだっけ? ちょっと試してみたが、
$ php -r 'echo mb_encode_mimeheader ("あいうえお かきくけこ さしすせそ たちつてと なにぬねの はひふへほ まみむめも やゆよ");'
=?ISO-2022-JP?B?GyRCJCIkJCQmJCgkKhsoQiAbJEIkKyQtJC8kMSQzGyhCIBskQiQ1GyhC?=
=?ISO-2022-JP?B?GyRCJDckOSQ7JD0bKEIgGyRCJD8kQSREJEYkSBsoQiAbJEIkSiRLGyhC?=
=?ISO-2022-JP?B?GyRCJEwkTSROGyhCIBskQiRPJFIkVSRYJFsbKEIgGyRCJF4kXyRgGyhC?=
=?ISO-2022-JP?B?GyRCJGEkYhsoQiAbJEIkZCRmJGgbKEI=?=
0856nobodyさん
2007/05/11(金) 17:33:32ID:???0857nobodyさん
2007/05/11(金) 17:38:04ID:???mimeエンコードしなくていいんじゃないの?
だからmb_encode_mimeheaderは変換せずに返すんじゃないのか
0858nobodyさん
2007/05/11(金) 19:02:14ID:???0859855
2007/05/12(土) 00:43:49ID:???0860nobodyさん
2007/05/13(日) 16:24:10ID:???今読むとなかなか大変だけど…
まーbase64とjisですましちゃうお手軽でinvalidなコードはよくないとおもうよ
0861nobodyさん
2007/05/13(日) 17:12:19ID:???0862nobodyさん
2007/05/13(日) 22:27:06ID:???ひょっとして落ちてる?
0863850
2007/05/14(月) 10:05:14ID:???いろいろありがとうございます。
jcode.pl の移植は私の手に余ります…。
皆さん、どうしているんでしょうね。
0864nobodyさん
2007/05/20(日) 21:58:47ID:???0865nobodyさん
2007/05/21(月) 16:48:40ID:???0866nobodyさん
2007/05/28(月) 13:54:38ID:???0867nobodyさん
2007/05/28(月) 14:01:21ID:???0868nobodyさん
2007/05/28(月) 15:36:20ID:???0869nobodyさん
2007/05/31(木) 11:01:08ID:???0870nobodyさん
2007/05/31(木) 20:11:10ID:???0871nobodyさん
2007/05/31(木) 20:24:41ID:???ノ /,.-‐'"´ `ヾj ii / Λ
,イ// ^ヽj(二フ'"´ ̄`ヾ、ノイ{
ノ/,/ミ三ニヲ´ ゙、ノi!
{V /ミ三二,イ , /, ,\ Yソ
レ'/三二彡イ .:ィこラ ;:こラ j{
V;;;::. ;ヲヾ!V ー '′ i ー ' ソ
Vニミ( 入 、 r j ,′
ヾミ、`ゝ ` ー--‐'ゞニ<‐-イ
ヽ ヽ -''ニニ‐ /
| `、 ⌒ ,/
| >┻━┻'r‐'´
ヽ_ |
ヽ _ _ 」
ググレカス [ Gugurecus ]
( 2006 ? 没年不明 )
0872nobodyさん
2007/06/01(金) 01:17:38ID:???0873nobodyさん
2007/06/02(土) 20:43:13ID:???俺の身の丈以上のことがひょいひょい出来るぜ
感動した
0875nobodyさん
2007/06/16(土) 18:54:07ID:???0876nobodyさん
2007/06/26(火) 23:35:41ID:X+qRiCvsローカル環境にXML_RSSをインストールしようと思っているのですが、以下のようなエラーが出てしまいます。
C:\xampp\php>pear install xml_rss
Did not download dependencies: pear/XML_Tree, use --alldeps or --onlyreqdeps to
download automatically
pear/XML_RSS requires package "pear/XML_Tree"
No valid packages found
install failed
xml_treeが必要とのことなので、以下のも実行して見ました。
C:\xampp\php>pear install xml_tree
pear/xml_fastcreate requires package "pear/XML_Tree" (version >= 2.0b2), downloa
ded version is 1.1
pear/XML_Tree cannot be installed, conflicts with installed packages
No valid packages found
install failed
__________
conflicts with installed packages から既にインストールされているパッケージとの依存関係からエラーが起こると思うのですが、原因が分かる方いたら教えてください。
ちなみにxml_fastcreate はインストールされています。
0877nobodyさん
2007/06/26(火) 23:47:32ID:???で依存パッケージも勝手に入れてくれるはずだけど
confilictしててよくわからなったらとりあえず依存してるっぽいやつ
一旦全部uninstallしてみてalldepsでいれてみな
0878nobodyさん
2007/06/27(水) 00:32:02ID:hFOZBWIz素早い対応ありがとうございます。無事インストールできました。
インストールする前の環境は
PACKAGE VERSION STATE
Archive_Tar 1.3.2 stable
Auth 1.5.2 stable
Auth_HTTP 2.1.6 stable
Console_Getopt 1.2.3 stable
DB 1.7.11 stable
PEAR 1.6.1 stable
Structures_Graph 1.0.2 stable
XML_Beautifier 1.1 stable
XML_FastCreate 1.0.3 stable
XML_Feed_Parser 1.0.2 stable
XML_Parser 1.2.8 stable
XML_Serializer 0.18.0 beta
XML_Util 1.1.4 stable
でした。いくつか消せなかったのですが、
Auth_HTTP 2.1.6 stable
ML_FastCreate 1.0.3 stable
XML_Feed_Parser 1.0.2 stable
XML_Serializer 0.18.0 beta
を消してからpear install --alldeps XML_RSS を実行すると出来ました。
0879nobodyさん
2007/06/28(木) 17:13:50ID:???0880nobodyさん
2007/06/28(木) 20:36:46ID:???0881nobodyさん
2007/06/29(金) 00:48:22ID:???0882nobodyさん
2007/06/29(金) 09:54:58ID:???0883nobodyさん
2007/07/03(火) 10:55:42ID:RDWGqtzxPEARにライブラリ?をインストールって言うのは
インクルード指定してあるフォルダにそのファイルを置けばいいだけですか?
0885nobodyさん
2007/07/03(火) 14:54:43ID:RDWGqtzx0887nobodyさん
2007/07/05(木) 20:01:16ID:???pearのDBにあるautoexecuteでバイナリデータをinsertさせようとしてるんですが、
autoexecuteってbyteaのデータをかってにクオートしちゃうっぽいんです。
この辺の動作について知ってる人or良い解説ないですか?
0888887
2007/07/05(木) 20:35:08ID:???common.php内、関数buildManipSQLにて、
$values .= '?';
となっているためprepareされるqueryが?しか生成されない。
マニュアルにその辺は適宜変換されるとあったが、それは単純にprepare側にて
?で渡されたqueryの解釈を良いように行う、との事だった模様。
* + <kbd>?</kbd> scalar value (i.e. strings, integers). The system
* will automatically quote and escape the data.
うーん日記ですまん。
0889nobodyさん
2007/07/06(金) 10:07:28ID:???0890nobodyさん
2007/07/11(水) 14:54:17ID:PnaVaP5ypostgreSQL + PHP + PEAR::DB をどうしても使わないと行けない環境で
開発してるんですけど、
データベースからのデータ削除時に実際にDBMSが削除したデータ
件数を取得したいんですけど、
PEAR::DB を使って出来ますでしょうか?
(パソコンからだと投稿できないので携帯から書いてます。。。)
0892nobodyさん
2007/07/11(水) 17:04:49ID:???全ての環境で同じかどうかは断言できないが
仕様としてはいちおう DB_Common::affectedRows() で取得できる.
pgsql ドライバは正しく pg_affected_rows() を叩いてるので大丈夫だと思う.
0893nobodyさん
2007/07/16(月) 00:35:42ID:OjCJuTb6今回初めてpearを導入しようと思ってるものです。
それで、インストールについてですが Auth などの各モジュールは
そのフォルダごと(Authフォルダ) include/pear/ に入れればいいんでしょうか?
「Auth 1-3」などのバージョン部分「1-3」を削除して?
参考として
http://www.phpbook.jp/pear/pear_auth/index1.html
を見ているのですが、念のため確認させてください
あと、雑誌についてたpagerモジュールとjpgraphモジュールは、それぞれのフォルダの外の
package.xml というファイルとセットになっています。
これだと各フォルダ+xmlをpearディレクトリに入れたときに一方のpackage.xmlが上書きされますが、、
どうしたらいいのでしょう?
よろしくおねがいします。
0894nobodyさん
2007/07/16(月) 01:36:24ID:???package.xmlはPEARパッケージ用のファイルだから
ただライブラリとして使う分には必要ない消しても構わん
0895nobodyさん
2007/07/16(月) 02:05:23ID:OjCJuTb6ありがとうございます!
いろいろ試してみます
0896nobodyさん
2007/07/18(水) 04:28:26ID:vE6tBjuqpearをインストールしたらコマンドプロンプトに次のような文章が現れました
php.ini <C:\PHP\php.ini> include_path updated.
Current include path : .;C:\php5\pear
Configured directory : C:\PHP\pear
Currently used php.ini (guess) : C:\PHP\php.ini
Press Enter to continue:
** WARNING! Old version found at C:\PHP, please remove it or be sure to use the
new c:\php\pear.bat command
phpをインストールした時、php.iniはwindowsフォルダの中に編集した上で入れたんですが、
オリジナルのphp.iniは元の場所に置いたままでした
上のメッセージはそのオリジナルを編集したってことでしょうか?
では、もう一度手を加えてwindowsフォルダに入れなおしたほうがいいですか?
環境は winXP php5.2.3 apache2 です
ご意見いただきたいです よろしくおねがいします
0897nobodyさん
2007/07/18(水) 08:56:29ID:???phpinfoで今ロードされてるphp.iniのパスを確認して
とりあえずロードされてない方は消しといた方がいいだろうな
んでinclude_pathを更新
0898nobodyさん
2007/07/18(水) 11:23:22ID:vE6tBjuq了解です サンキュ
0899nobodyさん
2007/07/18(水) 11:48:15ID:???http://dozo.matrix.jp/pear/index.php/PEAR/Auth/drawLogin.htmlの方法でやるには(SQliteで)、どうすればいいでしょうか?
0900nobodyさん
2007/07/19(木) 13:11:39ID:???・sqliteのDB作れてるのか
・dsnの記述は
情報なしで質問出来ると思うのか?
0901nobodyさん
2007/08/01(水) 16:44:37ID:1HTj5yh2新規にファイルを作って書式設定しながら出力するサンプル
ばかり見かけます。
あらかじめ作っておいたひな型を開いて、そのファイルの
必要項目のセルに出力することはできないのでしょうか。
0902nobodyさん
2007/08/01(水) 18:43:55ID:???object The Spreadsheet_Excel_Writer::Spreadsheet_Excel_Writer ([string $filename=''])
string $filename - オプションで、ワークブックのファイル名を指定します。
って書いてあるから出来るんじゃないの?
0903nobodyさん
2007/08/06(月) 10:58:11ID:KGjjzVca他のファイルに、認証情報を引き継ぐ事って可能なのでしょうか?
どなたかご教授下さい。
0904nobodyさん
2007/08/06(月) 11:18:37ID:???とりあえずセッション、クッキーについての知識はあるのか?
0905nobodyさん
2007/08/06(月) 11:27:36ID:KGjjzVca0906nobodyさん
2007/08/06(月) 14:31:34ID:???0907nobodyさん
2007/08/06(月) 14:34:46ID:KGjjzVca0908nobodyさん
2007/08/06(月) 15:55:14ID:???0909nobodyさん
2007/08/06(月) 17:47:19ID:KGjjzVca0910nobodyさん
2007/08/06(月) 20:47:25ID:???0911nobodyさん
2007/08/07(火) 12:11:31ID:nqMZFXTjPEARの各モジュールをインストールしてるんですが、以下のエラーがでます。
PHP Warning: PHP Startup: Unable to load dynamic library 'C:\Program Files\PHP\
ext\php_zip.dll' - 指定されたモジュールが見つかりません。
in Unknown on line 0
php_zip.dllに限らず、ものすごい数のエラーが出るんですが、確認すると/extディレクトリには
該当ファイルが存在します。
おまけに、PEARモジュールのインストール事態は成功と表示されるし、
(install ok: channel://pear.php.net/Pager-2.4.4)
実際に機能もしています。
上記のエラー、気にしなくていいんでしょうか?
なにが原因かなどわかる方いたらよろしくお願いします。
0912nobodyさん
2007/08/07(火) 13:32:02ID:???0914nobodyさん
2007/08/08(水) 10:08:27ID:???pearのext_dir設定も確認
不要なモジュールはちゃんとコメントアウト
0915nobodyさん
2007/08/08(水) 11:31:31ID:???実際に適用されてる extension_dir の値をチェックすべき
0916nobodyさん
2007/08/10(金) 17:16:59ID:Zwzs53gDPEARの勉強をしようと思うのですが、何か参考になるサイトはないでしょうか?
0917nobodyさん
2007/08/10(金) 17:58:01ID:???自分でぐぐるくらいできるだろ
0918nobodyさん
2007/08/10(金) 20:33:20ID:???http://pear.php.net/
0919nobodyさん
2007/08/11(土) 07:28:06ID:???0920nobodyさん
2007/08/12(日) 05:03:10ID:???使うだけなら"おまじない"的でいいのかもしれんが
0922nobodyさん
2007/08/16(木) 11:48:57ID:nF87VTmb$nameと$ageにはそれぞれPOSTされたデータが入っていて、idはauto_incrementなフィールドです。
$table_name = 'Test';
$insert = array(
'id' => NULL,
'name' => $name,
'age' => $age
);
$res = $db->autoExecute($table_name,$insert,DB_AUTOQUERY_INSERT);
if(PEAR::isError($res)) {
die($res->getMessage());
}
マニュアルも読んでみたのですが、これで合ってるような気がしてしまって余計に分からなくなってしまっている状況でs。
何かこのコードに問題があったら教えて欲しいです。
0923nobodyさん
2007/08/16(木) 13:07:19ID:???0924nobodyさん
2007/08/16(木) 14:59:31ID:nF87VTmbレスありがとうございます。
その部分を消して再度試してみましたがやっぱりSyntax Errorです。
マニュアルだとSyntax Errorはモードの指定が間違っているときに出るらしいんですがモードはこれで間違い無いはず・・・orz
0925nobodyさん
2007/08/16(木) 15:26:44ID:???user_infoにDBが返したネイティブな詳しいエラーが入ってるはずだから
そのエラーを貼ってくれDBのエラーだけじゃよくわからん
0926nobodyさん
2007/08/16(木) 15:50:19ID:nF87VTmbスイマセン自己解決しました私の勘違いみたいでした。
0927nobodyさん
2007/08/16(木) 15:58:33ID:???結局PEARを使わずに、PEAR使うよりも
簡単に便利に開発できるCakePHPを使うんだから
意味なくね?w
0928nobodyさん
2007/08/16(木) 16:47:08ID:???0929nobodyさん
2007/08/17(金) 11:23:26ID:???機能が含まれているのでPEARはいりません。
知らなかったの?
無駄な努力しちゃったねw
0930nobodyさん
2007/08/17(金) 12:58:09ID:???レス数が900を超えています。1000を超えると表示できなくなるよ。