строка вывода var_dump ('**') "массив" - PullRequest
0 голосов
/ 04 марта 2011

Я использую цикл foreach и var_dump, но var_dump из следующего кода выводит что-то странное. Как мне избавиться от предварительно подготовленных sring () и кавычек?

$dir = 'url/dir/dir/';    
$images_array = glob($dir.'*.jpg'); 

$images = array();

foreach ($images_array as $image) {
    $images[] = str_replace($dir, '', $image);   
}


var_dump(implode(',', $images)); 

Выход:

string (51) "image1.jpg, image2.jpg, image3.jpg, image4.jpg"

Ответы [ 3 ]

3 голосов
/ 04 марта 2011

var_dump не выводит ничего «странного». Это то, что он должен делать. Это для отладки, а не для повторения.

Просто echo строка, которую вы хотите:

echo implode(',', $images);
3 голосов
/ 04 марта 2011

var_dump возвращает тип переменной и всю информацию о ней.Если вы используете его с HTML <pre>

echo '<pre>';
var_dump($images);

, он напечатает для вас массив со всеми элементами в новых строках.

Если:

echo '<pre>';
var_dump(implode(',', $images)); 

itвозвращает строкуА также показывает, что это строка.

Если вы просто хотите напечатать значение, используйте echo:

echo implode(',', $images); 
3 голосов
/ 04 марта 2011

Это то, что делает var_dump - печатает тип данных и длину.Если вы хотите вывести только строку, используйте

echo implode(',', $images);
...