为什么我的数组中的逗号读作字符串?

zec*_*ude 1 php arrays string

这就是我想要做的:

1 - 我有一个带字符串的数组.

$photographer_array = "'Alberto Korda', 'Annie Leibowitz', 'Ansel Adams'";
Run Code Online (Sandbox Code Playgroud)

2 - 我试图用该字符串填充数组.

array($photographer_array);
Run Code Online (Sandbox Code Playgroud)

它正在做的是创建一个包含所有逗号的单个条目的数组.为什么它将逗号作为字符串读取?无论如何我可以让它不是作为字符串读取逗号而是使用它们来分隔数组中的值?

Fra*_*anz 6

很抱歉这样说,但是你不能以这种方式填充数组,因为字符串通常不会被解析和执行.你所能做的就是:

$photographer_array = array('Alberto Korda', 'Annie Leibowitz', 'Ansel Adams');
Run Code Online (Sandbox Code Playgroud)

或者这个(编辑:将其改编为您的查询代码):

$photographer_array = array();

while ($photographer_row = $result->fetch_assoc()) {
    $photographer_array[] = $photographer_row['photographer_name'];
}
Run Code Online (Sandbox Code Playgroud)

PS:你只是喜欢长变量名,不是吗?;)