PHPも文字列が占有しているメモリを直接書き換えることなんてできないだろ?
だから
str = 'hoge'
str[0] = 'm'
でエラーになるpythonと同じじゃね?
エラーになる=Cっぽいんじゃなくて
エラーにならないのはCだけと言うべきでは?