Prueba si esto te funciona,
Código:
<script>
function HazArrayM_txt()
{
var l;
datosM = []; // Vaciamos el array
<?php
if (file_exists('XX/Prueba.txt'))
{
$fp = fopen('XX/Prueba.txt', 'r');
echo "datosM = [";
while (!feof($fp))
{
$linea = fgets($fp);
$l = strlen($linea);
if ($l > 17) {
$linea = substr($linea, 0, 16);
echo "$linea ,";
}
}
fclose($fp);
}// if
echo "]";
?>
}; // fin HazArrayM
</script>
Básicamente es tu función pero en ves de intentar escribir en la memoria del cliente trato de crear el arreglo literal como en el ejemplo que te puse antes.
saludos