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

【PHP】下らねぇ質問はID出して書き込みやがれ 112

レス数が900を超えています。1000を超えると表示できなくなるよ。
0001nobodyさん2011/10/31(月) 05:11:09.81ID:???
質問者はまず>>1を良く読むこと(必須!)
過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。

◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 111
http://hibari.2ch.net/test/read.cgi/php/1317232566/

◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】5.3
【連携ソフトウェア】MySQL ImageMagick
【質問内容】

◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)

◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
 (荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)

◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。

【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0837nobodyさん2011/11/23(水) 22:42:15.72ID:???
質問です。

自分がphpで作成したwebページで、parse_ini_fileを使って、
hoge.iniというファイルから設定データを読みこんでいます。

hoge.iniを変更しても、時々parse_ini_fileで変更前のデータが読まれることがあります。

どのような原因が考えられるでしょうか?また対処方法はありますか?

よろしくご教示お願いいたします。

08388372011/11/23(水) 22:48:06.53ID:x/DZrHIk
ID出し忘れました
0839nobodyさん2011/11/23(水) 23:16:57.55ID:???
>>837
キャッシュされる仕組みが入っているとか
0840nobodyさん2011/11/23(水) 23:51:05.42ID:???
時々なんて動作をするとは思えないのでサーバー側ではなくクライアント側のキャッシュではないだろうか
0841nobodyさん2011/11/24(木) 00:26:28.39ID:???
関数の引数について質問です。
デフォルト値が決まっている引数が沢山ある関数、例えばmktimeの様な関数は
int mktime ([ int $hour = date("H") [, int $minute = date("i") [, int $second = date("s") [, int $month = date("n") [, int $day = date("j") [, int $year = date("Y") [, int $is_dst = -1 ]]]]]]] )
後の方にある引数を指定だけ指定したくてもそれが出来ずに、引数を全部指定する必要がありますよね。
この場合は$is_dstだけ指定したい時があっても、第一引数から順番に指定しなければいけません。

この場合は、引数を配列にして
mktime(array("is_dst"=>1));と指定出来たら順番を気にする事無く便利だと思い、
自作関数の引数はこの配列のタイプで書こうかな。と思っているのですが、この方式の欠点というのがあれば教えて欲しいです。

組み込み関数でmktime(array("is_dst"=>1));の様な指定が出来る関数は(ほぼ?)無いと思うのですが
この方式には何か欠点があるのでしょうか。
08428412011/11/24(木) 00:28:10.08ID:FvXT6b8c
ID出し忘れました
0843nobodyさん2011/11/24(木) 00:37:52.27ID:???
JavaScriptではよく見る手法だがPHPではあんまみないな
http://jp2.php.net/manual/ja/ref.funchand.php
可変長引数でうまくやってる感じはする
0844nobodyさん2011/11/24(木) 00:40:12.02ID:???
jsだと["key":"value"]で配列が書けるけど、phpだとarray("key"=>"value")で6バイト増えるからかな
0845nobodyさん2011/11/24(木) 00:45:00.49ID:???
>>844
key:value形式にするなら{}こっち使え。[]使うな。
0846nobodyさん2011/11/24(木) 00:45:02.73ID:???
まぁだいたい飛ばす引数にnullいれとけばイイいい関数が多いしな
たいして指定も気にならない
mktimeのis_dstに限っちゃ5.1から廃止されてるしな
0847nobodyさん2011/11/24(木) 00:47:35.39ID:???
別途setSummerTime(true)って関数作ればいいんじゃね
0848nobodyさん2011/11/24(木) 00:58:16.54ID:???
>>841
しいて言うなら名前が強制されるところかなぁ
0849nobodyさん2011/11/24(木) 05:38:33.55ID:???
サンプルコードに
$msg .= " File Size: " . @filesize($upload_name);
という記述があったのですが、filesizeは@なんて付けると
phpマニュアルには載ってません。
$msg .= " File Size: " . filesize($upload_name);でも
問題なく動いてます。
@は何のためについているのですか?
0850nobodyさん2011/11/24(木) 05:39:58.14ID:???
>>1
0851nobodyさん2011/11/24(木) 11:24:33.95ID:???
@使う奴は、手抜き大好き手こき大好き
0852nobodyさん2011/11/24(木) 11:36:07.10ID:???
@使うとエラーのでない最強のスクリプトを書くことができますw
0853nobodyさん2011/11/24(木) 11:38:09.28ID:???
error_report(0) だっけ?
これ付けても構文エラーの時は表示されるんだな
0854nobodyさん2011/11/24(木) 11:41:28.10ID:dbWHUVya
んじゃ、ついでに関連質問
実際さ、@ってどれくらいの頻度でつかってる?orどーゆーときに使ってる?
自分はもうクセで、基本的にissetとかでUndefinedの判断とも入れてるから、ほとんど使わないんだけど
使うタイミングとか教えてくれたらウレシス
0855nobodyさん2011/11/24(木) 12:01:37.50ID:???
ネット経由などチェックコストの高い場面では使っている
あと気が向いたら0で割るなぼけ!といわれる場面の一時しのぎにw
0856nobodyさん2011/11/24(木) 12:07:59.73ID:???
よくわからずfopenに@を付けてます
ローカルのファイルでファイルがない場合は新規作成するモードならいらないすか
0857nobodyさん2011/11/24(木) 12:15:23.16ID:???
PHP4の環境で・・・  やめたい。
0858nobodyさん2011/11/24(木) 12:33:45.25ID:???
loadHTML
0859nobodyさん2011/11/24(木) 13:31:39.15ID:???
> 基本的にissetとかでUndefinedの判断とも入れてるから

