【PHP】下らねぇ質問はID出して書き込みやがれ 104
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2011/02/14(月) 16:45:59ID:???過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 103
http://hibari.2ch.net/test/read.cgi/php/1295956018/
◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】5.3
【連携ソフトウェア】MySQL ImageMagick
【質問内容】
◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)
◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0123nobodyさん
2011/02/16(水) 23:03:20ID:???そうすりゃ文字コードで悩む事は無くなる
0125nobodyさん
2011/02/17(木) 10:29:53ID:T4c0Fhk0json_encode json_decode を使えば簡単なんですがメモリ消費が激しく
今はしのげるものの、今後増え続ける変換処理でメモリ不足になります。
もっと動作的にもメモリ的にも軽く使う方法があれば教えてください。
0126nobodyさん
2011/02/17(木) 10:44:17ID:???クソ深いネスト構造だとあまり効果が見込めないが
http://php.net/manual/ja/class.splfixedarray.php
具体的なデータの構造と用途を披露したら別のアプローチも出るんじゃね
0127nobodyさん
2011/02/17(木) 10:51:57ID:???そんな手抜きするやつはビンタだな
0128。 ◆oDupeixhZv52
2011/02/17(木) 11:17:46ID:???serializeとかvar_exportでも同じだろうから、
配列読みながらファイルに書き込むのを作るしか。
0129nobodyさん
2011/02/17(木) 12:12:10ID:DXaPju3P0130nobodyさん
2011/02/17(木) 12:40:14ID:fkwoRsvLrequire "config.php";
として呼び出されているconfig.phpの中身が丸ごと画面に出力されていました
で、よくみるとconfig.phpには
<?php と ?> の、頭とお尻のphp宣言がない状態でした。
?>を書かないというのは聞いたことありますが、<?phpを省略するなんて可能なんですか?
結局両方とも書き足したら動くようになったんですが、「<?phpを書かなくても動くようにする」には
どうしたら良いんでしょうか?
0131nobodyさん
2011/02/17(木) 12:51:59ID:???0132。 ◆oDupeixhZv52
2011/02/17(木) 13:10:14ID:???0133nobodyさん
2011/02/17(木) 13:12:17ID:guOwmBH1require "config.php";
って書いただけで、それが書かれたファイルがある場所とは別の
ライブラリ専用フォルダの中から探してきてくれるようにするにはどうすればいい?
0134。 ◆oDupeixhZv52
2011/02/17(木) 13:15:14ID:???http://www.php.net/manual/ja/ini.core.php#ini.include-path
0135nobodyさん
2011/02/17(木) 13:57:09ID:???どうもです。アプリケーションの書き間違いだったんですかね。
不具合のレポートとか調べてみることにします。ありがとう
0136nobodyさん
2011/02/17(木) 14:37:52ID:hXN9jln4【PHPのバージョン】5.1.6
【連携ソフトウェア】
【質問内容】
実行されているPHPのプログラムが
CLIモードで動いているかどうかを
取得する方法はありますか?
0137。 ◆oDupeixhZv52
2011/02/17(木) 14:51:12ID:???0138nobodyさん
2011/02/17(木) 14:53:27ID:uc0VVbVbecho strpos($a, '3');
この場合の結果は2となりますが$aに含まれる3の場所全部を探したい場合はどうすればいいですか?
0140nobodyさん
2011/02/17(木) 15:09:53ID:???$b = array();
for($i = 0; $j = strpos($a, '3', $i); $b[] = $j, $i = $j + 1);
var_dump($b);
0141。 ◆oDupeixhZv52
2011/02/17(木) 15:17:18ID:???http://php.net/manual/ja/function.strpos.php に
strposallってサンプルがあるよ。
0142nobodyさん
2011/02/17(木) 20:01:49ID:srZURUorpreg_match(): Compilation failed: range out of order in character class
っていうエラーが消えません。
原因は他にあるんでしょうか?
0143nobodyさん
2011/02/17(木) 20:04:09ID:???0146nobodyさん
2011/02/17(木) 20:21:02ID:???PHPのソース中の改行コードは空白文字と一緒だから本当にどっちでもいい。
でもまぁWindowsならCRLFにしとけ。
0149nobodyさん
2011/02/17(木) 20:28:52ID:???1 自分を劣ったものとしていやしめること。へりくだること。「そんなに―する必要はない」
2 いやしめて見下すこと。また、そのさま。
「自修の事を甚だ―なる田地に落ち沈ましむるなり」〈中村訳・西国立志編〉
0151nobodyさん
2011/02/17(木) 21:25:59ID:fkwoRsvL------
apacheのバーチャルホストでwww_example1_comとwww_example2_comの2つを運用していて、
phpのinclude_pathを以下のように定義しようとしました
1)両方のサイトで共通して使うパスは、php.iniのinclude_pathで設定
例:PearやFrameworkのライブラリへのパス
2)それぞれのサイトで使う固有のパスは、httpd.confの<Virtualhost>部分で設定。
例:利用DBのテーブル名などconfigファイルへのパス
php_admin_value include_path "/var/www/example1/application:/var/www/example1/php_libs/config"
でも、実際に動かしてみたらうまくいかず、こんなエラーが出ます。
PHP Fatal error: require_once() [<a href='function.require'>function.require</a>]: Failed opening required
'Zend/Controller/Front.php' (include_path='/var/www/example1/application:/var/www/example1/php_libs/config')
固有のinclude_pathは認識してるものの、共通のパスの方は認識してないってことでしょうか?
phpinfo();で表示されるinclude_pathは共通の方(php.ini)で指定してある方なんですが…
どうしたら良いのか、ご意見お願いします
-----
linux板では、1)のphp.iniの内容を2)のhttpd.confが上書きしてるからだと言われたんですが、
この2つは共存できないものなんですか?
そうだとすると、両方のサイトそれぞれの<virtualhost>宣言部分に全部まとめて書くしかないんでしょうか?
0152nobodyさん
2011/02/17(木) 21:47:13ID:???> phpinfo();で表示されるinclude_pathは共通の方(php.ini)で指定してある方なんですが…
www_example1_com
www_example2_com
それぞれでの phpinfo() で表示された値を教えてください。
まとめたり、略したりせずにお願いします。
0154nobodyさん
2011/02/17(木) 22:22:34ID:fkwoRsvLありがとうございます
www_example1_comでのphpinfo()は
include_path /var/www/example1/application:/var/www/example1/php_libs/config
www_example2_comでのphpinfo()は
include_path .:/usr/lib/php/PEAR:/usr/lib/php:/usr/lib/php/Smarty:/usr/lib/php/ZendFramework/library
httpd.confでは以下のようになっています
<VirtualHost *:80>
ServerName www.example1.com
DocumentRoot /var/www/example/html
php_admin_value include_path "/var/www/example1/application:/var/www/example1/php_libs/config"
</VirtualHost>
<VirtualHost *:80>
ServerName www.example2.com
DocumentRoot /var/www/example2/html
#php_value include_path ""
</VirtualHost>
php.iniは
include_path=".:/usr/lib/php/PEAR:/usr/lib/php:/usr/lib/php/Smarty:/usr/lib/php/ZendFramework/library"
<VirtualHost>ディレクティブでinclude_pathを指定してないexample2はphp.iniの通りに返してるようです
0155nobodyさん
2011/02/17(木) 22:46:16ID:qWpUfC6V(上書きできなきゃ困るでしょう?)
あきらめてサイト別に全部書いてさい。
ありがとう!
申し訳ないが確認させてください。
www.example1.com では、
include_path /var/www/example1/application:/var/www/example1/php_libs/config
を望んでいますか?
www.example2.com では、
include_path .:/usr/lib/php/PEAR:/usr/lib/php:/usr/lib/php/Smarty:/usr/lib/php/ZendFramework/library
を望んでいますか?
もしも、www.example1.com、www.example2.com それぞれで望んでいない include_path ならば、
それぞれで、何を望んでいるかを具体的に教えてもらえますか?
0157nobodyさん
2011/02/17(木) 22:55:50ID:???やっぱり上書きなんですね。諦めて全部書くことにします
どうもありがとう
>>156
えーと、教えてもらう側なのにそんなにへりくだられても妙な気分なんですが…
両方とも望んでますよ。
要するに、共通して使うシステムのinclude_pathをphp.iniにまとめて書いて、
個別に専用で使うinclude_pathを<virtualhost>ディレクティブに書きたいという
希望だったので。。
諦めて<virtualhost>ディレクティブに、専用・共通全てのinclude_pathを指定することにします
どうもありがとうございました
質問の意図を私が理解し切れなかったので、いろいと質問してしまいました。
解決の糸口が見つかって自分で試せる状況まで進めたことは幸あることです。
良い結果に感謝です!
0159nobodyさん
2011/02/17(木) 23:48:30ID:???差し出がましいようで心苦しいのですが、
実行するphpファイルに直接書き込むのが最も単純だと
私のような下々のものは考えるのですが、いかがでしょうか。
set_include_path()
0160nobodyさん
2011/02/18(金) 00:28:41ID:???0163nobodyさん
2011/02/18(金) 08:42:48ID:???0164nobodyさん
2011/02/18(金) 16:03:50ID:Mrnk7oLN【PHPのバージョン】5.1
【連携ソフトウェア】Eclipse Zendデバッガー XAMPP
【質問内容】
スレ違いだったらごめんなさい。
EclipseとXAMPPをつかって開発をしているんですが、
PHPをCLIで実行したときにXAMPPのPHPフォルダの
php.iniの設定を読み込んでくれません。
Zendデバッガーのtmp領域に作成される
php.iniを見ても、XAMPPのPHPフォルダのphp.iniの
内容とは異なるものができ上がっています。
CLIで動かしたときには元はどこのiniファイルを見ているのでしょうか。
わかる方がいらっしゃいましたら
よろしくお願いいたします。
0165。 ◆oDupeixhZv52
2011/02/18(金) 16:21:27ID:???http://php.net/manual/ja/configuration.file.php
0166nobodyさん
2011/02/18(金) 16:23:59ID:ZHHwRd0X【OS名】CentOS
【PHPのバージョン】5.1.6
【連携ソフトウェア】
【質問内容】
APIへのPOSTリクエストで手詰っています。
OAuthを利用した認証からGETでのデータ取得まではHTTP_OAuthを利用してできました。
しかし「Content-Typeをapplication/jsonでjsonデータをPOSTする」部分がどうしてもわかりません。
最終的には$consumer(HTTP_OAuth_consumer で作成)->sendRequest([API URL],$params,"POST");
という形で送ると考えているのですが、headerをどこに記述したらいいのか・・HTTP_REQUESTのsetHeader?いや$paramsの中に直接記述?などと様々な試行錯誤を繰り返したものの、結果は「400 Bad Request」のみです・・
1週間ほど格闘してもうお手上げなので、どなたかアイデアをお願いします。
0167164
2011/02/18(金) 17:11:37ID:Mrnk7oLNレスありがとうございます。
XAMPPのフォルダを見たのですが
php-cli.iniはありませんでした。
試しにC:\windowsの中に
php-cli.iniをつくってみたのですが、
これでも動きませんでした。
どこか他に見ているところがあるのでしょうか。。。。
0168nobodyさん
2011/02/18(金) 17:19:54ID:NY+ifgVH【PHPのバージョン】5.2.14
【質問内容】
PHP + SFTPでファイルを送信したいと考えています。
pecl ssh2のコンパイルが難しそうなので、PuTTY付属のplinkで何とかしたいのですが、
exec('plink -P ポート -l user -pw pass 11.11.11.11')
でログインした状態のplinkにメッセージを送る方法が分かりません。
何かよい方法があればご教示ください。よろしくお願いします。
0171nobodyさん
2011/02/18(金) 18:42:58ID:TKcD2AZD携帯からPOSTされる文章の改行コードって"\n"でしょうか?
それとも"\n\r"(?)でしたでしょうか?
機種によって違うのでしょうか?
携帯ややこしいです。
0172nobodyさん
2011/02/18(金) 18:55:08ID:fb4Kr5zE【PHPのバージョン】5.3.5 (VC6 X86 32bit) + PEAR
【連携ソフトウェア】
pdo_mysql / mysqlnd 5.0.7-dev - 091210 - $Revision: 304625 $
MySQL 5.5.8 (Community Server) / Apache 2.2.17 / XAMPP (Basispaket) 1.7.4
【質問内容】
$stmt = $dbh->prepare('SELECT 2011');
$stmt->execute();
var_dump($stmt->fetchColumn());
以上のコードを実行すると int(2011) と表示されます
PHP Manual によると string 型で返るはずですが、int 型で返ってしまいます
仕様通り string 型で返すにはどうすれば良いでしょうか
http://www.php.net/manual/ja/pdostatement.fetchcolumn.php
0173nobodyさん
2011/02/18(金) 18:55:56ID:???> exec('plink -P ポート -l user -pw pass 11.11.11.11')
> でログインした状態のplinkにメッセージを送る方法が分かりません。
誰が何にログインした状態を想定しているのかを教えてください。
0174nobodyさん
2011/02/18(金) 19:00:36ID:???$stmt = $dbh->prepare('SELECT 2011');
$stmt->execute();
//
$result = $stmt->fetchColumn();
//
var_dump( $result );
//
if ( is_integer( $result ) ) {
:
:
var_dump の仕様についての問い合わせですか?
何の仕様についての問い合わせですか?
質問の対象がぼやけ始めています。
0176168
2011/02/18(金) 19:05:29ID:???ありがとうございます。
それもpeclなので、コンパイルできずちょっと難しそうです。
WSHでも出来ないようで困りました…
>>173
SFTPを使用するためにuserがサーバにSSHでログインした状態です。
0180。 ◆oDupeixhZv52
2011/02/18(金) 20:01:32ID:???全機種調べる気力もなければ、今後の機種もどうなるか分からないので、
どっちでもいいようにプログラム組めってことですよね。
0181nobodyさん
2011/02/18(金) 20:16:15ID:???0182nobodyさん
2011/02/18(金) 20:19:58ID:???if (PHP_SAPI != 'cli') {
die("Please run this test from CLI!\n");
}
ini_set('display_errors', 1);
ini_set('output_buffering', 0);
error_reporting(-1);
if (!ini_get('safe_mode')) {
set_time_limit(1);
}
echo "Testing float behaviour. If this script hangs or terminates with an error ".
"message due to maximum execution time limit being reached, you should ".
"update your PHP installation asap!\n";
echo "For more information refer to <http://bugs.php.net/53632>.\n";
$d = (double)"2.2250738585072011e-308";
echo "Your system seems to be safe.\n";
0183nobodyさん
2011/02/18(金) 20:40:20ID:???新時代の言語
0184nobodyさん
2011/02/18(金) 21:15:22ID:???0185nobodyさん
2011/02/18(金) 23:20:30ID:???0186nobodyさん
2011/02/19(土) 09:10:39ID:Gww6mUql$fuga = 'fuga';
みたいなのがあって何度も「$hoge . $fuga」を使いたいときは
$piyo = $hoge . $fuga;
としてから「$piyo」を使うほうがいいんですよね?
スーパーグローバル変数はこんなふうに別の変数に入れなおさなくてもいいんですか?
本当にくだらないかもしれませんがよろしくおねがいします
0188nobodyさん
2011/02/19(土) 09:35:43ID:Gww6mUql186の例だと短い文字列の連結だけなのでたいした違いはないと思いますが
「$hoge . $fuga」じゃなくもっと複雑な処理をしたあとの結果を何度も使う場合は
その結果を変数に入れておけば毎回複雑な処理をしなくて済むんですよね?
無駄な処理をしなくて済んで効率的だという意味の「よい」です
スーパーグローバル変数は、処理がされた結果が入っているのか、
たとえば$_SERVER['REMOTE_ADDR']と書くたびにREMOTE_ADDRを取得しに行くのか、
後者なら変数に入れなおす必要があるのかな、と思いました
関数じゃなくて変数だから結果が入っているのかな・・・?
0189nobodyさん
2011/02/19(土) 09:50:02ID:???処理をすることによるCPU負荷を天秤にかければいいさ
0190nobodyさん
2011/02/19(土) 09:58:14ID:???知りたいのは、スーパーグローバル変数はすでに結果が入っているのかどうかということです
188の最後の行で正解ですか?
0191nobodyさん
2011/02/19(土) 09:58:28ID:???スーパーグローバル変数は、変数であるのであなたの杞憂するような
余計な処理というのは入っていない。単純に配列から取り出しているだけ。
見かけ上配列と同じArrayAccessインターフェイスのがあるが、こちらは
配列的アクセスしたとしても関数を呼び出すので、多少なりとも配列から
呼び出すのより遅くはなる。
それとグローバルの$hogeは$GLOBALS['hoge']と同じことなのだから、
たぶんほとんど差がない。
0192nobodyさん
2011/02/19(土) 10:05:38ID:???0194nobodyさん
2011/02/19(土) 10:08:35ID:???0195nobodyさん
2011/02/19(土) 12:40:59ID:???タブと半角スペースどっちが推奨ですか?
0197nobodyさん
2011/02/19(土) 13:06:27ID:???0198nobodyさん
2011/02/19(土) 13:33:20ID:???0199nobodyさん
2011/02/19(土) 13:36:56ID:???0200nobodyさん
2011/02/19(土) 14:02:24ID:???0201nobodyさん
2011/02/19(土) 14:15:37ID:???0202nobodyさん
2011/02/19(土) 14:27:22ID:???0203nobodyさん
2011/02/19(土) 16:04:54ID:???そういう質問をするとこういうのを見ろとか言う奴が出てくると思うが
http://framework.zend.com/manual/ja/coding-standard.php-file-formatting.html
↑ここではタブを使わずスペース4文字とか書いてある
個人的にはスペース2文字が好み
ネストが深くなってインデントが多くなっても右に寄り過ぎないのがいい
タブ使うと環境によって見え方が変わるから嫌い
0204nobodyさん
2011/02/19(土) 16:08:34ID:???0205nobodyさん
2011/02/19(土) 16:24:22ID:???0206nobodyさん
2011/02/19(土) 16:34:15ID:???0208nobodyさん
2011/02/19(土) 16:53:27ID:???まぁなーでも同じ処理を何度も行うわけではないのに関数化する意味はないよな
ネストが深いといってもこの程度の話だから
for(){
;
if(){
;
for(){
;
if(){
;
}
}
}
}
0209nobodyさん
2011/02/19(土) 18:38:26ID:???0210nobodyさん
2011/02/19(土) 19:11:51ID:???for(){
;
if(){
;
continue;
}
for(){
;
if(){
;
}
}
}
0211nobodyさん
2011/02/19(土) 19:13:53ID:???0212nobodyさん
2011/02/19(土) 19:14:51ID:???0214nobodyさん
2011/02/19(土) 19:36:13ID:???0215nobodyさん
2011/02/19(土) 19:37:16ID:???for ($i=0, $j=1, $k=0, $fib=0; $i<50; $i++, $fib=$j+$k, $j=$k, $k=$fib) {
echo $fib."<br>\n";
}
0216nobodyさん
2011/02/19(土) 19:37:42ID:???0218nobodyさん
2011/02/19(土) 19:39:26ID:???0219nobodyさん
2011/02/19(土) 19:55:29.65ID:???おまえさん、HTML書くときもwidth=800とかで固定するタイプだろ
width=100%で相手の環境に合わせようとは考えないタイプだ
俺もだよ
0222nobodyさん
2011/02/20(日) 00:30:48.59ID:???何を書き出してる?
質問の意図がよくわかりませんが、標準出力のことでしょうか。
ファイルやデータベース出力も利用しますが、画面表示なら標準出力を使っています。
■ このスレッドは過去ログ倉庫に格納されています