トップページphp
1001コメント340KB

【PHP】下らねぇ質問はここに書き込みやがれ 24

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2006/07/07(金) 14:54:53ID:KnVubDvE
PHPに関するくだらねぇ質問用スレです。
ここならお前の下らない質問に回答があるかも知れません。

まず読め【PHP マニュアル】
http://www.php.net/manual/ja/

過去スレは>>2
0002nobodyさん2006/07/07(金) 14:55:46ID:???
【PHP】くだらねぇ質問はここに書き込みやがれ
http://pc5.2ch.net/test/read.cgi/php/1099322141/
【PHP】くだらねぇ質問はここに書き込みやがれpart2
http://pc5.2ch.net/test/read.cgi/php/1105218084/
【PHP】くだらねぇ質問はここに書き込みやがれpart3
http://pc5.2ch.net/test/read.cgi/php/1107780435/
【PHP】くだらねぇ質問はここに書き込みやがれpart4
http://pc8.2ch.net/test/read.cgi/php/1110697712/
【PHP】くだらねぇ質問はここに書き込みやがれpart5
http://pc8.2ch.net/test/read.cgi/php/1114787573/
【PHP】くだらねぇ質問はここに書き込みやがれpart6
http://pc8.2ch.net/test/read.cgi/php/1117945031/
【PHP】くだらねぇ質問はここに書き込みやがれpart7
http://pc8.2ch.net/test/read.cgi/php/1121100429/
【PHP】くだらねぇ質問はここに書き込みやがれpart8
http://pc8.2ch.net/test/read.cgi/php/1123431535/
【PHP】くだらねぇ質問はここに書き込みやがれpart9
http://pc8.2ch.net/test/read.cgi/php/1125716012/
【PHP】下らねぇ質問はここに書き込みやがれpart10
http://pc8.2ch.net/test/read.cgi/php/1127581425/
【PHP】下らねぇ質問はここに書き込みやがれpart11
http://pc8.2ch.net/test/read.cgi/php/1129582431/
【PHP】下らねぇ質問はここに書き込みやがれpart12
http://pc8.2ch.net/test/read.cgi/php/1130835396/
【PHP】下らねぇ質問はここに書き込みやがれpart13
http://pc8.2ch.net/test/read.cgi/php/1132921016/
【PHP】下らねぇ質問はここに書き込みやがれpart14
http://pc8.2ch.net/test/read.cgi/php/1134868212/
【PHP】下らねぇ質問はここに書き込みやがれpart15
http://pc8.2ch.net/test/read.cgi/php/1137236771/
0003nobodyさん2006/07/07(金) 14:56:17ID:???
【PHP】下らねぇ質問はここに書き込みやがれpart16
http://pc8.2ch.net/test/read.cgi/php/1139146534/
【PHP】下らねぇ質問はここに書き込みやがれpart18
http://pc8.2ch.net/test/read.cgi/php/1142417901/
【PHP】下らねぇ質問はここに書き込みやがれ Part19
http://pc8.2ch.net/test/read.cgi/php/1144513878/
【PHP】下らねぇ質問はここに書き込みやがれpart20
http://pc8.2ch.net/test/read.cgi/php/1146165153/
【PHP】下らねぇ質問はここに書き込みやがれpart21
http://pc8.2ch.net/test/read.cgi/php/1148389517/
【PHP】下らねぇ質問はここに書き込みやがれ 22
http://pc8.2ch.net/test/read.cgi/php/1149710968/
【PHP】下らねぇ質問はここに書き込みやがれ 23
http://pc8.2ch.net/test/read.cgi/php/1150995543/
0004nobodyさん2006/07/07(金) 15:30:20ID:???
・part17よりテンプレ化

extractは極力使わないほうがいいと思います。
例えば、

hoge.php?_SESSION[user_pw]=hogehoge

って形で送られてきたとします。これを

extract($_GET)

しちゃうと、$_SESSION['user_pw']の値が、
"hogehoge"に変更されてしまいます。

もし事前にユーザのパスワードを、$_SESSION['user_pw']に
保持してたとしたら、勝手に書き換えられてしまうことになります。

それを避けるために