不思議な日本語を読むときに @ を入れてるかな…
0860nobodyさん2011/11/24(木) 14:57:50.20ID:oV1VI/p5
今JAVAのソースのPHPへの変換作業を行っています。

final int yOffset = -1942;
final int mOffset = 65;

Date date = new Date(System.currentTimeMillis());
Calendar cal = Calendar.getInstance();
cal.setTime(date);
int y = cal.get(Calendar.YEAR);
int m = cal.get(Calendar.MONTH);
char yc = (char)(y + yOffset);
char mc = (char)(m + mOffset);

以上JAVAのソースです。
これをPHPで同じことをしたいのですが最後の二行のキャストでの
数字→アルファベットへの文字変換をどうしたらよいのかわかりません。
よろしくお答え願います(T_T)
0861nobodyさん2011/11/24(木) 15:07:43.50ID:???
型無しのPHPにそんなのを期待されても・・・
0862nobodyさん2011/11/24(木) 15:46:54.67ID:???
chrだな
アルファベットじゃねーけど。
08638602011/11/24(木) 16:00:19.02ID:oV1VI/p5
PHPだと同じことはできないんでしょうか?
すみません初心者なもので何ができないかの判断もつけがたいです
08648602011/11/24(木) 16:11:49.75ID:oV1VI/p5
chrを使ってみろということですね。
ありがとうございます。試してみます
0865nobodyさん2011/11/24(木) 16:14:27.92ID:???
たとえば2000年なら58になるから文字は :
Calendar.MONTHは 0-11だから65足した文字コードなんで
AからL
08668602011/11/24(木) 16:41:25.32ID:oV1VI/p5
できました!ありがとうございました。
08678602011/11/24(木) 16:57:51.46ID:oV1VI/p5
すみません。もう一個質問お願いします

またJAVA→PHPの変換作業なんですが、
getBytes("Shift-jis")というのをPHPでどうやったら表せますか?
0868nobodyさん2011/11/24(木) 16:59:32.38ID:???
さてはマニュアルを読む気ないな!
0869nobodyさん2011/11/24(木) 17:01:48.81ID:???
お前ら俺の質問にも答えろよ
わからないんだったらちゃんとわかりませんって額に地面こすりつけて謝れ
0870nobodyさん2011/11/24(木) 17:13:33.03ID:???
お前の質問どこだよw
0871nobodyさん2011/11/24(木) 17:27:29.89ID:???
http://my.chiebukuro.yahoo.co.jp/my/drdamaga
一部で有名な最近暴れているPHP教えて君&お礼や返信なしで質問連続立て&逆ギレ。
確認できているだけでもPHPPro,OKWave,Yahoo知恵袋の大手で暴れている。
0872nobodyさん2011/11/24(木) 17:34:25.15ID:???
unpack("C*",$str);だな。
文字コードは必要ならshift-jisに変換後な
08738602011/11/24(木) 17:56:52.94ID:oV1VI/p5
お返事ありがとうございます。
mb_convert_encodingでエンコードしてから
unpack("C*",$str);でいけました!
助かりました(^o^)
0874nobodyさん2011/11/24(木) 22:00:13.17ID:SvbOG3Rx
配列中に存在する値を出現回数によってソートするにはどのようにすればいいのでしょうか?
sort()関数だけでは、あいうえお順になるだけで、その他の関数で上記のようなものを見つけられませんでした
0875nobodyさん2011/11/24(木) 22:13:38.12ID:???
array_count_valuesとかで
0876nobodyさん2011/11/24(木) 22:14:35.70ID:???
そんな都合のいい関数はないので自分で作るしか無い
計算量はかなり膨れると思う
0877nobodyさん2011/11/24(木) 22:49:20.59ID:SvbOG3Rx
そうですか・・・
>>875さんの教えてくれた関数も駆使して自分で作らないといけないようですね
以前JavaScriptでにたようなのがあったような気がするのですが・・・
作り方をど忘れしてしまいました

