Я не получаю подсказки кода для этого кода:
PHPDoc для get_indexes
Я думаю, что все сделано правильно, и NetBeans, кажется, понимает это и правильно показывает подсказки:
/**
* Get Index
*
* @global object $wpdb
* @param String $extension_table_name
* @return \ZRDN\Recipe[]
*/
public static function get_indexes($extension_table_name) {
global $wpdb;
$db_name = $wpdb->prefix . $extension_table_name;
$selectStatement = "SELECT * FROM `{$db_name}`";
$recipe_indexes = $wpdb->get_results($selectStatement);
return $recipe_indexes;
}
Recipe
определяется в том же файле в том же пространстве имен:
class Recipe {
/**
* @var int
*/
public $recipe_id;
/**
* @var int
*/
public $post_id;
...
Есть идеи, в чем может быть проблема?
Если вы знаете, что $recipes
всегда содержит объекты типа Recipe
затем используйте его как тип $recipe
аргумент функции карты:
$post_ids = array_map(function(Recipe $recipe) {
return $recipe->recipe_id;
}, $recipes);
Таким образом PhpStorm (и другие IDE) могут помочь вам с автозаполнением, а также интерпретатор PHP вызывает фатальную ошибку, когда он встречает значение в $recipes
неправильного типа.
Других решений пока нет …