extract($_GET, EXTR_SKIP)

ってやって上書きを避けたとしても、
このままでは変数の初期化を忘れる危険性があります。

extract($_GET, EXTR_PREFIX_ALL, "get")

と、接頭辞をつけるのが一番安全な気はしますが、
それなら最初から
$hoge = $_GET['hoge'];
ってやるのと手間が変わらないと思いますし、可読性も増します。
確かにextractするのは楽だと思いますけど。
0005nobodyさん2006/07/07(金) 15:31:11ID:???
◆質問する場合の注意
1. 自分のIDを表示させること。(メール欄には何も記述しないでください)
2. ハードウェア、OSのバージョン等を明記すること。
3. 己の行った操作、変更などを詳しく明記すること。
4. エラーメッセージはそのまま表記すること。
5. 質問者としても態度をわきまえること。


◆質問後の注意
・質問者は必ずIDを表示させてください。
  書き込む場合はメール欄に何も記述しないでください。
・2回目以降は最初に質問した際のレス番号を名前欄に入れてください。
  (逆に回答者は質問者に対して>>(アンカー)をつけて答えてください。)
・解決しなくても回答をもらった場合はお礼を言う。
  (荒らし、煽りは除く)

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークはそれぞれの該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
・オブジェクト指向については良スレがないから本を買え
・速さについては自分でベンチをとってここに書け(違う環境の人も調べてくれるかも)
0006nobodyさん2006/07/07(金) 15:32:32ID:???
関連リンク
■本家マニュアル   http://www.php.net/manual/ja/
■日本PHPユーザ会 http://www.php.gr.jp/
■PEARマニュアル  http://pear.php.net/manual/ja/
■メーリングリスト   http://ns1.php.gr.jp/mailman/listinfo/

 (以下英語)
■Smarty       http://smarty.php.net/
■Zend本家      http://www.zend.com/
■Zend Framework  http://framework.zend.com/
■php | architect   http://www.phparch.com/
■Smartyマニュアル http://smarty.php.net/manual/en/
■ZFマニュアル    http://framework.zend.com/manual/en/
■PECL本家(英語) http://pecl.php.net/

まだ英語しかないマニュアルも後々/manual/en/を/manual/ja/に変えてみたら日本語があるかもしれません。
0007nobodyさん2006/07/07(金) 15:33:49ID:???
関連スレ
PHP関連の書籍 第3版
http://pc8.2ch.net/test/read.cgi/php/1150558685/
PHP関連サイト
http://pc8.2ch.net/test/read.cgi/php/982694601/
【PHP】PEAR Part2
http://pc8.2ch.net/test/read.cgi/php/1122899232/
【Smarty】PHPのテンプレートエンジン【Flexy】
http://pc8.2ch.net/test/read.cgi/php/1118799352/
[PHP]フレームワークについて語るスレ3[総合]
http://pc8.2ch.net/test/read.cgi/php/1145971945/
Webでオブジェクト指向プログラミング
http://pc8.2ch.net/test/read.cgi/php/1133489897/
【PHP】セッションについて語ろう!【PHP】
http://pc8.2ch.net/test/read.cgi/php/1064399467/
PHP統合開発環境スレ
http://pc8.2ch.net/test/read.cgi/php/1123912762/
最強のPHPエディタはなに?
http://pc8.2ch.net/test/read.cgi/php/1133785416/

[PHP-users MLヲチ9]丸投げした覚えは全くありません
http://pc8.2ch.net/test/read.cgi/php/1143731062/
中学生がPHPを習得するスレ
http://pc8.2ch.net/test/read.cgi/php/1139746974/
【PHP】Lvうpしたいので宿題ください
http://pc8.2ch.net/test/read.cgi/php/1147830986/
親切な人が初心者にPHPの関数を使い方を教える
http://pc8.2ch.net/test/read.cgi/php/1068190843/
くだすれPHP(超初心者用)
http://pc8.2ch.net/test/read.cgi/php/1150088761/
0008nobodyさん2006/07/07(金) 19:52:41ID:IzLRE9l5
いまapache2.2を使うのは危険ですか?
0009nobodyさん2006/07/07(金) 21:01:38ID:???
早速ですが、お願いします。

