私的良スレ書庫
不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitterでログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。
元スレくだすれPHP(超初心者用)3
php スレッド一覧へ / php とは? / 携帯版 / dat(gz)で取得 / トップメニューみんなの評価 : ☆
レスフィルター : (試験中)
ttp → http になって喜ぶのはいいけど
http → hhttp
ftp → hftp
news → 略
これが「やりたい事」なのか冷静に考えてみよう。
http → hhttp
ftp → hftp
news → 略
これが「やりたい事」なのか冷静に考えてみよう。
(h?ttps?|ftp|news)→(h?ttps?|)
もしかしてこれでおけでしょうか?
他のリンクをしないとすると。
もしかしてこれでおけでしょうか?
他のリンクをしないとすると。
ftp も news も gopher も archie もリンクなしでよければ
(h?ttps?|ftp|news) → h?(ttps?) // h? をカッコから出す
にすればいいと思うよ。
PHP や正規表現と無関係な話になるけど、ttp でアドレスを貼った人は
勝手に http で貼ったのと同じ結果に書き換えられたらどう思うんだろうね。
(h?ttps?|ftp|news) → h?(ttps?) // h? をカッコから出す
にすればいいと思うよ。
PHP や正規表現と無関係な話になるけど、ttp でアドレスを貼った人は
勝手に http で貼ったのと同じ結果に書き換えられたらどう思うんだろうね。
h1文字をつけるケースは1通りなんだから、
URLとして有効だったらあとは ttp:// だけで直接比較すればいいだろう
URLとして有効だったらあとは ttp:// だけで直接比較すればいいだろう
正規表現で折り畳むのと、ベタで(http|https|ttp|ftp|news)
と並べるのとどっちがいいんだろ。
と並べるのとどっちがいいんだろ。
|で並べる時点で正規表現じゃないかと・・・
ベタというならswitch($var) case 'http':とか。
ベタというならswitch($var) case 'http':とか。
<a href=http://<? $ip=gethostbynamel("google.com"); print_r($ip); ?>><? $ip=gethostbynamel("google.com"); print_r($ip); ?></a>
これをforeeachにするにはどうすればいいんでしょうか。。。
これをforeeachにするにはどうすればいいんでしょうか。。。
こういうことか?
$array_address=(
'google.com',
'yahoo.com'
);
foreach($array_address as $address){
$ip=gethostbynamel($address);
echo "<a href=http://{$ip}>{$ip}</a>";
}
$array_address=(
'google.com',
'yahoo.com'
);
foreach($array_address as $address){
$ip=gethostbynamel($address);
echo "<a href=http://{$ip}>{$ip}</a>";
}
>>711
こういうことじゃね?
$ip = gethostbynamel($address);
$string = '<a href="http://'. $ip .'">'. $ip .'</a>';
$chars = preg_split('//', $string, -1, PREG_SPLIT_NO_EMPTY);
foreach($chars as $char) {
$result[] = $char;
}
echo implode('', $result);
こういうことじゃね?
$ip = gethostbynamel($address);
$string = '<a href="http://'. $ip .'">'. $ip .'</a>';
$chars = preg_split('//', $string, -1, PREG_SPLIT_NO_EMPTY);
foreach($chars as $char) {
$result[] = $char;
}
echo implode('', $result);
>>715-716
ありがとうございます!
ありがとうございます!
質問です
$time=10:00;
この$timeを午前か午後か(am,pm)判別する関数はありますでしょうか?
$time=10:00;
この$timeを午前か午後か(am,pm)判別する関数はありますでしょうか?
>>718
<?php
$time = '10:00';
echo ampm($time);
function ampm($ntime){
if($ntime >= '12:00'){
return 'PM';
}else{
return 'AM';
}
}
?>
<?php
$time = '10:00';
echo ampm($time);
function ampm($ntime){
if($ntime >= '12:00'){
return 'PM';
}else{
return 'AM';
}
}
?>
>>722
'12:00'とコロンが含まれている時点で、整数ではありえないよね。
'12:00'とコロンが含まれている時点で、整数ではありえないよね。
自作関数なしなら
echo date('A', strtotime('10:00'));
echo date('A', strtotime('10:00'));
警告、エラー表示レベルを上げる方法はないでしょうか。
defineしていない定数が使われた場合、
配列の値が入っていないインデックスを参照した場合に、
教えてくれるようにしたいです。
ググってerror_reportingはE_ALLのみにしたんですが、
それではダメでした。
defineしていない定数が使われた場合、
配列の値が入っていないインデックスを参照した場合に、
教えてくれるようにしたいです。
ググってerror_reportingはE_ALLのみにしたんですが、
それではダメでした。
>>712
http://search.net-newbie.com/php/function.gethostbynamel.html
>array gethostbynamel ( string hostname )
>hostnameで指定したインターネットホストを 検索して得られた IP アドレスのリストを返します。 もし hostname が解決できなかった場合は FALSE を返します。
このl(ist)ってのは配列ではないんですかね。。
>>710
>>1
自分でもよくわからないんです^^;
>>711
ありがとうございます!
なるほどforeachはこう使うんですね!
>>713
ありがとうございます!
preg
implode
がわからないので調べてきます!
http://search.net-newbie.com/php/function.gethostbynamel.html
>array gethostbynamel ( string hostname )
>hostnameで指定したインターネットホストを 検索して得られた IP アドレスのリストを返します。 もし hostname が解決できなかった場合は FALSE を返します。
このl(ist)ってのは配列ではないんですかね。。
>>710
>>1
自分でもよくわからないんです^^;
>>711
ありがとうございます!
なるほどforeachはこう使うんですね!
>>713
ありがとうございます!
preg
implode
がわからないので調べてきます!
l(ist)って何だよ(list)すらねーよボケ
ここは質問スレだが分からないことを開き直る勘違い野郎ならお断りだ。
ここは質問スレだが分からないことを開き直る勘違い野郎ならお断りだ。
>>726
できました。ありがとうございます。
できました。ありがとうございます。
>>727
> string gethostbyname ( string hostname )
> array gethostbynamel ( string hostname )
関数名の l は list の略だから戻ってくるのは配列っすよね、じゃなくて
array (または FALSE) を返しますよと書かれてるから、戻り値が配列。
こんな感じにしたいのかな。
<?php
$hosts = array('yahoo.com', 'google.com', 'example.com');
echo "<dl>\n";
foreach ($hosts as $host) {
$ip_list = gethostbynamel($host);
echo "<dt>$host</dt>\n";
if ($ip_list) {
foreach ($ip_list as $ip) {
echo "<dd><a href=\"http://$ip/\">$ip</a></dd>\n";
}
} else {
echo "<dd>unresolved.</dd>\n";
}
}
echo "</dl>\n";
?>
> string gethostbyname ( string hostname )
> array gethostbynamel ( string hostname )
関数名の l は list の略だから戻ってくるのは配列っすよね、じゃなくて
array (または FALSE) を返しますよと書かれてるから、戻り値が配列。
こんな感じにしたいのかな。
<?php
$hosts = array('yahoo.com', 'google.com', 'example.com');
echo "<dl>\n";
foreach ($hosts as $host) {
$ip_list = gethostbynamel($host);
echo "<dt>$host</dt>\n";
if ($ip_list) {
foreach ($ip_list as $ip) {
echo "<dd><a href=\"http://$ip/\">$ip</a></dd>\n";
}
} else {
echo "<dd>unresolved.</dd>\n";
}
}
echo "</dl>\n";
?>
>>731
純粋な質問なんだが,マニュアルのforeachのページ見ないのは何故だったの?存在しらなかった?難しくて理解できなかった?
純粋な質問なんだが,マニュアルのforeachのページ見ないのは何故だったの?存在しらなかった?難しくて理解できなかった?
カウンタで質問なのですが
http://loglog.jp/~php/tt/tt4.php
のサイトに書かれている
>次に書き込むのですが、fgetsで読み込んだ時にポインタが動いてファイルの最後に行っているので、ポインタを先頭に引き戻してから、書き込みます。
>ポインタを戻すのはfseek() 書き込みはfputs()です。追記:rewind($fp)の方がいいかも...
>
>fseek($fp, 0);
>fputs($fp, $count);
のポインタを先頭に戻すという意味がわかりません。
ためしに削ってみると、カウンターが凄い勢いで増えていくので重要な機能なのは分かるのですが・・・
http://loglog.jp/~php/tt/tt4.php
のサイトに書かれている
>次に書き込むのですが、fgetsで読み込んだ時にポインタが動いてファイルの最後に行っているので、ポインタを先頭に引き戻してから、書き込みます。
>ポインタを戻すのはfseek() 書き込みはfputs()です。追記:rewind($fp)の方がいいかも...
>
>fseek($fp, 0);
>fputs($fp, $count);
のポインタを先頭に戻すという意味がわかりません。
ためしに削ってみると、カウンターが凄い勢いで増えていくので重要な機能なのは分かるのですが・・・
開いたファイルからデータを操作するポイントのこと。
レコードの針とかCDの走査点みたいのを想像すればいい。
凄い勢いで増えていくってのは、1→12→123→1234みたいな感じ?カオスだなw
レコードの針とかCDの走査点みたいのを想像すればいい。
凄い勢いで増えていくってのは、1→12→123→1234みたいな感じ?カオスだなw
1→12→1213→12131214→....だぜきっと
増え方見てりゃなんとなく分かりそうなもんだけどな
増え方見てりゃなんとなく分かりそうなもんだけどな
>>742
致命的ではないが好ましくはない
致命的ではないが好ましくはない
そうなんですか。
「ID、値段」の並んだデータファイルから
$ar[$id] = $price;
でどんどん取り込んでいって、
if ($ar[$data] == "") {
echo "$dataは存在しません。\n";
どうのこうの
}
って常用してる…
「ID、値段」の並んだデータファイルから
$ar[$id] = $price;
でどんどん取り込んでいって、
if ($ar[$data] == "") {
echo "$dataは存在しません。\n";
どうのこうの
}
って常用してる…
質問です。
csvファイルの5行目から20行目までを取得するにはどうすればよいのでしょうか?
$test = fopen("hoge.csv","r");
for($i=5;$i<20;$i++){
$row = $test[$i];
}
この方法ではうまくいかないです・・・
csvファイルの5行目から20行目までを取得するにはどうすればよいのでしょうか?
$test = fopen("hoge.csv","r");
for($i=5;$i<20;$i++){
$row = $test[$i];
}
この方法ではうまくいかないです・・・
たとえファイルハンドルが配列として扱えるとしても、それでは最終行しか
残らないのでは?
残らないのでは?
>>745
こっち使うとか。
http://www.php.net/manual/ja/function.file.php
fopen() は例で言えば $test とファイルを結びつけて、これから読み書きしたり
ファイルポインタを進めたり戻したりする操作を可能にする「準備」の担当さん。
こっち使うとか。
http://www.php.net/manual/ja/function.file.php
fopen() は例で言えば $test とファイルを結びつけて、これから読み書きしたり
ファイルポインタを進めたり戻したりする操作を可能にする「準備」の担当さん。
>>746-747
ご返答ありがとうございます
$test = file("hoge.csv");
for($i=5;$i<20;$i++){
$row = $test[$i];
}
これではうまく行きませんでした
for文で行数を指定するやり方は間違っているのでしょうか?
ご返答ありがとうございます
$test = file("hoge.csv");
for($i=5;$i<20;$i++){
$row = $test[$i];
}
これではうまく行きませんでした
for文で行数を指定するやり方は間違っているのでしょうか?
CSVファイルを更新しようとしてます。
フォームから入力された月が一致するものを"可能"から"予約済み"に
上書きするスクリプトです。
$file = fopen("test.csv","r");
$file_bak = fopen("test.csv","w");
while ($data = fgetcsv($file,1024,",")) {
if($data[0]==$mon){
$data[1]="予約済み";
$rowc = implode(",", $data);
fputs ($file_bak, $rowc . "\n");
}
}
fclose($file_bak);
fclose($file);
フォームから入力するとデータがまっさら(0バイト)になってしまいます。
フォームから入力された月が一致するものを"可能"から"予約済み"に
上書きするスクリプトです。
$file = fopen("test.csv","r");
$file_bak = fopen("test.csv","w");
while ($data = fgetcsv($file,1024,",")) {
if($data[0]==$mon){
$data[1]="予約済み";
$rowc = implode(",", $data);
fputs ($file_bak, $rowc . "\n");
}
}
fclose($file_bak);
fclose($file);
フォームから入力するとデータがまっさら(0バイト)になってしまいます。
前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / php スレッド一覧へ
みんなの評価 : ☆類似してるかもしれないスレッド
- くだすれPHP(超初心者用)4 (1001) - [97%] - 2008/11/21 17:19 ○
- くだすれPHP(超初心者用)6 (958) - [97%] - 2009/8/19 4:11 ○
- くだすれPHP(超初心者用)5 (1001) - [97%] - 2009/3/9 16:02 ○
- さっさとPHP5.0.6出せよ糞Zend (80) - [31%] - 2019/5/9 7:45
トップメニューへ / →のくす牧場書庫について