mkdir schreibt kyrillische Zeichen

querytail

Erfahrenes Mitglied
Hallo,

ich lese mit folgendem einen Text aus (nur die erste Zeile):

PHP:
$lfile = fopen($File, "r");
$row1 = removeBOM(utf8_decode(fgets($lfile,1024)));
fclose($lfile);

Das funktioniert hervorragend, d.h. mit print wird die Zeile fehlerfrei dargestellt.

Will ich aber nun die
PHP:
mkdir ($row1, 0777);
nutzen, wird der Ordner zwar geschrieben, aber ich kann ihn nicht öffnen, umbenennen etc.

Im Shell kann man kyrillische Zeichen sehen, die im FTP nicht sichtbar sind.

Wie kann ich das verhindern?

Dankeschön

querytail
 
Damit nehme ich die ersten 3 Zeichen weg, was mich allerdings nicht wirklich weiterbringt.

PHP:
function removeBOM($str="")
	{
			if(substr($str,0,3) == pack("CCC",0xef,0xbb,0xbf))
			{
					$str=substr($str,3);
			}
	
			return $str;
	}

Es muss doch möglich sein, den Ordnernamen aus einem Text zu generieren, ohne dass diese Zeichen da mit drin sind.
 
Dann sind wohl in der Datei UTF8-Zeichen enthalten, die im ISO-Code nicht vorkommen und somit nicht konvertiert werden können. Steht auch in den Kommentaren zur Funktion utf8_decode() .
 
Zurück