<?
require("function.php");
open();
reverse($log_data,$member_data);
?>

function.php
<?
define('LOG_DATA',"./data/log".$_GET['id'].".cgi");
define('MEMBER_DATA',"./data/member".$_GET['id'].".cgi");

function open(){
$log_data= file(LOG_DATA);
$memberg_data= file(MEMBER_DATA);
return $log_data;
return $member_data;
}

function reverse($log_data,$member_data){
$log_data= array_reverse($log_data);
$member_data= array_reverse($memberg_data);
}
?>

こういうのを作ったのですが、$log_dataと$member_dataに変数が入らないらしく
array_reverse() [function.array-reverse]: The argument should be an array
といエラーが返されます。

どうすれば、変数を格納できるのでしょうか?
0010nobodyさん2006/07/07(金) 21:04:19ID:???
ユーザ定義関数について勉強し直すのが一番良いと思うよ
0011nobodyさん2006/07/07(金) 21:07:52ID:???
それ以前にスクリプトについて勉強し直すのが一番良いと思うよ
001292006/07/07(金) 21:16:54ID:???
>>10-11
すみません、良かったら教えてください。
function関数使うの初めてなので
0013nobodyさん2006/07/07(金) 21:26:07ID:???
>>12

ヒント
http://www.google.com/search?num=50&hl=ja&lr=lang_ja&safe=off&ie=UTF-8&oe=SJIS&q=%70%68%70%20%E5%A4%89%E6%95%B0%20%E9%81%A9%E7%94%A8%E7%AF%84%E5%9B%B2
001492006/07/07(金) 21:29:53ID:???
なるほど
最初にglobalで、使う変数を宣言しておかないといけないのですね
001592006/07/07(金) 21:33:20ID:???
<?
define('LOG_DATA',"./data/log".$_GET['id'].".cgi");
define('MEMBER_DATA',"./data/member".$_GET['id'].".cgi");

//データfileで開く
function open(){
global $log_file,$member_file;
$log_data= file(LOG_DATA);
$member_data= file(MEMBER_DATA);
return array($log_data,$member_data);
}

//fileで開いたデータをリバース
function reverse(){
global $log_data,$member_data;
$log_data= array_reverse($log_data);
$member_data= array_reverse($member_data);
return array($log_data,$member_data);
}
?>

としたら解決しました。ありがとうございました。
0016nobodyさん2006/07/07(金) 21:53:35ID:d9ruQecq
<?php
$str = 'This is an 自民';
$enc = urlencode( $str );
$dec = urldecode( $enc );
print("str = $str<br>");
print("enc = $enc<br>");
print("dec = $dec");
?>

この実行結果は
str = This is an 自民
enc = This+is+an+%E8%87%AA%E6%B0%91
dec = This is an 自民  
0017nobodyさん2006/07/07(金) 21:54:29ID:d9ruQecq
>>16の続きです


でも「自民」っていう文字列をFORMで受けて表示すると

<?php

$str = "This is an ".$_POST['tag'];
$enc = urlencode( $str );
$dec = urldecode( $enc );
print("str = $str<br>");
print("enc = $enc<br>");
print("dec = $dec");
?>

str = This is an 自民
enc = This+is+an+%8E%A9%96%AF
dec = This is an 自民

こんな風に同じデコードでも違って表示されるみたい
これを同じにするにはどうすればいいですか?
0018nobodyさん2006/07/07(金) 21:56:24ID:???
文字コード
0019nobodyさん2006/07/07(金) 22:14:55ID:d9ruQecq
>>18
すみません、良かったら教えてください。
当方初心者なもので
0020nobodyさん2006/07/07(金) 22:25:47ID:???
>>9=>>16
002192006/07/07(金) 22:28:06ID:DAs/sE57
>>20
違います。
0022nobodyさん2006/07/07(金) 22:36:42ID:d9ruQecq
すみません 20です
9の方とは違います

今年女子大を卒業してプログラマーになった者です
明日までにできないと上司に怒られます
教えてください
お願いします
■ このスレッドは過去ログ倉庫に格納されています