アプリ版:「スタンプのみでお礼する」機能のリリースについて

変数格納する際、クォーテーション「あり」「なし」の違いはあるのでしょうか?

■質問背景
・配列作成する際、クォーテーション「なし」でできたのに、取り出す際はクォーテーション付与しないとうまくいかなかった
・具体的には、"id" => '1', と変更したらうまくいった
array(
  0 => array
    (
      "id" => 1,
      "city" => "tokyo"
    ),

■質問
・下記の違いは何でしょうか?
・文字列として格納するか数値として格納するかの違い?
$hoge = 1;
$hoge = '1';
$hoge = "1";

・クォーテーションなしで変数に格納出来るのは数値だけ?
$hoge = 文字列;

A 回答 (2件)

>・下記の違いは何でしょうか?


>・文字列として格納するか数値として格納するかの違い?

そうです。

>・クォーテーションなしで変数に格納出来るのは数値だけ?
>$hoge = 文字列;

文字列というのは、クォーテーションで囲まれた物のことを指します(もしくはヒアドキュメント、nowdoc)。
クォーテーションで囲まれていないものは文字列とは呼びません。

>・配列作成する際、クォーテーション「なし」でできたのに、取り出す際はクォーテーション付与しないとうまくいかなかった

ここの部分が説明不足のため、意味不明になってしまっています。
    • good
    • 0
この回答へのお礼

回答ありがとうございましたー

お礼日時:2013/04/01 10:00

クォートの挙動を理解するためのコード2つ。



内部的な扱いの違い。
<?php
$hoge = 1;
var_dump($hoge);
$hoge = '1';
var_dump($hoge);
$hoge = "1";
var_dump($hoge);
?>

・シングルクォートとダブルクォートの違い。
<?php
$a = "abc";

$hoge = '$a';
print $hoge . "<br>";

$hoge = "$a";
print $hoge . "<br>";
?>
    • good
    • 0
この回答へのお礼

回答ありがとうございましたー

お礼日時:2013/04/01 09:59

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!