希伯来字体没有显示

I have an API in which i am showing some videos of english and hebrew. Its all running fine except the title written in Hebrew language is not showing instead of it its returning sign of "??" Any idea ??

Have you encoded your HTML document to accept them?

<meta http-equiv="Content-type" content="text/html;charset=UTF-8" />

<html lang="he">
...
</html> 

If the data is coming from the database, you want to make sure that you're retrieving it with the right encoding. If possible, you should run a SET NAMES query before the query (either SET NAMES 'utf8' or SET NAMES 'hebrew', depending on the collation in the DB).

  1. Make sure you are serving UTF-8 by adding <meta charset="UTF-8" /> in between your head tag.

  2. Make sure the database content is UTF-8. If it's not UTF-8, you'll need to convert the database data from the encoding used in the database to UTF-8 before you push it to the web browsing client like this: $str = mb_convert_encoding($str, "UTF-8", "DATABASE-ENCODING-USED"); More info and examples: http://php.net/manual/en/function.mb-convert-encoding.php

One of both will be the solution to your the problem.

Update

Might be far-fetched, but make sure your browser is able to display a hebrew font type too.

In fact, you don't tell us how you check your database (with a client or via browser) and we don't know how you test the display.

To avoid any "hidden" errors in your debugging efforts, try this code:

<?php
/*
    Make sure the web browser receives a header telling it there's UTF-8 inside.
*/
header('Content-Type: text/html; charset=UTF-8'); 
/*
    Write a title that will display correctly
    if there's no font-related issue in your browser.
*/
echo('<h1>זהו מבחן.</h1>');
/* 
    Now connect to database, 
    and use a simple SELECT to fetch something from the database.

    Replace YOUR-MYSQL-USERNAME, YOUR-MYSQL-PASSWORD and YOUR-MYSQL-DATABASE
    with your individual values...
*/
$dbh = mysql_connect("localhost","YOUR-MYSQL-USERNAME","YOUR-MYSQL-PASSWORD");
if(!$dbh)
{
    exit('Could not connect: ' . mysql_error());
}
$result = mysql_query('SELECT * FROM YOUR-MYSQL-DATABASE LIMIT 1',$dbh);
mysql_close($dbh);
/*
    Now dump it nicely to the screen and exit.
*/
echo('<pre>');
var_dump($result);
echo('</pre>');

exit();
?>

That will help you nailing down the problem.

If it does not show your Hebrew fonts nicely, it's most probably a font-and-browser issue.

In any other case, your database is not UTF-8 and you will need to convert using *mb_convert_encoding* or alike - as I explained above.