//処理
~ 省略 ~
$result = sqlite_query($sql,$db_res);
$info = sqlite_fetch_■■■■($result,SQLITE_ASSOC);
$page_num = $info['page_num'];
//以下、チェック文
//チェック(1)
echo var_dump($info);
echo "<br>";
//チェック(2)
echo var_dump($page_num);
echo "<br>";
//チェック(3)
print_r($info);
echo "<br>";
//チェック(4)
echo $page_num."<br>";
//---------------------------------
// ブラウザに表示される内容↓
//---------------------------------
//---------------------------------
<■■■■が、singleの場合>
string(3) "200"
string(1) "2"
200
2
//---------------------------------
<■■■■が、arrayの場合>
array(1) { ["page_num"]=> string(3) "200" }
string(3) "200"
Array ( [page_num] => 200 )
200
//---------------------------------
私は、singleを使って、
echo $page_num; によって、「200」を
得たかったのですが、「2」が出てきてしまい、
困ってしまいました。
これは、なぜなんでしょう?
singleの仕組みがよく分かりません。
※arrayを使えば、結果的には問題は解決するのですが、
singleの、この謎を解きたいがために、質問しました。
よろしくお願い致します。
(質問とは関係ありませんが、このサイト、現在かなり重くないでしょうか?)
No.1ベストアンサー
- 回答日時:
「結果セットの最初のカラムを文字列として取得する」
となっておりますとおり、取得された一番最初に入っているフィールドの文字列を出力します。
で、なぜ、「2」が出力されたのか、に関しましては、下記のサンプルを見てください。
<?php
$string = 'abcdefghijklmnopqrstu';
echo $string[1];
?>
文字列を配列として出力しますと、1バイトずつ表示されます。
上の例ですと、配列の2番目なので、「b」が出力されます。
今回、$info['page_num']とされておりますが、この場合は、'page_num'が0と解釈されるようで、1番目の文字である「2」が出力されております。
早速の回答、どうもありがとうございます。
サンプルの例のような仕組みで、文字列の一部が出力されていたんですね。
おかげさまで、スッキリ解決しました。
$info = sqlite_fetch_■■■■($result,SQLITE_ASSOC);
$page_num = $info['page_num'];
これは、■■■■がarrayの時に私がよく使う流れですが、
singleの時には適当でないことがよく分かりました。
こんなに早く解決するとは思っていなかったので、嬉しいです。
ありがとうございました!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Dosブロンプトでtabを出力したい
-
バッチファイルでpingの結果を...
-
syntax error, unexpected 'ech...
-
php mysql SELECT文でテーブル...
-
バッチファイルで、全てのウィ...
-
phpでcookieがうまく保存されない
-
shシェルスクリプト 空白行の...
-
switch()文で値の大小比較
-
php・10回目ごとに○○
-
オブジェクトの中身の判定(PHP)
-
php csvデータを読み書き後...
-
txtを読み込んでtableに入れる方法
-
phpの代入
-
PHPのエンコードは特殊?
-
$_SERVER["REQUEST_METHOD"]に...
-
PHP 正規表現 数字又は数字以...
-
秒数の計算
-
参照渡しした変数名を取得する方法
-
PHP4.4.2→5.2.8 表示されません
-
findstrのerrorlevel
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Dosブロンプトでtabを出力したい
-
バッチファイルでpingの結果を...
-
shシェルスクリプト 空白行の...
-
phpでcookieがうまく保存されない
-
switch()文で値の大小比較
-
findstrのerrorlevel
-
syntax error, unexpected 'ech...
-
バッチファイルで、全てのウィ...
-
小数点以下0の非表示
-
ゼロとNULLを区別して number_f...
-
オブジェクトの中身の判定(PHP)
-
Windowsのsetコマンドでの小数...
-
XMLのタグの有無をPHPで判定し...
-
PHP一覧表示した項目にリンクを...
-
batファイルでPC名称の変更
-
フォームから送った半角カナの...
-
DBのハッシュ化したパスワード...
-
pdftkを使った処理をバッチファ...
-
WindowsのイベントログをExcel...
-
php mysql SELECT文でテーブル...
おすすめ情報