今ざっと考えてみたのですが難しいですね
ちっとも作り方のアイデアが浮かんで来ません
array_count_values()を使うと出現回数は求められるようですが、
それを単純にsort()すると数字だけのソートになりますし
0878nobodyさん2011/11/24(木) 22:57:50.34ID:???
>>877
その為の関数が array_multisort()
http://php.net/manual/ja/function.array-multisort.php#example-4383

<?php
$list = array('1unko', '2chinko', '3manko', '2chinko', '3manko', '2chinko');
$weights = array_count_values($list);
$sort_keys = array_map(function ($v) use ($weights) { return $weights[$v]; }, $list);
array_multisort($sort_keys, SORT_DESC, SORT_NUMERIC, $list);
var_dump($list);
0879nobodyさん2011/11/24(木) 23:04:35.59ID:Ed0cMJSk
$str = 'あいうえおかきくけこさしすせそ';
「お」と「か」の間に'<br>'を挿入したいのですがどうしたらいいですか?
0880nobodyさん2011/11/24(木) 23:06:00.39ID:SvbOG3Rx
>>878
おぉぉぉ!
ありがとうございます
今、array_count_values() -> arsort() のような事を試していました
listの値はともかくとして(笑)、教えていただき本当にありがとうございました

0881nobodyさん2011/11/24(木) 23:15:33.12ID:???
>>879
置き換えれば
08828802011/11/24(木) 23:21:57.84ID:SvbOG3Rx
テストとして英数字でやっていたので上手くいったのですが、
日本語のようなマルチバイトでは上手くいきませんでした

振り出しに戻った感じがします(苦笑)
マルチバイト、難しい・・・
0883nobodyさん2011/11/25(金) 00:17:52.06ID:???
うまくいかない?
0884nobodyさん2011/11/25(金) 11:07:07.03ID:Vtscy08p
変数$wwwに値を代入するなら$www=12;というるのは知ってますが、
$www .="";
$www .=12;
などのように.を付ける代入は何を表してるのですか?
0885nobodyさん2011/11/25(金) 11:10:58.30ID:???
$www .= "";  は  $www = $www . "";
0886nobodyさん2011/11/25(金) 12:22:00.00ID:Vtscy08p
>>885
ありがとうございます。
www=www+1;というC言語等でよくある意味なんですね。
08878822011/11/25(金) 14:03:13.02ID:???
>>883
うまくいきます?
自分の配列は全部日本語が格納されておりまして、それをarray_multisort() やarray_count_values()のようなものを使ってみたのですが、上手くいきませんでした
確か日本語をどんどんarray_push()で格納していった配列だった気がするのですが

自分、PHP5.3.8です
0888nobodyさん2011/11/25(金) 14:38:35.77ID:???
駄目なソース貼るとか、どうなるとかないと分かりません。
すくなくとも上の例でウチでは動く
0889nobodyさん2011/11/25(金) 14:54:15.77ID:WdRVkcPU
【OS名】CentOS
【PHPのバージョン】5.1.6
【連携ソフトウェア】特になし
【質問内容】
functionについて質問です。

function sample($post, $get)

としたときに$testや$getが空だと当たり前ですがエラーが出ます。
$postや$getは既存のシステムのもので、空の場合や値が入っている場合があり一定していません。
function の引数定義時にissetでも使えればいいんですが、そういったことは出来ませんでした。
この時に$postや$getが空の場合でもエラーにしない方法はありますか?
0890nobodyさん2011/11/25(金) 14:58:07.25ID:???
あります。
>空だと当たり前ですがエラーが出ます
そんなことはありません。
0891nobodyさん2011/11/25(金) 15:01:11.28ID:???
>>889
なんか勘違いしていると思うわ
function sample($post = null, $get = null)
こんな感じの事がやりたいのかな?


08928892011/11/25(金) 15:08:41.55ID:WdRVkcPU
>>891
回答ありがとうございます。
ちょっと原理はまだ理解できておりませんが、やりたかったことが>>891で出来ました。
$postにnullが入るので中身が無くなる?ようにも見えるのですが、nullの場合は扱いが異なるのでしょうか。

