私的良スレ書庫
不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitterでログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。
元スレ【PHP】下らねぇ質問はID出さずに書き込みやがれ 1
php スレッド一覧へ / php とは? / 携帯版 / dat(gz)で取得 / トップメニューみんなの評価 :
レスフィルター : (試験中)
INTの値だったかなんだったか忘れたが・・・
まぁここらの話はスレチすぎると思うw
まぁここらの話はスレチすぎると思うw
>>526=532=537=538さんいつもレスありがとうございます。
少しググってみると.khp.kwdファイルを使ってもいける?みたいですね。
これも便利そうなので自分できなかったりしたらサクラエディタのスレでまた聞いてみます。
少しググってみると.khp.kwdファイルを使ってもいける?みたいですね。
これも便利そうなので自分できなかったりしたらサクラエディタのスレでまた聞いてみます。
### 011_counter.php ###
<?php
$fp=fopen("012_count.txt","r+");// 読み書きモードでオープン
$n=fgets($fp); // 文字列の読み取り
$n++; // カウントアップ
echo $n,"人目"; // 表示
rewind($fp); // 読み書き位置を先頭に戻す
fputs($fp,$n); // 書き込み
fclose($fp); // ファイルを閉じる
?>
### 012_count.txt ###
0
…これでhttp://localhost/php/011_counter.phpにアクセスすると
0 人目
が表示されます。
ただ、F5を押しても、他のサイトを見てまたアクセスしても加算されません。
012_count.txtの内容を3にすると、3 人目になりますが加算はされません。
テキストには「0の後に改行を入れると加算されない」とあるので、特に注意して改行を入れないようにしています。
どこがおかしいのでしょうか?
上のを普通に実行させるとどうなりますか?
<?php
$fp=fopen("012_count.txt","r+");// 読み書きモードでオープン
$n=fgets($fp); // 文字列の読み取り
$n++; // カウントアップ
echo $n,"人目"; // 表示
rewind($fp); // 読み書き位置を先頭に戻す
fputs($fp,$n); // 書き込み
fclose($fp); // ファイルを閉じる
?>
### 012_count.txt ###
0
…これでhttp://localhost/php/011_counter.phpにアクセスすると
0 人目
が表示されます。
ただ、F5を押しても、他のサイトを見てまたアクセスしても加算されません。
012_count.txtの内容を3にすると、3 人目になりますが加算はされません。
テキストには「0の後に改行を入れると加算されない」とあるので、特に注意して改行を入れないようにしています。
どこがおかしいのでしょうか?
上のを普通に実行させるとどうなりますか?
> PHP は、算術演算子で文字変数を扱った場合に C ではなく Perl の慣習に 従います。例えば、perl では 'Z'+1 は 'AA' を返しますが
> C では 'Z'+1 は '[' ( ord('Z') == 90, ord('[') == 91 ) を返します。
> 文字変数はインクリメントされることは可能ですがデクリメントは不可能であるということ、
> またプレーンな ASCII 文字 (a-z および A-Z) のみがサポートされるということに注意しましょう。
多分で申し訳ないんだけど、改行が含まれる文字列の場合、数値以外のものが含まれているため、
数値としてインクリメントは不可、また、文字列としてのインクリメントに関しては、[a-zA-Z0-9]以外の
文字が含まれているため不可、ということなんじゃないかなと。
> またプレーンな ASCII 文字 (a-z および A-Z) のみ
こう書いてるけど、Perlと同様、a-z および A-Z および 0-9 と思う。
> C では 'Z'+1 は '[' ( ord('Z') == 90, ord('[') == 91 ) を返します。
> 文字変数はインクリメントされることは可能ですがデクリメントは不可能であるということ、
> またプレーンな ASCII 文字 (a-z および A-Z) のみがサポートされるということに注意しましょう。
多分で申し訳ないんだけど、改行が含まれる文字列の場合、数値以外のものが含まれているため、
数値としてインクリメントは不可、また、文字列としてのインクリメントに関しては、[a-zA-Z0-9]以外の
文字が含まれているため不可、ということなんじゃないかなと。
> またプレーンな ASCII 文字 (a-z および A-Z) のみ
こう書いてるけど、Perlと同様、a-z および A-Z および 0-9 と思う。
続いてですが、同じ本がまたやってくれました。
連想配列の宣言が必要そうなんですが、どこにどう入れていいのか思い付きません。文章を引用します:
連想配列を利用して、ファイル056_word.txtの単語の頻度を配列に取得する例を示します。
strtokは文字列をトークンに分ける関数です。Windowsファイルの改行は\n\rなので、
\rも区切りに含めないと\rが単語として配列にカウントされてしまいます。
### 055_hash3.php ###
<pre>
<?php
$word=file_get_contents("056_word.txt");
$tok=strtok($word,".\n\r ");
while ($tok!=false){
$tokcount[$tok]++;
$tok=strtok(".\n\r ");
}
print_r($tokcount);
?>
</pre>
実行結果
Array
(
[This] => 1
[is] => 2
[a] => 2
[pen] => 1
[That] => 1
[book] => 1
)
続きます。↓
連想配列の宣言が必要そうなんですが、どこにどう入れていいのか思い付きません。文章を引用します:
連想配列を利用して、ファイル056_word.txtの単語の頻度を配列に取得する例を示します。
strtokは文字列をトークンに分ける関数です。Windowsファイルの改行は\n\rなので、
\rも区切りに含めないと\rが単語として配列にカウントされてしまいます。
### 055_hash3.php ###
<pre>
<?php
$word=file_get_contents("056_word.txt");
$tok=strtok($word,".\n\r ");
while ($tok!=false){
$tokcount[$tok]++;
$tok=strtok(".\n\r ");
}
print_r($tokcount);
?>
</pre>
実行結果
Array
(
[This] => 1
[is] => 2
[a] => 2
[pen] => 1
[That] => 1
[book] => 1
)
続きます。↓
056_word.txtの内容は本には載っていないのですが、改行区切りと実行結果を考慮しますと、
### 056_word.txt ###
This
is
a
pen
That
is
a
book
…なのでしょう。それをそのまま実行すると、以下のメッセージと共に予想された実行結果が出ます:
Notice: Undefined index: This in /UNIONFS/opt/lampp/htdocs/php/055_hash3.php on line 7
Notice: Undefined index: is in /UNIONFS/opt/lampp/htdocs/php/055_hash3.php on line 7
Notice: Undefined index: a in /UNIONFS/opt/lampp/htdocs/php/055_hash3.php on line 7
Notice: Undefined index: pen in /UNIONFS/opt/lampp/htdocs/php/055_hash3.php on line 7
Notice: Undefined index: That in /UNIONFS/opt/lampp/htdocs/php/055_hash3.php on line 7
Notice: Undefined index: book in /UNIONFS/opt/lampp/htdocs/php/055_hash3.php on line 7
Array
(
[This] => 1
[is] => 2
[a] => 2
[pen] => 1
[That] => 1
[book] => 1
)
…上のメッセージが出ないようにするにはどうすればよいのでしょうか?
あっ!今、気付いたんですが、インデックスが未定義と言っているんですね…。
そりゃ、今ファイルから切り取ってきたばかりの単語たちですから、定義されてたら逆におかしいですよね…?
しかも検索したら出てきました、エラーレベルを落とせばいいんですね。お騒がせしました。(^^ゞ
### 056_word.txt ###
This
is
a
pen
That
is
a
book
…なのでしょう。それをそのまま実行すると、以下のメッセージと共に予想された実行結果が出ます:
Notice: Undefined index: This in /UNIONFS/opt/lampp/htdocs/php/055_hash3.php on line 7
Notice: Undefined index: is in /UNIONFS/opt/lampp/htdocs/php/055_hash3.php on line 7
Notice: Undefined index: a in /UNIONFS/opt/lampp/htdocs/php/055_hash3.php on line 7
Notice: Undefined index: pen in /UNIONFS/opt/lampp/htdocs/php/055_hash3.php on line 7
Notice: Undefined index: That in /UNIONFS/opt/lampp/htdocs/php/055_hash3.php on line 7
Notice: Undefined index: book in /UNIONFS/opt/lampp/htdocs/php/055_hash3.php on line 7
Array
(
[This] => 1
[is] => 2
[a] => 2
[pen] => 1
[That] => 1
[book] => 1
)
…上のメッセージが出ないようにするにはどうすればよいのでしょうか?
あっ!今、気付いたんですが、インデックスが未定義と言っているんですね…。
そりゃ、今ファイルから切り取ってきたばかりの単語たちですから、定義されてたら逆におかしいですよね…?
しかも検索したら出てきました、エラーレベルを落とせばいいんですね。お騒がせしました。(^^ゞ
1行1単語である必要はないよ。トークン区切り文字列に半角空白入ってるでしょ。
それに、>>568のような気持ちがあるなら警告レベルを落とすなんて雑なことをせず、
コードを直すほうがいい。
それはそれとして、問題がいくつかあるので指摘。
・Windowsの改行コードはCRLF(\r\n)
・どこかに0という単語が含まれてるとそこで終わる
・古いPHPだともっといろんなところで終わる
これらの問題は while ($tok !== false) とすれば解決するけれど、
なぜそうなるのかはマニュアルでも見て。
てか、その本ダメだと思うなら捨てちゃえばいいと思うよ。
著者サイトで正誤表が公開されてないかの確認はしてる?
# 昔は出版社に誤植の指摘すると図書券くれたりしたもんだけど今はないのかな。
それに、>>568のような気持ちがあるなら警告レベルを落とすなんて雑なことをせず、
コードを直すほうがいい。
それはそれとして、問題がいくつかあるので指摘。
・Windowsの改行コードはCRLF(\r\n)
・どこかに0という単語が含まれてるとそこで終わる
・古いPHPだともっといろんなところで終わる
これらの問題は while ($tok !== false) とすれば解決するけれど、
なぜそうなるのかはマニュアルでも見て。
てか、その本ダメだと思うなら捨てちゃえばいいと思うよ。
著者サイトで正誤表が公開されてないかの確認はしてる?
# 昔は出版社に誤植の指摘すると図書券くれたりしたもんだけど今はないのかな。
>>572
ありがとうございます。
直せるんですか?
直せるなら直したいです。
今、正誤表あるのか調べてみましたけど、無いみたいですね。
でも、サンプルがダウンロードできました!
055_hash3.php、仰るとおり while ($tok !== false) に訂正されてましたよ。w
056_word.txtも二行で書かれてました。
!=と!==の違いはこの本で説明されてました。
でも、実行するとやっぱり同じメッセージが。
どうやってこれを直すのですか?
ありがとうございます。
直せるんですか?
直せるなら直したいです。
今、正誤表あるのか調べてみましたけど、無いみたいですね。
でも、サンプルがダウンロードできました!
055_hash3.php、仰るとおり while ($tok !== false) に訂正されてましたよ。w
056_word.txtも二行で書かれてました。
!=と!==の違いはこの本で説明されてました。
でも、実行するとやっぱり同じメッセージが。
どうやってこれを直すのですか?
別に待ってないけど、、、死ぬほど忙しいってすごいね。
そんなに忙しくなったことないのは幸せなことだなぁ
そんなに忙しくなったことないのは幸せなことだなぁ
>>573
http://gihyo.jp/book/2009/978-4-7741-3800-8/support
酷すぎて修正するだけ時間の無駄というか、別の本で勉強し直したら?
少なくとも仕事のために覚えたい人は読んじゃいけないコードばかり
http://gihyo.jp/book/2009/978-4-7741-3800-8/support
酷すぎて修正するだけ時間の無駄というか、別の本で勉強し直したら?
少なくとも仕事のために覚えたい人は読んじゃいけないコードばかり
超ヘボ質問なんですけど
if文の条件式に「もし改行があれば」ってどういう風に書けばいいでしょうか
今やりたいことは
あるテキスト(A.txt)を一行ずつ取得して
空行ならcontinue;みたいなことができれば最高です。
【ソース】
$text = fopen("C:/A.txt","r");
$i = 0;
while(($line = fgets($text))){
//もし改行のみならば飛ばして次の行に進むみたいなの作りたいけどwhile進まんお……^ω^;
if($line == \n){ //←これが不正
continue;
}else{
$i++;
file_put_contents("C:/".$i.".txt",$line);
}
}
if文の条件式に「もし改行があれば」ってどういう風に書けばいいでしょうか
今やりたいことは
あるテキスト(A.txt)を一行ずつ取得して
空行ならcontinue;みたいなことができれば最高です。
【ソース】
$text = fopen("C:/A.txt","r");
$i = 0;
while(($line = fgets($text))){
//もし改行のみならば飛ばして次の行に進むみたいなの作りたいけどwhile進まんお……^ω^;
if($line == \n){ //←これが不正
continue;
}else{
$i++;
file_put_contents("C:/".$i.".txt",$line);
}
}
改行を消したいなら全文の中から連続する改行コードを1つの改行コードに置換すればいいんだよ
>>580
$line = array_merge(array_filter(file("C:/A.txt"), 'strlen'));
for ($i=0; $i<count($line); $i++) file_put_contents("C:/".$i.".txt",$line);
$line = array_merge(array_filter(file("C:/A.txt"), 'strlen'));
for ($i=0; $i<count($line); $i++) file_put_contents("C:/".$i.".txt",$line);
スレ違いだったら、すみません。
以下程度の事ができるプログラマーなんだけど、どれくらいのレベルと判断できるだろうか?
プログラムー歴:約3年
使用可能言語
HTML,php,JavaScript
CSS.ActionScript(仕事では使えないレベル)
サーバ構築
CentOS+yumならだいたいできる。
ソースからあれこれインストールは経験少ない。
DB:MySQL PostgreSQL
【開発実績?】
WordpressやEC-CUBEのカスタマイズ
独自パッケージのCMS開発
(EC-CUBEのパクりみたいなの)
大雑把でいいので、初級、中級、上級のどれだろう?
以下程度の事ができるプログラマーなんだけど、どれくらいのレベルと判断できるだろうか?
プログラムー歴:約3年
使用可能言語
HTML,php,JavaScript
CSS.ActionScript(仕事では使えないレベル)
サーバ構築
CentOS+yumならだいたいできる。
ソースからあれこれインストールは経験少ない。
DB:MySQL PostgreSQL
【開発実績?】
WordpressやEC-CUBEのカスタマイズ
独自パッケージのCMS開発
(EC-CUBEのパクりみたいなの)
大雑把でいいので、初級、中級、上級のどれだろう?
>>586
転職をしようと思ってそれを面接で言ったとしても特にメリットにならない感じ。
とはいっても、自分はこれができますってアピールは難しいように思う。
ので、結局実力は使ってみないとわからないってことになるんじゃないだろうか
転職をしようと思ってそれを面接で言ったとしても特にメリットにならない感じ。
とはいっても、自分はこれができますってアピールは難しいように思う。
ので、結局実力は使ってみないとわからないってことになるんじゃないだろうか
>>586
いまどき、JavaScriptができる、というだけだと何もできないようなもんじゃないかねぇ?
なんらかのライブラリ名やらフレームワーク名が出ると面接の時にも会話になると思うよ。
名前出してもきょとんとしてる面接官もいる、というか多い気もするが・・・
まぁ、面接官の試験とかもないんだししょうがないか。
あぁ、JavaScript以外でもフレームワークの話ができるといいかもな
あと、今の時期にCentOSとか言ってるのはちょっとぼけてる。ニュース探しておいたほうがいいぞ。
yumできるのはあたりまえ。自作パッケージできて一人前なんじゃないかな?
初級というのはちょっときびしいかもしれない気もするが、初級、という判定をしておく。
IT関係のサイトに目を通す癖をつけて、アンテナを高くしておくといいぞ。
いまどき、JavaScriptができる、というだけだと何もできないようなもんじゃないかねぇ?
なんらかのライブラリ名やらフレームワーク名が出ると面接の時にも会話になると思うよ。
名前出してもきょとんとしてる面接官もいる、というか多い気もするが・・・
まぁ、面接官の試験とかもないんだししょうがないか。
あぁ、JavaScript以外でもフレームワークの話ができるといいかもな
あと、今の時期にCentOSとか言ってるのはちょっとぼけてる。ニュース探しておいたほうがいいぞ。
yumできるのはあたりまえ。自作パッケージできて一人前なんじゃないかな?
初級というのはちょっときびしいかもしれない気もするが、初級、という判定をしておく。
IT関係のサイトに目を通す癖をつけて、アンテナを高くしておくといいぞ。
今の時期にCentOSがぼけてるってのはどういうことだろう。
RHEL6がでたこととは関係ないだろうし、CentOSがとがめられるような出来事でもあったの?
yum使えて当たり前なのは同意するが、自作パッケージ作るなら俺リポジトリを作るのも必須じゃないだろうか。
といいつつ、システム管理の話だし、プログラマの技量には大して影響がないと思う。
RHEL6がでたこととは関係ないだろうし、CentOSがとがめられるような出来事でもあったの?
yum使えて当たり前なのは同意するが、自作パッケージ作るなら俺リポジトリを作るのも必須じゃないだろうか。
といいつつ、システム管理の話だし、プログラマの技量には大して影響がないと思う。
>>590
良い悪いの定義がわからないけど、公式のリファレンスを頼らないプログラマはいないと思うよ
良い悪いの定義がわからないけど、公式のリファレンスを頼らないプログラマはいないと思うよ
>>593
コードに抜けってたとえば?
コードに抜けってたとえば?
>>591
ちょっとニュースでやってたからってそれを間に受けてる素人さんですか
ちょっとニュースでやってたからってそれを間に受けてる素人さんですか
>>595
何のニュース?
何のニュース?
http://slashdot.jp/linux/11/05/18/0240227.shtml
この話のことをいっているなら、CentOSを使わない理由にはならないし、何が言いたいのかさっぱりわからん。
この話のことをいっているなら、CentOSを使わない理由にはならないし、何が言いたいのかさっぱりわからん。
前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / php スレッド一覧へ
みんなの評価 : 類似してるかもしれないスレッド
- 【PHP】下らねぇ質問はID出して書き込みやがれ 91 (1001) - [90%] - 2010/1/9 4:06 ○
- 【PHP】下らねぇ質問はID出して書き込みやがれ 81 (1001) - [90%] - 2009/3/7 14:17 ○
- 【PHP】下らねぇ質問はID出して書き込みやがれ 130 (1001) - [89%] - 2013/11/11 2:45
- 【PHP】下らねぇ質問はID出して書き込みやがれ 116 (1001) - [89%] - 2012/3/21 18:01
- 【PHP】下らねぇ質問はID出して書き込みやがれ 136 (936) - [89%] - 2014/9/18 12:45
- 【PHP】下らねぇ質問はID出して書き込みやがれ 135 (984) - [89%] - 2014/8/7 1:00
- 【PHP】下らねぇ質問はID出して書き込みやがれ 134 (1002) - [89%] - 2014/7/29 4:15
- 【PHP】下らねぇ質問はID出して書き込みやがれ 133 (1001) - [89%] - 2014/7/8 16:30
- 【PHP】下らねぇ質問はID出して書き込みやがれ 124 (1001) - [89%] - 2013/1/10 6:30
- 【PHP】下らねぇ質問はID出して書き込みやがれ 123 (1001) - [89%] - 2012/11/20 5:30
- 【PHP】下らねぇ質問はID出して書き込みやがれ 132 (1000) - [89%] - 2014/6/18 20:58
- 【PHP】下らねぇ質問はID出して書き込みやがれ 131 (1001) - [89%] - 2014/1/19 21:30
- 【PHP】下らねぇ質問はID出して書き込みやがれ 115 (1001) - [89%] - 2012/2/25 18:31
- 【PHP】下らねぇ質問はID出して書き込みやがれ 138 (991) - [89%] - 2015/1/6 8:00
- 【PHP】下らねぇ質問はID出して書き込みやがれ 129 (1001) - [89%] - 2013/9/18 1:45
トップメニューへ / →のくす牧場書庫について