phpで "."を文字列を結合していくと何故か1024バイトに制限されてしまいます。
1024バイト以上の文字列を使用するには何か設定が必要ですか?
コード
$hoge = "hoge"; $hoge .= "hogehoge"; $hoge .= "hogehogehoge"; : (1024バイトを超えても接続代入はできる。)
試したこと
$hoge = str_repeat("a",1300); (1300バイトの文字を$hogeに代入しても1024バイトになる)
環境
Windows10 Apache 2.4.29 php 7.1.12RC1 (+xdebug) VSCode
「1300バイトの文字を$hogeに代入しても1024バイトになる」というのは、どのような方法で確認しましたか?
メモリですかねぇ。
そんな正確には出せないと思いますが・・
確認の方法が間違っています。
VSCodeでPHPDebugの拡張機能を使っているので、代入のところでブレイクさせて、変数の値を見ました。SQL文を組み立てているのですが、最初は拡張機能の制限かもと思ってそのまま実行させてみたらSQL実行でシンタックスエラーになりました。(ちなみにデータベースはMySQL。PDOを使用してます)
「確認の方法が間違っている」という前提で、やったことを見直しましょう。
確実な確認の方法の1つは、var_dump(strlen(変数名)); です。
var_dump(strlen(変数名));もやりました。
そのうえで質問させてもらってます。
回答3件
あなたの回答
tips
プレビュー