とは言えこれで目的の事ができました。
ありがとうございます。
0893nobodyさん2011/11/25(金) 15:11:44.87ID:???
>>887
> 確か日本語をどんどんarray_push()で格納していった配列だった気がする
そこ調べてみたらどうかな(苦笑)
もしくは同じ環境でちゃんとテストしてみたら
0894nobodyさん2011/11/25(金) 15:24:08.85ID:???
>>892
そんな発言をしているようだと求めている結果にはならないはず。
ソースを開示するかマニュアルを一通り読んだ方がいいぞ。
0895nobodyさん2011/11/25(金) 15:26:22.75ID:???
>>892
function chinko ($manko = null ){
return $manko;
}
//kapikapiが返る
$status = chinko('kapikapi')
// nullが返る
$status = chinko()

要するにデフォルト値ってイメージでいいと思うよ。
0896nobodyさん2011/11/25(金) 15:32:51.64ID:???
空の場合や値が入っている場合がありっていうのに、それで解決したというのが
俺にはさっぱりわかんねーや。
0897nobodyさん2011/11/25(金) 15:40:40.24ID:???
たぶん、functionの呼び出し方を理解していないだけだと思うんだ。

function func_name($a,$b){}

本来ならfunc_name($g_a,$g_b)で呼び出す所をfunction()だけで呼び出そうと
してエラーが出ているのだろう。だから$a=nullとするとエラーがでなくなる。
呼び出しが()だからグローバル$g_aがfunctionの$aに入らずにおかしい!
と感じているのだろうw
0898nobodyさん2011/11/25(金) 16:10:38.30ID:???
funcを呼び出す時点のスコープで$post $getがあったりなかったりする。
それがなかったとき
func($post, $get)とすると、undefinedであるというNoticeが出力される
かといって
func( , ) とするとエラーが出る
という状態だったのかな
08996842011/11/26(土) 14:30:34.63ID:???
おそろしあ
0900nobodyさん2011/11/26(土) 14:31:06.18ID:???
誤爆orz
0901nobodyさん2011/11/26(土) 16:28:05.43ID:???
orz誤爆
0902nobodyさん2011/11/26(土) 16:34:20.38ID:???
>>900
どのスレと間違えたのかkwsk
0903nobodyさん2011/11/26(土) 20:09:33.52ID:mMk8E5Ms
ここにいる PHPERさんは、
結構数学とか、得意なクチですか?

微分積分とかフツーに理解してる人ですか?
0904nobodyさん2011/11/26(土) 20:14:26.83ID:???
>>903
微積理解してなかったり、中学生もいるし、文系の人も多いです
学業関係なく慣れです
0905nobodyさん2011/11/26(土) 20:21:00.62ID:???
微分積分理解しないと高校卒業できなくないか?
0906nobodyさん2011/11/26(土) 20:22:58.44ID:???
高校卒業くらいならいらないんじゃね?遠い昔でわすれた
0907nobodyさん2011/11/26(土) 20:29:18.45ID:???
高校レベルで理解まで到達しないやろ
単に微積の答えの導き方覚える程度だろ
0908nobodyさん2011/11/26(土) 20:40:23.97ID:???
習わないこともあるよ
0909nobodyさん2011/11/26(土) 20:55:52.34ID:mMk8E5Ms
こんなん↓
http://www.geisya.or.jp/~mwm48961/kou2/joken_p.html
とか、さっぱりわからんけど理解してたら
絶対プログラミングに役立ちそうなんですが・・・

0910nobodyさん2011/11/26(土) 20:58:38.47ID:???
アルゴリズムの話をしたいのかな
0911nobodyさん2011/11/26(土) 21:11:15.83ID:???
>>909
スレ違いながら
役立つのではなく必要になることがある。
分からなければ出来ないことがあるということです。
0912nobodyさん2011/11/26(土) 22:32:17.05ID:???
>>907
理解ってどのレベルのことを言ってるの?
0913nobodyさん2011/11/26(土) 23:05:01.72ID:???
その議論ってPHPに関係あるの?
0914nobodyさん2011/11/26(土) 23:20:20.41ID:???
もうそろそろスレ終わるし、やりたいならやるのもいんじゃね?
0915nobodyさん2011/11/27(日) 00:05:26.55ID:???
高校数学はなんとなく理解できるだろ?
0916nobodyさん2011/11/27(日) 00:39:55.55ID:???
サーバサイドWebプログラムに数学は必要ないし
少なくともこのスレではできてもできなくてもどうでもいい

JavaScriptでゲーム作るとかなら関係あるけどね
0917nobodyさん2011/11/27(日) 00:58:58.36ID:ooaVNxa6
最悪の成績で高校行けなかった俺に高校数学を理解しろと?
0918nobodyさん2011/11/27(日) 01:05:17.35ID:???
それでもPHPは理解できるんだなw
0919nobodyさん2011/11/27(日) 01:12:49.83ID:???
Webプログラム全般、数学はいらんとおもうが
仕組み覚えるって話だから、工作に近いんじゃない?
0920nobodyさん2011/11/27(日) 01:25:20.94ID:???
数学知識が必要なアプリを作ってないだけの話だろ
微分積分を解くアプリを作るなら微分積分の知識は必要になる
そこまで行かなくても、例えば2進数の計算を知ってたらビット演算子で楽に表記できる場合があるとか
0921nobodyさん2011/11/27(日) 01:30:40.13ID:???
逆にWebProgで必要な数学の知識ってなんだろな
2進数とかは数学しらなくても、プログラム勉強したら自然と知識として入るだろうし
高校数学レベルの数学知識が必要なWebProgがおもいつかん
0922nobodyさん2011/11/27(日) 01:36:00.87ID:???
必須なのは四則演算くらいじゃね?

Cでポインタを扱ってた頃は常に番地計算を行いながら
プログラミングしてたものだが、その頃に比べるとはるかに楽になった
誰でもプログラミングに参入できるわけだ
0923nobodyさん2011/11/27(日) 01:36:13.03ID:???
経理とか統計とか普通にサーバーサイドで数学使うよ。三角関数とかも使わなくはない
0924nobodyさん2011/11/27(日) 01:41:03.59ID:???
>>923
あれ?三角関数とかって中学じゃなかった?
0925nobodyさん2011/11/27(日) 01:51:56.02ID:???
サーバサイドなんてDBに格納して取り出すのがメインだしな
0926nobodyさん2011/11/27(日) 01:56:23.71ID:???
微積ってサーバーサイドでつかったことないや
アナライズするときも、そんな小難しいのを作った記憶ないな
数字の四則演算くらいか
0927nobodyさん2011/11/27(日) 04:31:13.17ID:cim/zCBY
アップロードした静止画のurlをhttp〜/upload/001.jpgとしたとき
http〜/upload/001.jpgにアクセスしたときパソワードを入力しない
とアクセスできなくすることはphpで可能ですか?
0928nobodyさん2011/11/27(日) 04:35:10.37ID:???
はい可能です
0929nobodyさん2011/11/27(日) 06:50:15.25ID:???
フレームワークの混交とか普通なんでしょうか?

python の turbogear と django を混ぜて使うとか
聞いたことあまりないです…

たくさん覚えないと駄目ですか?
ふれいむわーくは幾つくらい併用していますか?
わからないことだらけです><;
0930nobodyさん2011/11/27(日) 07:02:25.44ID:???
スレチ
0931929追記2011/11/27(日) 07:11:24.87ID:???
フレームワークの間で命名規約が異なってると
require_once 'Zend/Loader/Autoloader.php';

とかやっても普通に呼び出せないような
気がするのですが…うむむ…
0932nobodyさん2011/11/27(日) 07:23:34.79ID:???
http://stackoverflow.com/questions/39364/failed-to-load-zend-loader-php-trying-to-work-out-why

require_once '../../library/Zend/Loader/AutoLoader.php';
して

public function setUp() {
Zend_Loader_Autoloader::getInstance();
}

とセットアップするみたいなかんじでやれば
ライブラリみたいなかんじでそこだけ利用できるようになるとか…

って各フレームワークのことはそのフレームワークのスレで
質問した方がいいですよね…お騒がせして申し訳ありませんでしたton
0933nobodyさん2011/11/27(日) 07:47:38.28ID:???
Webprogに必要な数学
というスレがあってもいいかもしれん
0934nobodyさん2011/11/27(日) 08:12:31.57ID:???
限定する意味なんてないからこっちでやれ
http://hibari.2ch.net/test/read.cgi/tech/1197063023/
0935nobodyさん2011/11/27(日) 18:59:26.16ID:???
( ´・ω・) ( `・ω・´) ( ´・ω・` ) (・ω・` )
0936nobodyさん2011/11/27(日) 20:17:40.78ID:pnNAW0Jm
phpでインクルードする時、
include_once("/hoge.php");
だと、Dreamweaver上のプレビュー画面で確認できるんですが
include_once(dirname(__FILE__)."/hoge.php");
だとDreamweaverで表示されません。
プレビューでも表示できる何かうまい手はないでしょうか
0937nobodyさん2011/11/27(日) 21:22:14.18ID:cim/zCBY
phpはformで日本語や記号を送信するときに
urlエンコードしてるときにブラウザでurlエンコードして
php側でurlデコードしてるのですか?
レス数が900を超えています。1000を超えると表示できなくなるよ。